栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用Docker将metricbeat连接到Elasticsearch和Kibana

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用Docker将metricbeat连接到Elasticsearch和Kibana

首先

docker-compose
通过添加默认码头工人网络的名称来编辑文件:

version: "3.7"services:  elasticsearch:    image: docker.elastic.co/elasticsearch/elasticsearch:6.3.2    environment:#      - cluster.name=docker-cluster      - bootstrap.memory_lock=true      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"    ulimits:      memlock:        soft: -1        hard: -1    volumes:      - elkdata:/usr/share/elasticsearch/data    ports:      - "9200:9200"    networks:      - my-network    restart: always  kibana:    image: docker.elastic.co/kibana/kibana:6.3.2    volumes:      - kibana:/usr/share/kibana/config    ports:      - "5601:5601"    networks:      - my-network    depends_on:      - elasticsearch    restart: alwaysvolumes:  elkdata:  kibana:networks:  my-network:    name: awesome-name

执行

docker-compose up
,然后从
metricbeat
以下命令开始:

$ docker run docker.elastic.co/beats/metricbeat:6.3.2 --network=awesome-name setup -E setup.kibana.host=kibana:5601 -E output.elasticsearch.hosts=["elasticsearch:9200"]

说明:

当您尝试进行部署时

metricbeat
,您需要提供以下envar:

  • setup.kibana.host=kibana:5601
  • output.elasticsearch.hosts=["localhost:9200"]

我将从第二个开始。使用

dockerrun
命令,在启动时
metricbeat
,您告诉容器它可以访问上的elasticsearch
localhost:9200
。因此,当容器启动时,它将访问端口9200上的localhost,期望找到
elasticsearch
运行状态。但是,由于容器是一个主机隔离的进程,具有自己的网络层,因此
localhost
解析为容器本身 ,而不是您所期望的docker主机。

关于

kibana
主机的设置,首先应了解其
docker-compose
工作原理。默认情况下,当您执行时
docker-composeup
,将创建一个docker网络,并将yml文件上定义的所有服务都添加到该网络。 该网络
内部,可以通过服务名称访问服务。对于你的情况下,阳明文件的定义,他们的名字将是
elasticsearch
kibana

因此,为了使

metricbeat
容器能够与
elasticsearch
kibana
容器进行通信,应将其添加到同一docker网络中。这可以通过
--network
dockerrun
命令上设置标志来实现。

另一种方法是使用网络模式host与容器共享docker主机的网络,但我不建议这样做。

参考文献:

Docker撰写

docker运行



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/409961.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号