nacos配置参照nacos部署
es配置参照ELK部署
服务 | 模式 | IP | 用途 |
---|---|---|---|
skywalking-OAP | 集群 | 3.1.20.23, 3.1.20.24 | 后端 |
skywalking-UI | 单点 | 3.1.20.32 | ui页面 |
kafka | 集群 | 3.1.20.28, 3.1.20.29, 3.1.20.30 | 队列 |
es | 集群 | 3.1.20.25, 3.1.20.26, 3.1.20.27 | 存储 |
Nginx | 单点 | 3.1.20.85 | 做sw-oap 11800端口和12800端口的负载 |
# 创建目录
mkdir -pv /data/docker-compose/skywalking
# 创建docker-compose编排文件
cat > /data/docker-compose/skywalking/docker-compose.yml << EOF
version: "3"
services:
oap:
container_name: sw-oap
image: 3.1.101.57:8005/public/skywalking-oap-server:8.6.0-es7
restart: always
network_mode: host
volumes:
- /etc/localtime:/etc/localtime
- /data/skywalking/data:/root
environment:
## 集群配置-nacos
SW_CLUSTER: nacos
SW_SERVICE_NAME: "SkyWalking_OAP_Cluster"
SW_CLUSTER_NACOS_HOST_PORT: 3.1.20.85:8848
SW_CLUSTER_NACOS_NAMESPACE: "skywalking"
SW_CLUSTER_NACOS_USERNAME: "nacos"
SW_CLUSTER_NACOS_PASSWORD: "Nac0s#123456!"
## 存储配置-es7
SW_STORAGE: elasticsearch7
SW_STORAGE_ES_CLUSTER_NODES: 3.1.20.25:9200,3.1.20.26:9200,3.1.20.27:9200
SW_ES_USER: elastic
SW_ES_PASSWORD: G1T@es2022#ccms
## core配置
SW_CORE_REST_HOST: 3.1.20.23
SW_CORE_REST_PORT: 12800
SW_CORE_GRPC_HOST: 3.1.20.23
SW_CORE_GRPC_PORT: 11800
## 动态配置发布-nacos
SW_CONFIGURATION: nacos
SW_CONFIG_NACOS_SERVER_ADDR: 3.1.20.85
SW_CONFIG_NACOS_SERVER_PORT: 8848
SW_CONFIG_NACOS_SERVER_GROUP: skywalking
SW_CONFIG_NACOS_SERVER_NAMESPACE: skywalking
SW_CONFIG_NACOS_USERNAME: "nacos"
SW_CONFIG_NACOS_PASSWORD: "Nac0s#123456!"
## 使用kafka传输数据
SW_KAFKA_FETCHER: 'default'
SW_KAFKA_FETCHER_SERVERS: '3.1.20.28:9092,3.1.20.29:9092,3.1.20.30:9092'
SW_NAMESPACE: 'topic-dics-long'
SW_KAFKA_FETCHER_PARTITIONS: "3"
SW_KAFKA_FETCHER_PARTITIONS_FACTOR: "2"
SW_KAFKA_FETCHER_ENABLE_METER_SYSTEM: "true"
TZ: Asia/Shanghai
JAVA_OPTS: "-Xms12G -Xmx12G"
deploy:
resources:
limits:
memory: 24G
EOF
所有变量可通过配置文件查询, 容器内配置文件位置: /skywalking/config/application.yml
# 创建目录
mkdir -pv /data/docker-compose/skywalking
# 创建docker-compose编排文件
cat > /data/docker-compose/skywalking/docker-compose.yml << EOF
version: "3"
services:
ui:
container_name: sw-ui
image: 3.1.101.57:8005/public/skywalking-ui:8.6.0
ports:
- 12808:8080
restart: always
volumes:
- /etc/localtime:/etc/localtime
environment:
TZ: Asia/Shanghai
SW_OAP_ADDRESS: 3.1.20.23:12800,3.1.20.24:12800
deploy:
resources:
limits:
memory: 2G
EOF
使用kafka传输数据, 需要启用kafka上报插件
cd skywalking/agent/optional-reporter-plugins;
mv kafka-reporter-plugin-8.6.0.jar ../plugins/
agent.service_name=${SW_AGENT_NAME:credit-gateway}
collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:3.1.20.23:11800,3.1.20.24:11800}
logging.file_name=${SW_LOGGING_FILE_NAME:skywalking-api.log}
logging.level=${SW_LOGGING_LEVEL:INFO}
plugin.mount=${SW_MOUNT_FOLDERS:plugins,activations}
plugin.jdbc.trace_sql_parameters=${SW_JDBC_TRACE_SQL_PARAMETERS:true}
plugin.toolkit.log.grpc.reporter.server_host=${SW_GRPC_LOG_SERVER_HOST:3.1.20.85:11800}
plugin.toolkit.log.grpc.reporter.server_port=${SW_GRPC_LOG_SERVER_PORT:11800}
plugin.toolkit.log.grpc.reporter.max_message_size=${SW_GRPC_LOG_MAX_MESSAGE_SIZE:10485760}
plugin.toolkit.log.grpc.reporter.upstream_timeout=${SW_GRPC_LOG_GRPC_UPSTREAM_TIMEOUT:30}
plugin.kafka.bootstrap_servers=${SW_KAFKA_BOOTSTRAP_SERVERS:3.1.20.28:9092,3.1.20.29:9092,3.1.20.30:9092}
plugin.kafka.namespace=${SW_KAFKA_NAMESPACE:"topic-dics-long"}