跳到主要内容
跳到主要内容

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 元数据转发到应用程序: