本文部署的 SkyWalking 版本为 8.5.0,集群模式为 Nacos,存储使用 Elasticsearch 7
下载对应版本的源码并解压,如本文对应的为:v8.5.0 for H2/MySQL/TiDB/InfluxDB/ElasticSearch 7
一、部署 OAP Server
1.1. 添加 ConfigMap
1 | apiVersion: v1 |
配置项中为需要配置的环境变量,更多的环境变量配置见:config/application.yml
其中 nacos-headless:8848 为 Nacos 地址,根据需要修改;gRPC 端口为 agent 上传数据端口;rest 端口为 UI 调用端口
1.2. 添加 Deployment
1 | apiVersion: apps/v1 |
1.3. 添加 Service
1 | apiVersion: v1 |
二、部署 UI
2.1. 添加 Deployment
1 | apiVersion: apps/v1 |
更多环境变量配置见:https://hub.docker.com/r/apache/skywalking-ui
2.2. 添加 Service
1 | apiVersion: v1 |
三、程序改造
有两种设置 agent 的方法:
- 将 agent 与程序打包在同一镜像中:实现简单
- 使用 Kubernetes 的 Sidecar:更加灵活
本文使用第一种方法:
- 修改 Dockerfile:
1 | FROM 基础镜像 |
- 部署时需要添加环境变量:
1 | SW_AGENT_NAME: 对应程序的名字 |
更多的环境变量配置见:agent/config/agent.config