newrelic/k8s-apm-agent-health-sidecar本镜像为Kubernetes环境下的边车(Sidecar)容器,专门用于实时检索和监控APM(应用性能监控)代理的健康状态。通过与主应用容器协同部署,可帮助运维团队及时掌握APM代理的运行状态,确保应用性能数据采集的连续性和可靠性。
通过环境变量进行配置,支持以下参数:
| 环境变量 | 描述 | 默认值 | 必需 |
|---|---|---|---|
| APM_AGENT_HOST | APM代理容器的访问地址 | localhost | 否 |
| APM_AGENT_PORT | APM代理健康检查端口 | 8200 | 否 |
| HEALTH_CHECK_PATH | APM代理健康检查路径 | /health | 否 |
| CHECK_INTERVAL | 健康检查间隔时间(秒) | 10 | 否 |
| TIMEOUT_SECONDS | 单次检查超时时间(秒) | 5 | 否 |
| EXPOSE_PORT | 本容器状态输出端口 | 8080 | 否 |
| LOG_LEVEL | 日志级别(debug/info/warn/error) | info | 否 |
以下为在Deployment中集成边车容器的配置示例:
yamlapiVersion: apps/v1 kind: Deployment metadata: name: app-with-apm spec: replicas: 3 template: spec: containers: - name: main-app image: your-main-app:latest ports: - containerPort: 8080 # 主应用配置... - name: apm-health-sidecar image: [镜像名称]:[版本标签] env: - name: APM_AGENT_HOST value: "localhost" # 与主应用共享网络时使用localhost - name: APM_AGENT_PORT value: "8200" # APM代理实际健康检查端口 - name: CHECK_INTERVAL value: "15" # 每15秒检查一次 ports: - containerPort: 8080 # 暴露状态输出端口 resources: limits: cpu: 50m memory: 64Mi requests: cpu: 10m memory: 32Mi
如需本地验证镜像功能,可使用以下Docker命令:
bashdocker run -d \ -e APM_AGENT_HOST=apm-agent-service \ -e APM_AGENT_PORT=8200 \ -e CHECK_INTERVAL=5 \ -p 8080:8080 \ [镜像名称]:[版本标签]
访问http://localhost:8080/health可查看检索到的APM代理健康状态,返回格式示例:
json{ "status": "healthy", "agent": "elastic-apm", "last_check": "2023-11-01T12:34:56Z", "metrics": { "active_spans": 42, "error_rate": 0.02 } }
HEALTH_CHECK_PATH参数(如Datadog APM默认使用/live)livenessProbe)监控边车自身健康状态,配置示例:
yamllivenessProbe: httpGet: path: /self-health port: 8080 initialDelaySeconds: 10 periodSeconds: 5

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