目录
Zipkin 和 Jaeger 是比较受欢迎并且被使用比较多的开源的分布式链路追踪工具,接下来就安装一下 Zipkin 和 Jaeger,以后的链路追踪系列文章也主要以这两个产品来举例。
文章持续更新中,微信搜索【路多辛】阅读更多优质文章
Zipkin 安装方法
使用 Docker 安装 Zipkin 很简单,只需要几步即可完成。
1、从 Docker Hub 拉取 Zipkin 的 Docker 镜像。可以通过运行以下命令来完成:
docker pull openzipkin/zipkin
2、运行 Zipkin 容器,使用以下命令运行 Zipkin 容器。将 Zipkin 的容器端口 9411 映射到宿主机的相同端口,并给容器命名为 zipkin。同时设置了容器重启策略为 always,如果容器意外停止,Docker 会自动重启 Zipkin。
docker run --name zipkin \
-p 9411:9411 \
--restart=always \
-d openzipkin/zipkin
容器启动后,可以在浏览器中通过访问 http://localhost:9411/zipkin 来检查 Zipkin 是否正在运行,可以看到 Zipkin 的用户界面。
3、持久化数据(可选):
如果想让 Zipkin 收集的追踪数据持久化,而不是在容器重启时丢失,可以将 Zipkin 的数据存储映射到宿主机上的一个目录。可以通过在运行容器时添加 -v 参数来实现:
docker run --name zipkin \
-p 9411:9411 \
--restart=always \
-v /path/to/your/data:/data \
-d openzipkin/zipkin
在上面的命令中,/path/to/your/data 是宿主机上的目录路径,/data 是容器内的目录路径。
4、配置存储后端(可选):
Zipkin 支持多种存储后端,包括内存、MySQL、Elasticsearch 等。如果选择使用 MySQL 或其他持久化存储,需要在运行 Zipkin 容器时传递额外的环境变量。例如,对于 MySQL 存储,需要设置以下环境变量:
docker run --name zipkin \
-p 9411:9411 \
--restart=always \
-e STORAGE_TYPE=mysql \
-e MYSQL_DBNAME=zipkin \
-e MYSQL_USER=root \
-e MYSQL_PASS=root \
-d openzipkin/zipkin
5、扩展 Zipkin 配置(可选):
Zipkin 配置可以进一步扩展,例如,可以配置 Zipkin 与 Kafka 或其他消息队列集成,以支持大规模数据摄入。这通常涉及到设置更多的环境变量或使用自定义的 Dockerfile 来构建 Zipkin 容器。Zipkin 运行起来,就可以开始将微服务配置为向 Zipkin 发送追踪数据,以进行详细的监控和分析。
Jaeger 安装方法
1、需要从 Docker Hub 拉取 Jaeger 的 Docker 镜像,可以通过运行以下命令来完成:
docker pull jaegertracing/all-in-one:latest
2、运行 Jaeger 容器,使用以下命令运行 Jaeger 容器:
docker run --rm --name jaeger \
-e COLLECTOR_ZIPKIN_HOST_PORT=:9411 \
-p 6831:6831/udp \
-p 6832:6832/udp \
-p 5778:5778 \
-p 16686:16686 \
-p 4317:4317 \
-p 4318:4318 \
-p 14250:14250 \
-p 14268:14268 \
-p 14269:14269 \
-p 9411:9411 \
jaegertracing/all-in-one:latest
3、Jaeger 容器启动后,可以通过浏览器访问 Jaeger 的用户界面。默认情况下,Jaeger UI 运行在 http://localhost:16686。
文章持续更新中,微信搜索【路多辛】阅读更多优质文章