2

我尝试在 GCP kubernetes 集群上运行官方 metricbeat docker 映像,如此处所述(https://www.elastic.co/guide/en/beats/metricbeat/current/running-on-kubernetes.html)作为 deamonset 并进行了更改设置,因此它应该将流量路由到现有的弹性搜索 pod,但我不断收到错误消息:

2018-02-22T14:04:54.515Z    WARN    transport/tcp.go:36 DNS lookup failure "elasticsearch-logging.kube-system.svc.cluster.local": lookup elasticsearch-logging.kube-system.svc.cluster.local: no such host
2018-02-22T14:04:55.516Z    ERROR   pipeline/output.go:74   Failed to connect: Get http://elasticsearch-logging.kube-system.svc.cluster.local:9200: lookup elasticsearch-logging.kube-system.svc.cluster.local: no such host
2018-02-22T14:04:55.517Z    WARN    transport/tcp.go:36 DNS lookup failure "elasticsearch-logging.kube-system.svc.cluster.local": lookup elasticsearch-logging.kube-system.svc.cluster.local: no such host
2018-02-22T14:04:57.517Z    ERROR   pipeline/output.go:74   Failed to connect: Get http://elasticsearch-logging.kube-system.svc.cluster.local:9200: lookup elasticsearch-logging.kube-system.svc.cluster.local: no such host
2018-02-22T14:04:57.519Z    WARN    transport/tcp.go:36 DNS lookup failure "elasticsearch-logging.kube-system.svc.cluster.local": lookup elasticsearch-logging.kube-system.svc.cluster.local: no such host
2018-02-22T14:05:01.519Z    ERROR   pipeline/output.go:74   Failed to connect: Get http://elasticsearch-logging.kube-system.svc.cluster.local:9200: lookup elasticsearch-logging.kube-system.svc.cluster.local: no such host
2018-02-22T14:05:01.532Z    WARN    transport/tcp.go:36 DNS lookup failure "elasticsearch-logging.kube-system.svc.cluster.local": lookup elasticsearch-logging.kube-system.svc.cluster.local: no such host

主机名很好,因为其他 pod 正在成功地将数据推送到弹性。现在,经过一些研究,这被证明是 Golang DNS 解析器的问题(而不是 metricbeat 本身)。还有其他人遇到这个问题吗?任何人的解决方案?

4

1 回答 1

0

我们遇到了同样的问题,解决的问题是添加了这个

hostNetwork: true  
dnsPolicy: ClusterFirstWithHostNet  

在与容器标签相同级别的 DaemonSet yaml 中

于 2018-08-07T07:13:49.960 回答