Zipkin安装与初识

Zipkin

Zipkin安装与初识_第1张图片
Zipkin是一个分布式跟踪系统。它有助于收集用于解决微服务架构中的延迟问题所需的时序数据。它管理数据的收集和查找。Zipkin的设计是基于Google Dapper paper

应用程序被用来向Zipkin报告定时数据。ZIPKIN UI还提供了一个依赖关系图,显示了多少跟踪请求遍历每个应用程序。如果您正在排除延迟问题或错误,可以根据应用程序、跟踪长度、注释或时间戳筛选或排序所有跟踪。一旦选择了一个跟踪,就可以看到每一个跨度所占的总跟踪时间的百分比,这允许您识别问题应用程序。
简单来说,这个框架就是用来在生产环境跟踪问题的,可以直观的看出每个service之间的调用和消耗的时间。

Zipkin安装与初识_第2张图片

如图,在复杂的调用链路中假设存在一条调用链路响应缓慢,如何定位其中延迟高的服务呢?

  • 日志: 通过分析调用链路上的每个服务日志得到结果
  • zipkin:使用zipkin的web UI可以一眼看出延迟高的服务

Zipkin安装与初识_第3张图片

如图所示,各业务系统在彼此调用时,将特定的跟踪消息传递至zipkin,zipkin在收集到跟踪信息后将其聚合处理、存储、展示等,用户可通过web UI方便获得网络延迟、调用链路、系统依赖等等。

组件

zipkin主要涉及四个组件 collector storage search web UI

  • Collector接收各service传输的数据
  • Cassandra作为Storage的一种,也可以是mysql等,默认存储在内存中,配置cassandra可以参考这里
  • Query负责查询Storage中存储的数据,提供简单的JSON API获取数据,主要提供给web UI使用
  • Web 提供简单的web界面

Zipkin的安装

Zipkin的使用比较简单,官网有说明几种方式:
1、容器
Docker Zipkin项目能够建立docker镜像,提供脚本和docker-compose.yml来启动预构建的图像。最快的开始是直接运行最新镜像:

docker run -d -p 9411:9411 openzipkin/zipkin

2、下载jar
如果你有java 8或更高版本,上手最快的方法是把新版本作为一个独立的可执行jar,Zipkin使用springboot来构建的:

curl -sSL https://zipkin.io/quickstart.sh | bash -s
java -jar zipkin.jar

3、下载源代码运行
Zipkin可以从源运行,如果你正在开发新的功能。要实现这一点,需要获取Zipkin的源代码并构建它。

# get the latest source
git clone https://github.com/openzipkin/zipkin
cd zipkin
# Build the server and also make its dependencies
./mvnw -DskipTests --also-make -pl zipkin-server clean install
# Run the server
java -jar ./zipkin-server/target/zipkin-server-*exec.jar

通过以上步骤的任意一一步运行Zipkin之后,游览器 可以打开http://你的ip:9411
如下图所示:
Zipkin安装与初识_第4张图片

参考文章:https://blog.csdn.net/liaokailin/article/details/52077620

你可能感兴趣的:(分布式,运维)