转发遥测数据
将追踪、日志和指标导出到可观察性后端和云平台
摘要
第 1 章 转发遥测数据 复制链接链接已复制到粘贴板!
您可以使用 OpenTelemetry Collector 来转发您的遥测数据。
1.1. 将 trace 转发到 TempoStack 实例 复制链接链接已复制到粘贴板!
要配置转发追踪到 TempoStack 实例,您可以部署和配置 OpenTelemetry Collector。您可以使用指定的处理器、接收器和导出器在部署模式中部署 OpenTelemetry Collector。有关其他模式,请参阅附加资源中的 OpenTelemetry Collector 文档链接。
先决条件
- 已安装红帽构建的 OpenTelemetry Operator。
- 已安装 Tempo Operator。
- 在集群中部署了 TempoStack 实例。
流程
为 OpenTelemetry Collector 创建服务帐户。
ServiceAccount 示例
apiVersion: v1 kind: ServiceAccount metadata: name: otel-collector-deployment
apiVersion: v1 kind: ServiceAccount metadata: name: otel-collector-deploymentCopy to Clipboard Copied! Toggle word wrap Toggle overflow 为服务帐户创建集群角色。
ClusterRole 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将集群角色绑定到服务帐户。
ClusterRoleBinding 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建 YAML 文件以定义
OpenTelemetryCollector自定义资源(CR)。OpenTelemetryCollector 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
您可以将 telemetrygen 部署为测试:
1.2. 将日志转发到 LokiStack 实例 复制链接链接已复制到粘贴板!
您可以使用 openshift-logging 租户模式部署 OpenTelemetry Collector 将日志转发到 LokiStack 实例。
先决条件
- 已安装红帽构建的 OpenTelemetry Operator。
- 已安装 Loki Operator。
-
在集群中部署了受支持的
LokiStack实例。有关支持的LokiStack配置的更多信息,请参阅 Logging。
流程
为 OpenTelemetry Collector 创建服务帐户。
ServiceAccount对象示例apiVersion: v1 kind: ServiceAccount metadata: name: otel-collector-deployment namespace: openshift-logging
apiVersion: v1 kind: ServiceAccount metadata: name: otel-collector-deployment namespace: openshift-loggingCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个集群角色,为 Collector 的服务帐户授予将日志推送到
LokiStack应用程序租户的权限。ClusterRole对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将集群角色绑定到服务帐户。
ClusterRoleBinding对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建
OpenTelemetryCollector自定义资源 (CR) 对象。OpenTelemetryCollectorCR 对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow
您可以将 telemetrygen 部署为测试:
1.3. 将遥测数据转发到第三方系统 复制链接链接已复制到粘贴板!
OpenTelemetry Collector 通过 OpenTelemetry 协议(OTLP)使用 OTLP 导出数据,通过 gRPC 或 HTTP 传输实现。如果您需要将遥测数据转发到第三方系统,且不支持红帽构建的 OpenTelemetry 中的 OTLP 或其他支持的协议,则您可以通过 OTLP 接收遥测数据,并使用自定义导出器将其导出到第三方系统。
红帽不支持自定义部署。
先决条件
- 您已开发了自己的不支持的自定义导出器,该导出器可以通过 OTLP 将遥测数据导出到第三方系统。
流程
通过 OperatorHub 或手动部署自定义收集器:
1.4. 将遥测数据转发到 AWS 复制链接链接已复制到粘贴板!
要将遥测数据转发到 AWS,请使用带有以下导出器的 OpenTelemetry Collector :AWS CloudWatch Logs Exporter 用于日志,AWS EMF Exporter 用于指标,使用 AWS X-Ray Exporter 用于 trace。
1.5. 将遥测数据转发到 Google Cloud 复制链接链接已复制到粘贴板!
要将遥测数据转发到 Google Cloud Operations Suite,请将 OpenTelemetry Collector 与 Google Cloud Exporter 搭配使用。导出器将指标发送到 Google Cloud Monitoring,日志发送到 Google Cloud Logging,并追踪到 Google Cloud Trace。