第 1 章 配置 Collector
红帽构建的 OpenTelemetry Operator 使用自定义资源定义(CRD)文件来定义创建和部署分布式追踪平台 (Tempo) 资源时要使用的架构和配置设置。您可以安装默认配置或修改该文件。
1.1. 部署模式 复制链接链接已复制到粘贴板!
OpenTelemetryCollector 自定义资源允许您为 OpenTelemetry Collector 指定以下部署模式之一:
- Deployment
- 默认。
- StatefulSet
- 如果您需要运行有状态工作负载,例如使用 Collector 的 File Storage Extension 或 Tail Sampling Processor 时,请使用 StatefulSet 部署模式。
- DaemonSet
- 如果您需要从每个节点中提取遥测数据,例如使用 Collector 的 Filelog Receiver 来读取容器日志,请使用 DaemonSet 部署模式。
- Sidecar
如果您需要访问容器内的日志文件,请将 Collector 注入 sidecar,并使用 Collector 的 Filelog Receiver 和共享卷,如
emptyDir。如果您需要将应用程序配置为通过
localhost发送遥测数据,请将 Collector 注入 sidecar,并设置 Collector 通过加密和经过身份验证的连接将遥测数据转发到外部服务。当作为 sidecar 注入时,Collector 会与应用程序在同一 pod 中运行。注意如果选择 sidecar 部署模式,那么除了在
OpenTelemetryCollector自定义资源 CR 中设置spec.mode: sidecar字段外,还必须将sidecar.opentelemetry.io/inject注解设置为 pod 注解或命名空间注解。如果在 pod 和命名空间上设置了此注解,如果 pod 注解被设置为false或OpenTelemetryCollectorCR 名称,则 pod 注解会优先使用。作为 pod 注解,
sidecar.opentelemetry.io/inject注解支持几个值:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 支持的值:
false- 不注入 Collector。如果缺少注解,这是默认设置。
true-
使用同一命名空间中的
OpenTelemetryCollectorCR 配置注入 Collector。 <collector_name>-
使用同一命名空间中的
<collector_name>OpenTelemetryCollectorCR 配置注入 Collector。 <namespace>/<collector_name>-
使用
<namespace>命名空间中的<collector_name>OpenTelemetryCollectorCR 配置注入 Collector。