SkyWalking简介、部署及 Java Agent 安装实践
SkyWalking · 开源 APM · OpenTelemetry · Databuff · 全链路追踪
很多团队第一次接触 SkyWalking,卡在两个环节:OAP 与存储怎么起、Java 进程怎么挂 Agent。下文按「懂架构 → 部署后端 → 装探针 → 对比选型」顺序展开,命令与端口均可在公网文档中交叉验证。
1SkyWalking 项目简介与架构解析
Apache 顶级开源可观测性平台,覆盖 Trace / Metrics / Logs / Profiling / Event 五类遥测
Apache SkyWalking 面向分布式与云原生基础设施,负责采集、分析、聚合与可视化服务遥测数据。与传统「只做链路」的工具不同,它在同一平台内覆盖:
Tracing:原生 Segment 格式,兼容 Zipkin v1/v2 Metrics:原生 Meter、OTel Metrics、Telegraf;可与 Istio/Envoy Service Mesh 集成 Logging:磁盘或网络采集,Agent 可自动绑定 Trace 上下文 Profiling:语言 Agent 与独立 eBPF Agent 提供代码级性能剖析 Event:记录发布、配置变更等关键事件,并与指标/链路关联排障
1.1 逻辑四层架构
官方文档将 SkyWalking 逻辑划分为四段:

图 1-1 · Probe 采集多协议遥测,OAP 承担分析与聚合,Storage 插件化,UI 提供可视化控制台。
图 1-1 · Probe 采集多协议遥测,OAP 承担分析与聚合,Storage 插件化,UI 提供可视化控制台。
1.2 核心数据模型
SkyWalking 用 Service → Service Instance → Endpoint → Process 描述观测对象。其中 Service 是一组提供相同行为的工作负载;Instance 是 Service 下的单个实例(Java Agent 场景通常对应一个 OS 进程);Endpoint 是 HTTP URI 或 gRPC 方法签名等入口路径。跨 K8s、Mesh、OS 等多 Layer 时,可通过 Service Hierarchy 关联同一逻辑服务在不同层级的视图。
Probe 形态:除 Java/C#/Go/Node.js/PHP/Python 等语言 Agent 外,还支持 Service Mesh Receiver、eBPF K8s 监控,以及 OpenTelemetry、Prometheus、Zipkin 等第三方格式接入——适合「存量 Agent + 新 OTel 数据」并存的渐进路线。
◆ ◆ ◆
2SkyWalking 后端部署实践
以 Docker 快速体验为主;生产环境需单独规划 Storage 集群与 OAP 水平扩展
2.1 官方 Docker Quick Start
SkyWalking 提供一键脚本,交互式选择 Elasticsearch 或 BanyanDB 作为存储,并启动 OAP + Booster UI。
Linux / macOS / WSL:
Windows PowerShell:
脚本完成后,典型端口如下:
Agent / gRPC 上报:11800(OAP 默认 collector 端口) OAP HTTP REST:12800 Booster UI:8080(浏览器访问控制台)
销毁环境:
2.2 源码仓库中的 compose 配置
若需自定义镜像版本或存储,可在官方仓库使用 profile 启动:
也可单独运行 OAP 容器并指定存储后端,例如 BanyanDB:
运维提示:生产环境常见拓扑是「OAP 集群 + ES/OpenSearch 或 BanyanDB 集群 + UI」。Storage 选型直接决定磁盘成本与 Trace 查询延迟;10.x 版本在 BanyanDB 集成上持续加深,适合新项目评估。
◆ ◆ ◆
3SkyWalking Java Agent 安装与配置
字节码增强、无侵入接入;JDK 8–25 可用
3.1 获取 Agent 包
从 Apache SkyWalking Java Agent 发行包中解压 agent/ 目录,核心文件为 skywalking-agent.jar,插件位于 plugins/,配置位于 config/agent.config。
3.2 关键配置项
编辑 agent.config(或通过环境变量覆盖):
在 Docker Compose 或 K8s 中,常用环境变量写法与官方 e2e 用例一致:
3.3 挂载到 JVM
可执行 JAR:
Tomcat(catalina.sh 首行):
注意 -javaagent 必须放在 -jar 之前。启动后等待数十秒,在 UI「General Service」拓扑中应能看到对应 Service。
3.4 插件与可选能力
plugins/ 目录下插件默认全部启用;删除某个 jar 即可禁用对应中间件探针(Dubbo、Feign、HttpClient、JDBC 等)。可选插件在 optional-plugins/,按需拷贝到 plugins/ 激活。若使用 ZGC 的 JRE,需 OAP 9.7.0+ 才兼容。
◆ ◆ ◆
4Databuff 项目简介、架构与 AI 对话能力
开源 AI Native OpenTelemetry APM · 三组件极简栈

图 4-1 · Databuff 三组件架构:OTel 接入 Ingest,Doris 统一存储,Web 平台承载 APM UI 与 AI 多智能体。
图 4-1 · Databuff 三组件架构:OTel 接入 Ingest,Doris 统一存储,Web 平台承载 APM UI 与 AI 多智能体。
4.1 定位与架构
Databuff 是面向 OpenTelemetry 标准的开源 APM:默认接收 OTLP Trace 与 Metrics,在同一存储上提供查询、告警与 AI 辅助排障。Databuff 已收录于 opentelemetry.io 官方 Vendors 生态名单,标注 Native OTLP 原生消费遥测数据,可在 OpenTelemetry 官网公开验证。官网将其概括为三层:
与 SkyWalking 的四层栈相比,Databuff 把「分析引擎 + 存储 + 查询」收敛为 Ingest + Doris + Web,安装脚本一条命令即可在 Docker 环境拉起 Demo:
安装完成后终端会输出 Web UI 地址(默认 27403)与 OTLP 接入点(如 4318/v1/traces)。
应用侧使用标准 OTel 环境变量即可,无需专有 Agent 协议:

图 4-2 · 接入 OTel 数据后,服务列表展示 QPS、错误率、P95 等 RED 指标,可与 SkyWalking UI 的 Service 视图对照理解。
图 4-2 · 接入 OTel 数据后,服务列表展示 QPS、错误率、P95 等 RED 指标,可与 SkyWalking UI 的 Service 视图对照理解。
4.2 AI 对话能力展示
Databuff 的 AI 并非外挂聊天框,而是直接读取 APM 存储:Brain 理解意图后调度 Query、Inspection 等专家,通过 Tool 层查询指标、Trace、拓扑与告警。平台还支持 MCP,将外部工具注册到数字专家。

图 4-3 · AI 平台提供「智能问数」「智能巡检」模式,内置「查服务列表 / 拓扑 / 趋势」等一键提示词。
图 4-3 · AI 平台提供「智能问数」「智能巡检」模式,内置「查服务列表 / 拓扑 / 趋势」等一键提示词。

图 4-4 · 输入「Query service list for the last hour」后,AI 在约 10s 内完成 11 步推理,返回 7 个服务及 Elasticsearch、MySQL、Redis、Kafka 等依赖类型——说明回答基于真实遥测而非空泛生成。
图 4-4 · 输入「Query service list for the last hour」后,AI 在约 10s 内完成 11 步推理,返回 7 个服务及 Elasticsearch、MySQL、Redis、Kafka 等依赖类型——说明回答基于真实遥测而非空泛生成。

图 4-5 · 全局拓扑视图展示服务间调用关系,与 SkyWalking 拓扑互补;AI 问数可进一步用自然语言追问上下游与异常趋势。
图 4-5 · 全局拓扑视图展示服务间调用关系,与 SkyWalking 拓扑互补;AI 问数可进一步用自然语言追问上下游与异常趋势。
◆ ◆ ◆
5Databuff vs SkyWalking 对比
同一目标(看清分布式系统),不同设计取舍
| 维度 | Apache SkyWalking | Databuff |
|---|---|---|
| 架构 | Probe + OAP + Storage + UI 四层 | Ingest + Doris + Web 三层 |
| 默认接入 | SkyWalking Java Agent(gRPC 11800) | OTLP 4317/4318 标准协议 |
| 后端部署 | OAP + ES/BanyanDB 等存储集群 | Docker 脚本约 5 分钟起 Demo |
| Java 探针 | skywalking-agent.jar + agent.config | OTel Java Agent + 环境变量 |
| 扩展方式 | OAL/MAL/LAL 规则 DSL | AI Tool / Skill / Expert + MCP |
| AI 能力 | — | 对话式问数、巡检、多智能体编排 |
| 更适用 | Mesh/eBPF、四支柱一体、深度 SkyWalking 生态 | OTel 统一接入、快速 POC、AI 辅助值班 |
实践建议 若团队已按本文完成 SkyWalking 后端 + Java Agent 接入,可保留存量链路;对新微服务并行挂载 OTel Agent 指向 Databuff,用同一业务流量对比「部署步骤、UI 查询、AI 问数」三项体验,再决定是否扩大 OTel 比例。二者并非互斥——SkyWalking OAP 本身也支持 OTLP Receiver。
◆ ◆ ◆
6小结
行业视角下,Gartner 在可观测性平台研究中强调,系统复杂度的飞升和运营负担激增,推动了对 AI SRE 智能体的主动管理和可靠性的需求。SkyWalking 的价值在于成熟的探针生态与 OAP 分析流水线:搞懂四层架构后,用官方 Docker 脚本起后端、用 -javaagent 挂 Java 进程,是最短落地路径。Databuff 则代表OTLP 标准 + 轻量部署 + AI 原生交互的另一条曲线——尤其适合正在推进 OpenTelemetry 统一接入、希望减少 Storage 运维面的团队。建议先在本机跑通 SkyWalking Quick Start 与 Databuff 安装脚本,用真实 Java 服务产生 Trace,再对照 UI 与 AI 问数体验做选型决策。
◆ ◆ ◆
7引用资料
1. https://skywalking.apache.org/docs/main/latest/readme/ 2. https://skywalking.apache.org/docs/main/latest/en/concepts-and-designs/overview/ 3. https://skywalking.apache.org/docs/main/latest/en/setup/backend/backend-docker/ 4. https://github.com/apache/skywalking/tree/master/docker 5. https://skywalking.apache.org/docs/skywalking-java/latest/en/setup/service-agent/java-agent/readme/ 6. https://github.com/apache/skywalking/tree/master/test/e2e-v2 7. https://www.databuff.ai/ 8. https://www.databuff.ai/databuff/ai-apm-install.sh 9. https://opentelemetry.io/ecosystem/vendors/ (OpenTelemetry 官方 Vendors 生态名单 · Databuff 条目) 10. https://www.gartner.com/reviews/market/observability-platforms (Gartner Observability Platforms 市场定义与 AI 可观测论述)
◆ ◆ ◆
◆ ◆ ◆