链路追踪神器zipkin安装详细教程教程

今天分享下zipkin的详细安装教程,具体代码demo可以参考我上篇文章:Spring Cloud Sleuth与Zipkin深度整合指南:微服务链路追踪实战-CSDN博客

一、Zipkin是什么?

Zipkin是由Twitter开源的一款分布式追踪系统(现由OpenZipkin社区维护),用于收集和分析微服务架构中的时序数据。它通过跟踪请求在分布式系统中的流转路径,帮助开发者可视化服务间的调用关系、延迟等关键指标,是诊断复杂系统性能问题的利器。

二、为什么要使用Zipkin?

  1. 故障诊断:快速定位跨服务调用的性能瓶颈
  2. 依赖分析:可视化服务拓扑关系,识别不合理的依赖
  3. 性能优化:精确测量各环节耗时,针对性优化
  4. 分布式上下文:追踪请求完整生命周期(支持OpenTracing标准)
  5. 轻量级:对业务系统侵入性小

三、同类竞品对比

工具 特点 差异点
Jaeger Uber开源,支持多语言 更强大的采样策略和UI分析功能
SkyWalking 国产APM,指标监控更全面 集成Metrics/Logging/Tracing
Pinpoint 无侵入式探针 侧重全链路追踪,资源消耗较大
Sleuth+Prometheus Spring生态组合 更适合纯Spring Cloud体系

四、Zipkin安装

zipkin支持docker和普通机器安装方式

Docker安装

前置要求

  • Docker环境
  • 默认使用内存存储(生产环境建议配MySQL/Elasticsearch)
复制代码
# 快速启动(内存模式)`
docker run -d -p 9411:9411 --name zipkin openzipkin/zipkin

`# 使用MySQL存储`
docker run -d -p 9411:9411 \
  -e STORAGE_TYPE=mysql \
  -e MYSQL_HOST=your_host \
  -e MYSQL_USER=zipkin \
  -e MYSQL_PASS=zipkin \
  openzipkin/zipkin

`# 访问UI`
http://localhost:9411/zipkin/
`

普通方式安装

++1、安装JDK++

zipkin依赖于java命令启动,所以安装前需要先部署jdk环境,这里推荐部署jdk17,具体如何安装可以参考我之前文章:CentOS安装JDK17及多版本管理-CSDN博客

++2、使用以下命令一键安装++

先在根目录创建个zipkin目录,使用以下命令一键下载

复制代码
`curl -sSL https://zipkin.io/quickstart.sh | bash -s
`

命令执行完成后,在当前zipkin目录下会多出这三个文件

++3、启动zipkin++

如果是本地话直接使用java -jar zipkin.jar就可以启动了,不过该启动方式一中断终端连接就会自动停止,我们可以使用以下命令让它一直在后端运行:

复制代码
`nohup java -jar zipkin.jar &
`

如果是生产环境,建议使用supervisord作为守护进程管理工具,确保zipkin在后台稳定运行,执行完成后,查看下端口是否启动

也可以直接通过查看nohup.out日志查看启动情况

++4、打开9411端口防火墙++

zipkin默认端口是9411,如果你服务器该端口被占用了,可以使用以下命令启动使用指定端口

复制代码
`nohup java -jar zipkin.jar --zipkin.port=9412 &
`

进到你的云服务器控制台,打开9411端口,这样就可以页面直接访问了

五、Zipkin使用

客户端需要接入zip,具体如何接入参考我之前文章(Spring Cloud Sleuth与Zipkin深度整合指南:微服务链路追踪实战-CSDN博客

打开服务器ip+端口就可以直接进到控制台了,可以在控制台查看详细的调用链路了

相关推荐
兩尛5 分钟前
Spring面试
java·spring·面试
Java中文社群12 分钟前
服务器被攻击!原因竟然是他?真没想到...
java·后端
Full Stack Developme23 分钟前
java.nio 包详解
java·python·nio
零千叶40 分钟前
【面试】Java JVM 调优面试手册
java·开发语言·jvm
代码充电宝1 小时前
LeetCode 算法题【简单】290. 单词规律
java·算法·leetcode·职场和发展·哈希表
li3714908901 小时前
nginx报400bad request 请求头过大异常处理
java·运维·nginx
摇滚侠1 小时前
Spring Boot 项目, idea 控制台日志设置彩色
java·spring boot·intellij-idea
Aevget2 小时前
「Java EE开发指南」用MyEclipse开发的EJB开发工具(二)
java·ide·java-ee·eclipse·myeclipse
黄昏晓x2 小时前
C++----多态
java·jvm·c++
Brookty2 小时前
【算法】前缀和
java·学习·算法·前缀和·动态规划