elastic/metricbeatMetricbeat Docker镜像是由Elastic官方维护的轻量级指标收集工具容器化版本。作为Elastic Stack的核心组件之一,Metricbeat专注于从服务器、容器、云服务和应用程序中收集系统与服务指标,支持将数据发送至Elasticsearch、Logstash或其他目标,结合Kibana实现指标可视化与分析。该镜像确保与Elastic Stack(Elasticsearch、Kibana等)版本兼容,简化部署与集成流程。
通过docker run命令启动容器,默认配置下Metricbeat将收集系统指标并输出至控制台:
bashdocker run docker.elastic.co/beats/metricbeat:8.11.3
指定Elasticsearch和Kibana地址,自动加载默认仪表盘:
bashdocker run -d \ --name metricbeat \ --user=root \ --volume="/var/run/docker.sock:/var/run/docker.sock:ro" \ --volume="/sys/fs/cgroup:/hostfs/sys/fs/cgroup:ro" \ --volume="/proc:/hostfs/proc:ro" \ --volume="/:/hostfs:ro" \ -e ELASTICSEARCH_HOSTS="[***]" \ -e KIBANA_HOST="[***]" \ -e ELASTICSEARCH_USERNAME="elastic" \ -e ELASTICSEARCH_PASSWORD="changeme" \ docker.elastic.co/beats/metricbeat:8.11.3 \ --setup -e
参数说明:
--user=root:需root权限访问主机系统指标(如/proc、/sys);- 挂载主机目录(
/var/run/docker.sock、/proc等):允许Metricbeat收集主机和容器指标;--setup:自动加载Kibana仪表盘和索引模板;-e:启用详细日志输出。
通过挂载本地配置文件覆盖默认配置(推荐生产环境使用):
metricbeat.yml(参考官方配置示例);bashdocker run -d \ --name metricbeat \ --user=root \ --volume="/path/to/local/metricbeat.yml:/etc/metricbeat/metricbeat.yml:ro" \ --volume="/var/run/docker.sock:/var/run/docker.sock:ro" \ --volume="/proc:/hostfs/proc:ro" \ --volume="/sys/fs/cgroup:/hostfs/sys/fs/cgroup:ro" \ --volume="/:/hostfs:ro" \ docker.elastic.co/beats/metricbeat:8.11.3
yamlversion: '3' services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:8.11.3 environment: - discovery.type=single-node - ES_JAVA_OPTS=-Xms512m -Xmx512m ports: - "9200:9200" healthcheck: test: ["CMD", "curl", "-f", "http://localhost:9200/_cluster/health"] interval: 10s timeout: 10s retries: 5 kibana: image: docker.elastic.co/kibana/kibana:8.11.3 environment: - ELASTICSEARCH_HOSTS=[***] ports: - "5601:5601" depends_on: elasticsearch: condition: service_healthy metricbeat: image: docker.elastic.co/beats/metricbeat:8.11.3 user: root volumes: - ./metricbeat.yml:/etc/metricbeat/metricbeat.yml:ro - /var/run/docker.sock:/var/run/docker.sock:ro - /proc:/hostfs/proc:ro - /sys/fs/cgroup:/hostfs/sys/fs/cgroup:ro - /:/hostfs:ro environment: - ELASTICSEARCH_HOSTS=[***] - KIBANA_HOST=[***] depends_on: elasticsearch: condition: service_healthy kibana: condition: service_started command: --setup -e
| 环境变量 | 说明 | 默认值 |
|---|---|---|
ELASTICSEARCH_HOSTS | Elasticsearch服务地址,多个用逗号分隔 | http://localhost:9200 |
KIBANA_HOST | Kibana服务地址 | http://localhost:5601 |
ELASTICSEARCH_USERNAME | Elasticsearch认证用户名 | - |
ELASTICSEARCH_PASSWORD | Elasticsearch认证密码 | - |
LOG_LEVEL | 日志级别(debug/info/warn/error) | info |
Metricbeat通过模块化设计支持多场景监控,常用模块包括:
模块启用与配置可通过metricbeat.yml中的modules字段实现,详情参考官方模块文档。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务