Rancher下部署zipkin服务

Rancher下部署zipkin服务

在rancher中新建一个服务部署

image-20210608114930258

  • 指定服务名称为:zipkin

  • 配置Docker镜像为:openzipkin/zipkin:2.21.5

  • 将容器内的9411端口映射到主机的9411端口

  • 配置环境变量

    1、配置ES地址

    ES_HOSTS: http://192.168.1.228:9200

    2、指定存储类型

    STORAGE_TYPE: elasticsearch

    3、配置kafka地址

    KAFKA_BOOTSTRAP_SERVERS: 192.168.1.204:9092,192.168.1.205:9092,192.168.1.206:9092

页面使用

服务启动后默认可以通过9411端口访问zipkin的监控页面

打开http://192.168.1.210:9411/

输入traceId查询链路明细

image-20210608144000017

查询依赖关系发现没有数据

image-20210608144757611

image-20210608144635786

注:zipkin会在es中创建以zipkin开头日期结尾的index,并且默认以天为单位分割。

实现了zipkin数据持久化至elasticsearch,但是无法正常显示dependencies。通过阅读zipkin在github说明,可以看到已经有了解决方案,本章将介绍如何实现并验证。

官网有如下描述:

Zipkin Dependencies collects spans from storage, analyzes links between services, and stores them for later presentation in the web UI (ex. http://localhost:8080/dependency).

This process is implemented as an Apache Spark job. This job parses all traces in the current day in UTC time. This means you should schedule it to run just prior to midnight UTC.

All Zipkin Storage Components are supported, including Cassandra, MySQL and Elasticsearch.

zipkin-dependencies生成依赖链

zipkin-dependencies基于spark job来生成全局的调用链,下载地址:https://github.com/openzipkin/zipkin-dependencies

通过rancher来部署zipkin-dependencies服务

image-20210608145439893启动zipkin-dependencies,我们再来看下依赖图,发现可以正常查询到依赖关系图了。

image-20210608150059093

这里要注意的是程序只会根据当日的zipkin数据实时计算一次依赖关系,并以索引zipkin:dependency-2021-06-08方式存入es中,然后就退出了,因此要做到实时更新依赖的话需要自己想办法实现周期性执行zipkin-dependencies

周期性执行zipkin-dependencies参考这篇博文:

定时计算zipkin-dependencies数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值