AWS Distro for OpenTelemetry Collector(简称 AWS OTel Collector)是由 Amazon 分发的、AWS ***支持的上游 OpenTelemetry Collector 版本。该镜像旨在提供与 OpenTelemetry 社区组件的兼容性,同时针对 AWS 云环境进行优化,支持在 AWS 计算平台上无缝部署和运行。其核心用途是收集、处理和导出遥测数据(指标、追踪、日志),并将数据转发至 AWS CloudWatch(Metrics、Traces、Logs)及其他支持的后端服务,帮助用户实现统一的可观测性管理。
镜像遵循 Apache 2.0 开源许可证,允许自由使用、修改和分发。
AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY)授予容器对 CloudWatch 的写入权限。otel-collector-config.yaml),定义数据采集、处理和导出规则。docker run)通过 docker run 命令直接启动容器,需挂载本地配置文件并设置必要环境变量(如 AWS 区域)。
bashdocker run -d \ --name aws-otel-collector \ -v /path/to/otel-collector-config.yaml:/etc/otelcol-contrib/config.yaml \ # 挂载本地配置文件 -e AWS_REGION=us-west-2 \ # 设置 AWS 区域 -p 4317:4317 \ # OTLP gRPC 接收端口 -p 4318:4318 \ # OTLP HTTP 接收端口 public.ecr.aws/aws-observability/aws-otel-collector:latest
说明:镜像地址为 AWS ECR Public 仓库,具体版本可替换
latest为指定标签(如v0.86.0),版本列表见 AWS OTel Collector 发布页。
通过 docker-compose.yml 定义服务,简化多容器协同或配置管理。
docker-compose.yml:yamlversion: '3.8' services: aws-otel-collector: image: public.ecr.aws/aws-observability/aws-otel-collector:latest container_name: aws-otel-collector restart: always volumes: - ./otel-collector-config.yaml:/etc/otelcol-contrib/config.yaml # 挂载配置文件 environment: - AWS_REGION=us-west-2 # AWS 区域 # 若未使用 IAM 角色,需配置访问凭证(生产环境建议优先使用 IAM 角色) # - AWS_ACCESS_KEY_ID=AKIAEXAMPLE # - AWS_SECRET_ACCESS_KEY=secret ports: - "4317:4317" # OTLP gRPC 接收端口 - "4318:4318" # OTLP HTTP 接收端口 - "8888:8888" # 健康检查端口(可选)
启动命令:
bashdocker-compose up -d
配置文件(otel-collector-config.yaml)是核心,需定义数据采集(Receivers)、处理(Processors)、导出(Exporters)和服务(Service)逻辑。以下为向 CloudWatch 导出数据的基础配置示例:
otel-collector-config.yaml):yamlreceivers: otlp: # 接收 OTLP 格式数据(默认端口 4317/grpc、4318/http) protocols: grpc: http: processors: batch: # 批量处理数据,优化网络传输效率 timeout: 10s send_batch_size: 1024 exporters: awscloudwatchlogs: # 导出日志至 CloudWatch Logs log_group_name: /aws/otel-collector/example log_stream_name: {service.name}-{host.name} awscloudwatchmetrics: # 导出指标至 CloudWatch Metrics namespace: AWSOTelExample aws***: # 导出追踪数据至 CloudWatch X-Ray region: us-west-2 service: pipelines: logs: receivers: [otlp] processors: [batch] exporters: [awscloudwatchlogs] metrics: receivers: [otlp] processors: [batch] exporters: [awscloudwatchmetrics] traces: receivers: [otlp] processors: [batch] exporters: [aws***]
详细配置参数可参考 AWS OTel Collector ***文档。
容器运行时支持通过环境变量调整配置,常用变量如下:
| 环境变量 | 说明 | 示例值 |
|---|---|---|
AWS_REGION | AWS 区域(如未通过配置文件指定) | us-west-2 |
AWS_ACCESS_KEY_ID | AWS 访问密钥 ID(非 IAM 角色场景) | AKIAEXAMPLE |
AWS_SECRET_ACCESS_KEY | AWS 密钥(非 IAM 角色场景) | secret |
OTEL_CONFIG | 配置文件路径(默认 /etc/otelcol-contrib/config.yaml) | /custom/config.yaml |
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429