SpringCloud链路追踪SkyWalking-第二章-部署搭建及高可用
目录
- 架构
- 下载
- mysql持久化
- 修改配置文件使用mysql持久化
- 修改mysql的连接配置
- 添加mysql驱动
- 重新启动自动建表
- 引入gateway插件
- 常见错误
- 少了mysql驱动
- 启动
- 前端界面
- Skywalking高可用搭建
- 1 .修改 config/application.yml 文件
- 2、配置UI服务webapp.yml文件的listOfServers,写两个地址
- 3、启动服务测试
架构
- skywalking agent和业务系统绑定在一起,负责收集各种监控数据
- skywalking oapservice是负责处理监控数据的,比如接受skywalking agent的监控数据,并存储在数据库中,接受skywalking webapp的前端请求,从数据库查询数据,并返回数据给前端。skywalking oapservice通常以集群的形式存在。
- skywalking webapp,前端界面,用于展示数据
- 用于存储监控数据的数据库,比如mysql,es
下载
-
地址1:https://skywalking.apache.org/downloads/
-
地址2:https://downloads.apache.org/skywalking/
wget https://dlcdn.apache.org/skywalking/9.1.0/apache-skywalking-apm-9.1.0.tar.gz
wget https://dlcdn.apache.org/skywalking/java-agent/8.11.0/apache-skywalking-java-agent-8.11.0.tgz
特别注意:8.8.1之后的版本已经不再自带agent文件夹,需要单独下载apache-skywalking-java-agent-8.11.0.tgz
目录结构
- webapp:UI前端(web监控页面)的jar包和配置文件;
- oap-libs:后台应用的jar包,以及它的依赖jar包,里边有一个server-starter・*.jar就是启动程序;
- config:启动后台应用程序的配置文件,是使用的各种配置
- bin:各种启动脚本,一般使用脚本startup.*来启动web页面和对应的后台应用;
- oapService.*:默认使用的后台程序的启动脚本;(使用的是默认模式启动,还支持其他模式,各模式区别见启动模式)
- oapServicelnit.*:使用init模式启动;在此模式下,OAP服务器启动以执行初始化工作,然后退出
- ServiceNolnit.*:使用noinit模式启动;在此模式下,OAP服务器不进行初始化。
- webappService.*: UI前端的启动脚本;
- startup.:组合脚本,同时启动。叩Service.:、webappService.* 脚本;
- agent:
• skywalking-agent.jar:代理服务 jar 包
• config:代理服务启动时使用的配置文件
• plugins:包含多个插件,代理服务启动时会加载改目录下的所有插件(实际是各种jar包)
• optional-plugins:可选插件,当需要支持某种功能时,比如SpringCloud Gateway,则需要把对应的jar包拷贝到plugins
mysql持久化
默认使用H2数据库存储
在config/application.yml中
修改配置文件使用mysql持久化
修改mysql的连接配置
添加mysql驱动
然后我们需要把mysql-connector-java-8.0.25.jar包复制到oap-libs里面
重新启动自动建表
我们不需要创建表,重新启动skywalking会自动创建表
引入gateway插件
跟踪链路不显示gateway,是因为skywalking默认不支持gateway
需要拷贝agent/optional-plugins目录下的gateway插件到agent/plugins目录,需要注意gateway版本号
常见错误
少了mysql驱动
报错
然后我们需要把mysql-connector-java-8.0.25.jar包复制到oap-libs里面
启动
日志信息存储在logs目录
启动成功后会启动两个服务,一个是skywalking-oap-server,一个是skywalking-web-ui:8868
skywalking-oap-server服务启动会暴露11800和12800两个端口,分别为收集监控数据的端口11800和接受前端请求的端口12800,修改端口可以修改config/application.yml
前端界面
http://192.168.0.44:8080
旧版:
Skywalking高可用搭建
在大多数生产环境中,后端应用需要支持高吞吐量并且支持高可用来保证服务的稳定,所以你始终需要在生产环境进行集群管理。
Skywalking集群是将skywalking oap作为一个服务注册到nacos上,只要skywalking oap服务没有全部宕机,保证有一个skywalking oap在运行,就能进行跟踪。 搭建一个skywalking oap集群需要:
- (1)至少一个Nacos (也可以是nacos集群)
- (2)至少一个ElasticSearch/mysql (也可以是es/msql集群)
- (3)至少2个skywalking oap服务;
- (4)至少1个UI (UI也可以集群多个,用Nginx代理统一入口)
1 .修改 config/application.yml 文件
使用nacos作为注册中心
2、配置UI服务webapp.yml文件的listOfServers,写两个地址
3、启动服务测试
启动Skywalking服务,指定sphngboot应用的jvm参数
-DSW_AGENT_COLLECTOR_BACKENDSERVICES=192.168.3.10:11800,192.168.3.12:11800