Kubernetes
ClickStack 使用 OpenTelemetry (OTel) 收集器从 Kubernetes 集群中收集日志、指标和 Kubernetes 事件,并将它们转发到 ClickStack。我们支持原生的 OTel 日志格式,并且不需要额外的供应商特定配置。
本指南集成了以下内容:
- 日志
- 基础设施指标
要发送应用级别的指标或 APM/追踪,您还需要将相应的语言集成添加到您的应用程序中。
创建 OTel Helm Chart 配置文件
为了从每个节点和集群本身收集日志和指标,我们需要部署两个单独的 OpenTelemetry 收集器。一个将作为 DaemonSet 部署,以从每个节点收集日志和指标,另一个将作为部署部署,以收集集群本身的日志和指标。
创建 DaemonSet 配置
DaemonSet 将从集群中的每个节点收集日志和指标,但不会收集 Kubernetes 事件或集群范围的指标。
创建一个名为 daemonset.yaml
的文件,内容如下:
创建部署配置
为了收集 Kubernetes 事件和集群范围的指标,我们需要将一个单独的 OpenTelemetry 收集器作为部署进行部署。
创建一个名为 deployment.yaml
的文件,内容如下:
部署 OpenTelemetry 收集器
现在可以使用 OpenTelemetry Helm Chart 在您的 Kubernetes 集群中部署 OpenTelemetry 收集器。
添加 OpenTelemetry Helm 仓库:
使用上述配置安装图表:
现在,您的 Kubernetes 集群中的指标、日志和 Kubernetes 事件应该出现在 HyperDX 中。
转发资源标签到 Pods(推荐)
为了将应用级别的日志、指标和追踪与 Kubernetes 元数据(例如 pod 名称、命名空间等)关联起来,您需要使用 OTEL_RESOURCE_ATTRIBUTES
环境变量将 Kubernetes 元数据转发到您的应用程序。
以下是一个示例部署,通过环境变量将 Kubernetes 元数据转发到应用程序: