SpringCloud - Spring Cloud Alibaba 之 SkyWalking 分布式链路跟踪;SkyWalking集群(十七)
Posted MinggeQingchun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud - Spring Cloud Alibaba 之 SkyWalking 分布式链路跟踪;SkyWalking集群(十七)相关的知识,希望对你有一定的参考价值。
Skywalking集群是将skywalking oap作为一个服务注册到nacos上,只要skywalking oap服务没有全部宕机,保证有一个skywalking oap在运行,就能进行跟踪(SkyWalking搭建集群是非必须的,生产中不搭集群也是可以的,因为这个只是调用链路跟踪,skywalking oap跟踪服务如果宕机了,完全不会影响正常业务)
搭建一个skywalking oap集群需要:
(1)至少一个Nacos(nacos也可集群)
(2)至少一个ElasticSearch(es也可集群)
(3)至少2个skywalking oap服务
(4)至少1个SkyWalking-UI(UI也可以集群多个,用nginx代理统一入口)
搭建SkyWalking oap 集群
1、解压两份apache-skywalking-apm-es7-8.1.0.tar.gz
2、修改 /config/application.yml 文件
(1)配置Nacos
cluster:
selector: $SW_CLUSTER:nacos
# 注意,务必注释掉standalone这一行。默认情况下用的单机模式(standalone),现在要改成集群模式,所以得注释掉。否则Skywalking将无法启动!
# standalone:
nacos:
# Skywalking在Nacos Server的服务名称
serviceName: $SW_SERVICE_NAME:"SkyWalking_OAP_Cluster"
# Nacos Server地址用http://ip:端口的形式
hostPort: $SW_CLUSTER_NACOS_HOST_PORT:localhost:8848
# Nacos的namespace
namespace: 'public'
(2)配置 gRPCHost、gRPCPort、restHost、restPort
gRPCHost、gRPCPort是agent发送数据的地址
restHost、restPort是UI请求的地址
第一台:
core:
default:
restHost: $SW_CORE_REST_HOST:0.0.0.0
restPort: $SW_CORE_REST_PORT:12801
gRPCHost: $SW_CORE_GRPC_HOST:0.0.0.0
gRPCPort: $SW_CORE_GRPC_PORT:11801
第二台:
core:
default:
restHost: $SW_CORE_REST_HOST:0.0.0.0
restPort: $SW_CORE_REST_PORT:12802
gRPCHost: $SW_CORE_GRPC_HOST:0.0.0.0
gRPCPort: $SW_CORE_GRPC_PORT:11802
注:
gRPCHost、gRPCPort是agent发送数据的地址
restHost、restPort是UI请求的地址
(3)配置Elasticsearch相关信息,一般配置clusterNodes即可 (使用elasticsearch7 作为storage)
storage:
selector: $SW_STORAGE:elasticsearch7
storage:
elasticsearch7:
nameSpace: $SW_NAMESPACE:""
clusterNodes: $SW_STORAGE_ES_CLUSTER_NODES:localhost:9200
3、配置ui服务webapp.yml文件的listOfServers
listOfServers: 127.0.0.1:12801,127.0.0.1:12802
4、启动测试
启动一个skywalking-webapp.jar使用脚本webappService.sh
启动两个OAPServerStartUp使用脚本oapService.sh
5、启动应用程序进行测试
(1)如果是jar包启动
修改 agent/config/agent.config
将 collector.backend_service
修改为 127.0.0.1:11801,127.0.0.1:11802
java -javaagent:xxxxx/agent/skywalking-agent.jar
-Dskywalking.agent.service_name=gateway
-Dskywalking.collector.backend_service=192.168.133.128:11801,192.168.133.128:11802
-jar springboot-idea.jar
(2)如果是idea启动应用程序:(注意配置两个连接地址)
SW_AGENT_COLLECTOR_BACKEND_SERVICES=192.168.133.128:11801,192.168.133.128:11802;SW_AGENT_NAME=springboot-idea
以上是关于SpringCloud - Spring Cloud Alibaba 之 SkyWalking 分布式链路跟踪;SkyWalking集群(十七)的主要内容,如果未能解决你的问题,请参考以下文章
Spring Cloud总结29.Zuul的FallBack回退机制
Oauth2.0 整合springCloud的Zuul 解决关键BUG 报错信息:Principal must not be null
Spring Cloud Alibaba - 02 SpringCloud SpringCloud Alibaba SpringBoot的生产版本选择