使用 Helm values 文件配置 webhook

编辑

APM Attacher 的 webhook 可以从 Helm chart 安装。您可以使用 Helm values 文件提供自定义 webhook 配置。Elastic 提供了一个 custom.yaml 文件作为起点。

此示例 custom.yaml 文件使用 Elastic APM Java 代理 检测 Pod

apm:
  secret_token: SuP3RT0K3N 
  namespaces: 
    - default
    - my-name-space-01
    - my-name-space-02
webhookConfig:
  agents:
    java: 
      environment:
        ELASTIC_APM_SERVER_URL: "https://apm-example.com:8200" 
        ELASTIC_APM_ENVIRONMENT: "prod"
        ELASTIC_APM_LOG_LEVEL: "info"

部署的 secret_token。如果使用 API 密钥,请使用 api_key

如果您使用密钥令牌或 API 密钥来保护您的部署,则必须列出您要自动检测 Pod 的所有命名空间。密钥令牌或 API 密钥将作为 Kubernetes Secrets 存储在每个命名空间中。

此处写入的字段将与 values.yaml 中预先存在的字段合并

Elastic APM 代理环境变量 - 例如,APM 服务器 URL,它指定 APM 集成或服务器的 URL 和端口。

此示例 custom.yaml 文件使用 Elastic APM Node.js 代理 检测 Pod

apm:
  secret_token: SuP3RT0K3N 
  namespaces: 
    - default
    - my-name-space-01
    - my-name-space-02
webhookConfig:
  agents:
    nodejs: 
      environment:
        ELASTIC_APM_SERVER_URL: "https://apm-example.com:8200" 
        ELASTIC_APM_ENVIRONMENT: "prod"
        ELASTIC_APM_LOG_LEVEL: "info"

部署的 secret_token。如果使用 API 密钥,请使用 api_key

如果您使用密钥令牌或 API 密钥来保护您的部署,则必须列出您要自动检测 Pod 的所有命名空间。密钥令牌或 API 密钥将作为 Kubernetes Secrets 存储在每个命名空间中。

此处写入的字段将与 values.yaml 中预先存在的字段合并

Elastic APM 代理环境变量 - 例如,APM 服务器 URL,它指定 APM 集成或服务器的 URL 和端口。

以上示例假设您要使用最新版本的 Elastic APM 代理。高级用户可能希望固定代理的版本或提供自定义构建。为此,请设置您自己的 imageartifactenvironment.*OPTIONS 字段。从 values.yaml 复制格式。

过期和轮换 API 密钥需要更新 custom.yaml,使用新的 custom.yaml 升级 Helm 安装,并以类似于其他部署定义更改的方式循环运行 Pod。