什么是 SkyWalking:
SkyWalking 是观察性分析平台和应用性能管理系统。
提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案.
下面是 SkyWalking 6.x 的架构图:
说明:SkyWalking 的核心是数据分析和度量结果的存储平台,通过 HTTP 或 gRPC 方式向 SkyWalking Collecter提交分析和度量数据,SkyWalking Collecter 对数据进行分析和聚合,存储到 Elasticsearch、H2、MySQL、TiDB 等其一即可,最后可以通过 SkyWalking UI 的可视化界面对最终的结果进行查看。Skywalking 支持从多个来源和多种格式收集数据:多种语言的 Skywalking Agent 、Zipkin v1/v2 、Istio 勘测、Envoy 度量等数据格式。
整体架构看似模块有点多,但在实际上还是比较清晰的,主要就是通过收集各种格式的数据进行存储,然后展示。所以搭建 Skywalking 服务我们需要关注的是 SkyWalking Collecter、SkyWalking UI 和 存储设备,SkyWalking Collecter、SkyWalking UI 官方下载安装包内已包含,最终我们只需考虑存储设备即可。
环境要求;
主要特性;
- 多种监控手段,语言探针和service mesh;
- 多语言自动探针,Java,.NET Core和Node.JS;
- 轻量高效,不需要大数据;
- 模块化,UI、存储、集群管理多种机制可选;
- 支持告警;
- 优秀的可视化方案;
下载安装Elasticsearch;
下载Elasticsearch安装包;
wget
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.0.tar.gz
tar zxvf elasticsearch-6.6.0.tar.gz
修改config/elasticsearch.yml配置文件;
#
修改
#
如果
cluster.name
不设置为
CollectorDBCluster
,则需要修改
SkyWalking
的配置文件
cluster.name: CollectorDBCluster
network.host: 0.0.0.0
#
增加
thread_pool.bulk.queue_size: 1000
最后启动Elasticsearch!
注: Linux 环境下安装 Elasticsearch 5.x、6.x 问题汇总:https://www.jianshu.com/p/fce1474dc6e7
下载安装SkyWalking;
下载SkyWalking安装包并解压,建议直接下载官方编译好的;
wget
http://mirrors.tuna.tsinghua.edu.cn/apache/incubator/skywalking/6.0.0-GA/apache-skywalking-apm-incubating-6.0.0-GA.tar.gz
tar zxvf apache-skywalking-apm-incubating-6.0.0-GA.tar.gz
修改config/application.yml 的默认数据存储开启是的 h2,这里我们需要修改数据存储为 Elasticsearch(在启动 SkyWalking 之前,确保 Elasticsearch 已启动)
启动SkyWalking;
SkyWalking 的启动包括两部分,一个是 SkyWalking Collector(oapService) ,一个是 SkyWalking UI(webappService);
进入
bin
目录启动:
./startup.sh
如果一切顺利,这时候就可以通过 http://localhost:8080 来查看 SkyWalking UI 了,默认账号/密码:admin/admin;
java程序使用skywalking探针
1.
拷贝
apache-skywalking-apm-incubating
目录下的
agent
目录到应用程序位置,探针包含整个目录,请不要改变目录结构;
2.
java
程序启动时,增加
JVM
启动参数,
-javaagent:/path/to/agent/skywalking-agent.jar
。参数值为
skywalking-agent.jar
的绝对路径;
agent探针配置
agent
探针配置,简单修改下
agent.config
即可
# Backend service addresses.
collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:10.198.1.178:11800,10.198.1.179:11800,10.199.1.123:11800}
skywalking UI界面