datadog/ingress-nginx-injectiondatadog/ingress-nginx-injection 提供一个初始化容器(init-container),用于为 Ingress-NGINX Controller 注入 Datadog 监控模块,实现对 Ingress-NGINX 控制器的性能追踪和安全管理功能。
适用于在 Kubernetes 环境中部署了 Ingress-NGINX Controller,并希望通过 Datadog 平台对其进行性能监控、请求追踪和安全管理的用户。尤其适合需要深入分析入口流量性能瓶颈、排查请求延迟问题以及加强应用层安全监控的场景。
根据已部署的 Ingress-NGINX Controller 版本,选择对应版本的 datadog/ingress-nginx-injection 镜像(详见兼容性表格)。
修改 Ingress-NGINX Controller 的 Pod 规范,添加如下 init-container 配置,用于注入 Datadog 监控模块:
yamlinitContainers: - name: init-datadog image: datadog/ingress-nginx-injection:<INGRESS_NGINX_VERSION> # 替换为实际版本,如 v1.13.2 command: ['/datadog/init_module.sh', '/opt/datadog-modules'] volumeMounts: - name: nginx-module mountPath: /opt/datadog-modules # 挂载卷用于存储注入的模块文件
在 Pod 的 volumes 部分添加用于共享模块文件的卷:
yamlvolumes: - name: nginx-module emptyDir: {} # 使用 emptyDir 卷在 init-container 和主容器间共享模块文件
修改 Ingress-NGINX Controller 的 ConfigMap,添加模块加载配置及 Datadog Agent 连接参数:
yamlkind: ConfigMap apiVersion: v1 metadata: name: ingress-nginx-controller # 对应 Ingress-NGINX Controller 的 ConfigMap 名称 namespace: ingress-nginx # 根据实际命名空间调整 data: enable-opentelemetry: "false" # 禁用 OpenTelemetry(如未使用) error-log-level: notice # 日志级别配置 main-snippet: | load_module /opt/datadog-modules/ngx_http_datadog_module.so; # 加载 Datadog 模块 datadog_stats_config on; # 启用 Datadog 统计配置(根据需要调整) datadog_agent_host "datadog-agent"; # Datadog Agent 的服务名称(默认在同一命名空间) datadog_agent_port 8126; # Datadog Agent 的默认追踪端口
如需详细配置步骤,请参阅 Datadog 官方文档。
本镜像版本必须与 Ingress-NGINX Controller 版本严格匹配,否则可能导致控制器启动失败。版本不匹配会引发模块注入错误,进而影响 Ingress-NGINX Controller 的正常运行。
| Ingress-NGINX Controller 版本 | init-container 镜像版本 |
|---|---|
| v1.13.2 | datadog/ingress-nginx-injection:v1.13.2 |
| v1.13.1 | datadog/ingress-nginx-injection:v1.13.1 |
| v1.13.0 | datadog/ingress-nginx-injection:v1.13.0 |
| v1.12.6 | datadog/ingress-nginx-injection:v1.12.6 |
| v1.12.5 | datadog/ingress-nginx-injection:v1.12.5 |
| v1.12.4 | datadog/ingress-nginx-injection:v1.12.4 |
| v1.12.3 | datadog/ingress-nginx-injection:v1.12.3 |
| v1.12.2 | datadog/ingress-nginx-injection:v1.12.2 |
| v1.12.1 | datadog/ingress-nginx-injection:v1.12.1 |
| v1.12.0 | datadog/ingress-nginx-injection:v1.12.0 |
| v1.11.7 | datadog/ingress-nginx-injection:v1.11.7 |
| v1.11.6 | datadog/ingress-nginx-injection:v1.11.6 |
| v1.11.5 | datadog/ingress-nginx-injection:v1.11.5 |
| v1.11.4 | datadog/ingress-nginx-injection:v1.11.4 |
| v1.11.3 | datadog/ingress-nginx-injection:v1.11.3 |
| v1.11.2 | datadog/ingress-nginx-injection:v1.11.2 |
| v1.11.1 | datadog/ingress-nginx-injection:v1.11.1 |
| v1.11.0 | datadog/ingress-nginx-injection:v1.11.0 |
| v1.10.6 | datadog/ingress-nginx-injection:v1.10.6 |
| v1.10.5 | datadog/ingress-nginx-injection:v1.10.5 |
| v1.10.4 | datadog/ingress-nginx-injection:v1.10.4 |
| v1.10.3 | datadog/ingress-nginx-injection:v1.10.3 |
| v1.10.2 | datadog/ingress-nginx-injection:v1.10.2 |
| v1.10.1 | datadog/ingress-nginx-injection:v1.10.1 |
| v1.10.0 | datadog/ingress-nginx-injection:v1.10.0 |
| v1.9.6 | datadog/ingress-nginx-injection:v1.9.6 |
如在使用过程中遇到问题,请访问 Datadog 支持页面 获取帮助。# Datadog Ingress-NGINX 注入工具
datadog/ingress-nginx-injection 是一个初始化容器(init-container)镜像,用于为 Ingress-NGINX Controller 注入 Datadog 监控模块。其主要用途是在 Kubernetes 环境中实现对 Ingress-NGINX Controller 的性能追踪和安全监控能力集成。
适用于需要通过 Datadog 平台监控 Kubernetes 环境中 Ingress-NGINX Controller 的场景,特别是:
根据已部署的 Ingress-NGINX Controller 版本,选择对应版本的 datadog/ingress-nginx-injection 镜像(详见兼容性表格)。
在 Ingress-NGINX Controller 的 Pod 规范中添加以下 init-container 配置:
yamlinitContainers: - name: init-datadog image: datadog/ingress-nginx-injection:<INGRESS_NGINX_VERSION> # 替换为实际版本,如 v1.13.2 command: ['/datadog/init_module.sh', '/opt/datadog-modules'] volumeMounts: - name: nginx-module mountPath: /opt/datadog-modules
在 Pod 规范的 volumes 部分添加用于模块共享的卷:
yamlvolumes: - name: nginx-module emptyDir: {} # 用于在 init-container 和主容器间共享模块文件
通过 ConfigMap 配置 NGINX 加载 Datadog 模块:
yamlkind: ConfigMap apiVersion: v1 metadata: name: ingress-nginx-controller # 对应 Ingress-NGINX Controller 的 ConfigMap 名称 data: enable-opentelemetry: "false" error-log-level: notice main-snippet: | load_module /opt/datadog-modules/ngx_http_datadog_module.so; # 可选:添加 Datadog 模块配置参数 datadog_stats_config on; datadog_agent_host "datadog-agent"; # Datadog Agent 服务名称 datadog_agent_port 8126; # Datadog Agent 追踪端口
有关完整设置说明,请访问 官方文档。
本镜像版本必须与 Ingress-NGINX Controller 版本严格匹配,版本不匹配可能导致控制器启动失败。
| Ingress-NGINX 版本 | init-container 镜像 |
|---|---|
| v1.13.2 | datadog/ingress-nginx-injection:v1.13.2 |
| v1.13.1 | datadog/ingress-nginx-injection:v1.13.1 |
| v1.13.0 | datadog/ingress-nginx-injection:v1.13.0 |
| v1.12.6 | datadog/ingress-nginx-injection:v1.12.6 |
| v1.12.5 | datadog/ingress-nginx-injection:v1.12.5 |
| v1.12.4 | datadog/ingress-nginx-injection:v1.12.4 |
| v1.12.3 | datadog/ingress-nginx-injection:v1.12.3 |
| v1.12.2 | datadog/ingress-nginx-injection:v1.12.2 |
| v1.12.1 | datadog/ingress-nginx-injection:v1.12.1 |
| v1.12.0 | datadog/ingress-nginx-injection:v1.12.0 |
| v1.11.7 | datadog/ingress-nginx-injection:v1.11.7 |
| v1.11.6 | datadog/ingress-nginx-injection:v1.11.6 |
| v1.11.5 | datadog/ingress-nginx-injection:v1.11.5 |
| v1.11.4 | datadog/ingress-nginx-injection:v1.11.4 |
| v1.11.3 | datadog/ingress-nginx-injection:v1.11.3 |
| v1.11.2 | datadog/ingress-nginx-injection:v1.11.2 |
| v1.11.1 | datadog/ingress-nginx-injection:v1.11.1 |
| v1.11.0 | datadog/ingress-nginx-injection:v1.11.0 |
| v1.10.6 | datadog/ingress-nginx-injection:v1.10.6 |
| v1.10.5 | datadog/ingress-nginx-injection:v1.10.5 |
| v1.10.4 | datadog/ingress-nginx-injection:v1.10.4 |
| v1.10.3 | datadog/ingress-nginx-injection:v1.10.3 |
| v1.10.2 | datadog/ingress-nginx-injection:v1.10.2 |
| v1.10.1 | datadog/ingress-nginx-injection:v1.10.1 |
| v1.10.0 | datadog/ingress-nginx-injection:v1.10.0 |
| v1.9.6 | datadog/ingress-nginx-injection:v1.9.6 |
如遇使用问题,请访问 Datadog 支持页面 获取帮助。完整设置说明请参阅 官方文档。

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务