我正在尝试根据official documentation (7.2.0版)在docker中运行metricbeat服务。下面是用于setup的bash命令
docker run -d --name=metricbeat docker.elastic.co/beats/metricbeat:7.2.0 setup\
-e setup.kibana.host=http://XXX.XXX.XXX.XXX:5601\
-e output.elasticsearch.host=["XXX.XXX.XXX.XXX:9200"]\
-e output.elasticsearch.password=XXXXXXXX如您所见,我传递的是output.elasticsearch.host变量,它肯定不等于默认值。但下面是metricbeat容器日志的一部分:
2019-07-31T14:32:40.335Z INFO elasticsearch/client.go:166 Elasticsearch url: http://elasticsearch:9200这意味着metricbeat使用默认的弹性主机,而不是环境变量的值。我怎么才能修复它?
发布于 2019-07-31 23:57:34
您打错了,output.elasticsearch.hosts中缺少一个s。
还要在整个环境变量定义两边使用双引号,在主机值两边使用单引号,例如:
-E "output.elasticsearch.hosts=['http://myhost:9200']"上面的例子直接取自global flags的官方文档。
https://stackoverflow.com/questions/57293408
复制相似问题