Kafka
- 支持的 Kafka 版本:3.x
Kafka 可以用作 collector 和实际存储之间的中间缓冲。Jaeger 可以配置为既充当将追踪数据导出到 Kafka 主题的 collector,又充当从 Kafka 读取数据并将其写入存储后端的 ingester。
flowchart LR A(Application) --> C@{ shape: procs, label: "Jaeger collectors"} C --> K@{ img: "/img/kafka.png", w: 120, h: 60 } K --> I@{ shape: procs, label: "Jaeger ingesters"} I --> S[(Storage)] style C fill:#9AEBFE,color:black style I fill:#9AEBFE,color:black
将数据写入 Kafka 对于构建后处理数据管道特别有用。
flowchart LR A(Application) --> C@{ shape: procs, label: "Jaeger collectors"} C --> K@{ img: "/img/kafka.png", w: 120, h: 60 } K --> I@{ shape: procs, label: "Jaeger ingesters"} I --> S[(Storage)] K --> P@{ shape: stadium, label: "Post-processing" } style C fill:#9AEBFE,color:black style I fill:#9AEBFE,color:black
Kafka 还有以下社区提供的官方支持资源
- Docker 容器 用于快速启动单个节点
- Helm chart (由 Bitnami 提供)
- Strimzi Kubernetes Operator
配置
请参考以下示例配置文件
- collector: config-kafka-collector.yaml
- ingester: config-kafka-ingester.yaml
Jaeger 使用来自 opentelemetry-collector-contrib
仓库的 Kafka exporter 和 receiver。有关配置详情,请参考它们各自的 README。
主题与分区
除非您的 Kafka 集群配置为自动创建主题,否则您需要提前创建。您可以参考Kafka 快速入门文档 了解如何操作。