Zipkin 与 9411 端口
9411 是 Zipkin 服务端的默认端口,用于接收与展示分布式调用链数据:应用通过 HTTP 或其它方式把链路信息发给它,界面按服务与耗时展示调用关系。链路数据包含服务名、接口路径与调用耗时,等于一张持续更新的系统拓扑图,因此无认证的 9411 暴露出去,泄露的不只是指标而是架构信息。
基本信息
| 服务 | Zipkin 服务端 |
|---|---|
| 端口/协议 | TCP HTTP 9411 |
| 上报方式 | HTTP 接口或消息队列等 |
| 数据内容 | 服务名、接口、耗时与调用关系 |
| 权限要求 | 默认无认证,靠部署侧限制 |
| 安全等级 | 仅内网监控段可达 |
典型使用场景
- 链路分析:定位慢调用出现在哪一段
- 依赖梳理:从调用关系还原系统拓扑
- 故障定位:结合链路确认影响范围
- 容量评估:按接口耗时分布安排优化优先级
- 接入验证:确认应用上报是否成功
上报与查询
上报与查询
curl -s http://localhost:9411/health # 服务健康状态
curl -s 'http://localhost:9411/api/v2/services' | head -c 300 # 已上报的服务列表
sudo ss -lntp | grep 9411 # 确认监听地址
# 加固:限制来源网段,或前置反向代理加认证后再对外开放接口与含义
| 路径 | 内容 | 关注点 |
|---|---|---|
| 健康接口 | 服务状态 | 确认采集端是否正常 |
| 服务清单接口 | 已上报的服务列表 | 暴露系统组件名称 |
| 链路查询接口 | 链路明细 | 包含接口路径与耗时 |
| 可视化界面 | 调用关系视图 | 可查看完整拓扑 |
运维要点
- 采样率按服务重要性分别配置,避免全量采集压垮存储
- 存储保留策略要落地,历史数据无限增长会拖慢查询
- 把上报成功率纳入监控,链路缺失时能区分应用与采集端问题
- 链路数据中的业务参数建议脱敏,减少敏感信息留存
- 对外分享拓扑截图前确认是否包含内部域名与路径
链路数据的采样率决定存储与查询压力:全量采集会迅速增长存储,采样过低又可能漏掉偶发问题,应按业务重要性分别配置。
界面上展示的是系统内部的服务名与接口路径,属于架构信息。公网暴露会同时带来信息泄露与被注入垃圾数据的风险,应限制访问来源。