skywalking--链路监控
有两个版本(主要以es版介绍):
- es版
- 非es版
假如使用es版本,则需要先启动es
agent
这里使用apache提供的jdk8,比我们平常使用的JDK更小 官方文档详见:https://github.com/apache/skywalking/blob/v8.5.0/docs/en/setup/service-agent/java-agent/README.md
Dockerfile
FROM apache/skywalking-java-agent:8.5.0-jdk8
RUN apk add tzdata
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
打包成自定义的镜像
docker build -f Dockerfile -t sky_agent-ui:8.5.0 .
skywalking-ui
Dockerfile
FROM apache/skywalking-ui:8.5.0
RUN apk add tzdata
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
打包成自定义的镜像
docker build -f Dockerfile -t sky-ui:8.5.0 .
skywalking-oap-server
Dockerfile
FROM apache/skywalking-oap-server:8.5.0-es7
RUN apk add tzdata
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
打包成自定义的镜像
docker build -f Dockerfile -t sky-server-es:8.5.0 .
启动
version: '3.5'
networks:
elasticsearch_elastic:
external: true
services:
skywalking-oap:
image: sky-server-es:8.5.0
deploy:
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
ports:
- "11800:11800"
- "12800:12800"
logging:
options:
max-size: "500m"
max-file: "5"
environment:
- TZ=Asia/Shanghai
- SW_STORAGE=elasticsearch7
- SW_STORAGE_ES_CLUSTER_NODES=es01:9200
- SW_ES_USER=elastic
- SW_ES_PASSWORD=zhcfelasticsearch
networks:
- elasticsearch_elastic
skywalking-ui:
image: sky-ui:8.5.0
depends_on:
- skywalking-oap
deploy:
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
ports:
- "8080:8080"
logging:
options:
max-size: "500m"
max-file: "5"
environment:
- TZ=Asia/Shanghai
- SW_OAP_ADDRESS=http://skywalking-oap:12800
networks:
- elasticsearch_elastic
ports:
- "8041:8080"
集成
命令直接集成
下载对应版本
下载的链接 https://archive.apache.org/dist/skywalking
服务器上解压
启动命令
java -javaagent:/opt/skywalking/apache-skywalking-8.5.0/agent/skywalking-agent.jar -Dskywalking.agent.service_name=prcess -Dskywalking.collector.backend_service=127.0.0.1:11800 -jar /opt/process.jar
说明:
- -javaagent 指定agent包位置。这里我将apache-skywalking-apm-8.5.0.tar.gz解压到/opt目录了,因此路径为:/opt/skywalking/apache-skywalking-8.5.0/agent/skywalking-agent.jar
- -Dskywalking.agent.service_name 指定服务名
- -Dskywalking.collector.backend_service 指定skywalking oap地址,由于在本机,地址为:127.0.0.1:11800
- -jar 指定jar包的路径,这里我直接放到/opt/目录了。
docker集成
Dockerfile修改
FROM使用前面自定义的sky_agent-ui:8.5.0
FROM 172.0.0.1:5000/library/sky_agent:8.5.0_jdk8
.....
docker-compose.yml文件修改
增加services.volumes属性,将skywalking/agent的日志文件挂载到主机上
services:
volumes:
- /home/mount/logs/agent/serverName:/skywalking/agent/logs
注意:本文归作者所有,未经作者允许,不得转载