Skywalking部署常见问题以及注意事项
Intro
SkyWalking 创建与2015年,提供分布式追踪功能。从5.x开始,项目进化为一个完成功能的Application Performance Management系统。他被用于追踪、监控和诊断分布式系统,特别是使用微服务架构,云原生或容积技术。提供以下主要功能:
分布式追踪和上下文传输
应用、实例、服务性能指标分析
根源分析
应用拓扑分析
应用和服务依赖分析
慢服务检测
性能优化
主要特性
多语言探针或类库
.NET Core
Node.js
Java自动探针,追踪和监控程序时,不需要修改源码。
社区提供的其他多语言探针
多种后端存储: ElasticSearch, H2
支持OpenTracing
Java自动探针支持和OpenTracing API协同工作
轻量级、完善功能的后端聚合和分析
现代化Web UI
日志集成
应用、实例和服务的告警
最近用 Skywalking 的时候遇到一些问题,记录一下,首先部署之前建议看一下官方文档,有一些注意事项是要注意的,不然部署了之后还是没办法正常用。我部署的时候使用的是 Skywalking 5.0.0-GA 版本,6.0 版本可能不一定适用。
部署前注意事项
elasticsearch 配置
elasticsearch 版本的选择,建议5.6,skywalking 暂不支持 6.x 版本的 elasticsearch
elasticsearch 配置 clusterName 以及
network.host
为0.0.0.0
官方文档说明
skywalking 配置
skywalking 的配置文件 application.yml 中的端口号要保证没有被占用,如果有被占用,修改端口号
修改配置文件中的 Elasticsearch 的
clusterName
和clusterNodes
,clusterName
要与上面 elasticsearch 的配置一致,clusterNodes
host修改为能访问的到的host或ip修改系统的时区,和客户端的Agent的时区保持一致
常见问题
启动之后访问 ui portal, 没有修改默认端口号,就应该是 http://localhost:8080, 用户名密码是 admin/admin,如果没有报错则证明部署应该没问题,如果有问题,可以查看skywalking打印的日志,之前部署的时候有遇到报错是因为开始使用了 elasticsearch 的6.x 版本
启动带agent 的客户端,进行一些访问操作,此时 ui 界面里应该会有数据了,如果出现有 service 但是没有 app,如下图所示,就是时区的问题了,需要agent和skywalking时区一致