将Kibana连接到Kubernetes集群中的Elasticsearch

appdap1

我有一个正在运行的elasticsearch集群,我正在尝试将kibana连接到该集群(相同节点)。当前,当我尝试使用:在浏览器中打开服务时,页面挂起。在我的kibana pod日志中,pod中的最后几条日志消息是:

{"type":"log","@timestamp":"2017-10-13T17:23:46Z","tags":["listening","info"],"pid":1,"message":"Server running at http://0.0.0.0:5601"}
{"type":"log","@timestamp":"2017-10-13T17:23:46Z","tags":["status","ui settings","error"],"pid":1,"state":"red","message":"Status changed from uninitialized to red - Elasticsearch plugin is red","prevState":"uninitialized","prevMsg":"uninitialized"}
{"type":"log","@timestamp":"2017-10-13T17:23:49Z","tags":["status","plugin:[email protected]","error"],"pid":1,"state":"red","message":"Status changed from yellow to red - Request Timeout after 3000ms","prevState":"yellow","prevMsg":"Waiting for Elasticsearch"}

我安装在kibana pod中的kibana.yml文件具有以下配置:

server.name: kibana-logging
server.host: 0.0.0.0 
elasticsearch.url: http://elasticsearch:9300
xpack.security.enabled: false
xpack.monitoring.ui.container.elasticsearch.enabled: true 

和我的elasticsearch.yml文件具有以下配置设置(我有3个ES吊舱)

cluster.name: elasticsearch-logs
node.name: ${HOSTNAME}
network.host: 0.0.0.0

bootstrap.memory_lock: false
xpack.security.enabled: false
discovery.zen.minimum_master_nodes: 2
discovery.zen.ping.unicast.hosts: ["172.17.0.3:9300", "172.17.0.4:9300", "172.17.0.4:9300"]

我觉得问题出在当前network.host领域,但不确定。如果它们位于相同的群集/节点中,我会丢失/需要修改哪些字段才能连接到kibana pod到elasticsearch?谢谢!

ES服务:

apiVersion: v1
kind: Service
metadata:
  name: elasticsearch
  labels:
    component: elasticsearch
    role: master
spec:
  type: NodePort
  selector:
    component: elasticsearch
    role: master
  ports:
  - name: http
    port: 9200
    targetPort: 9200
    nodePort: 30303
    protocol: TCP

Kibana Svc

apiVersion: v1
kind: Service
metadata:
  name: kibana
  namespace: default
  labels:
    component: kibana
spec:
  type: NodePort
  selector:
    component: kibana
  ports:
  - port: 80
    targetPort: 5601
    protocol: TCP

编辑:在kibana.yml中将端口更改为9200后,这是我尝试访问kibana时在日志末尾看到的内容:

{"type":"log","@timestamp":"2017-10-13T21:36:30Z","tags":["listening","info"],"pid":1,"message":"Server running at http://0.0.0.0:5601"}
{"type":"log","@timestamp":"2017-10-13T21:36:30Z","tags":["status","ui settings","error"],"pid":1,"state":"red","message":"Status changed from uninitialized to red - Elasticsearch plugin is red","prevState":"uninitialized","prevMsg":"uninitialized"}
{"type":"log","@timestamp":"2017-10-13T21:36:33Z","tags":["status","plugin:[email protected]","error"],"pid":1,"state":"red","message":"Status changed from yellow to red - Request Timeout after 3000ms","prevState":"yellow","prevMsg":"Waiting for Elasticsearch"}
{"type":"log","@timestamp":"2017-10-13T21:37:02Z","tags":["error","elasticsearch","admin"],"pid":1,"message":"Request error, retrying\nPOST http://elasticsearch:9200/.reporting-*/esqueue/_search?version=true => getaddrinfo ENOTFOUND elasticsearch elasticsearch:9200"}
{"type":"log","@timestamp":"2017-10-13T21:37:32Z","tags":["warning","elasticsearch","admin"],"pid":1,"message":"Unable to revive connection: http://elasticsearch:9200/"}
{"type":"log","@timestamp":"2017-10-13T21:37:33Z","tags":["warning","elasticsearch","admin"],"pid":1,"message":"Unable to revive connection: http://elasticsearch:9200/"}
{"type":"log","@timestamp":"2017-10-13T21:37:37Z","tags":["warning","elasticsearch","admin"],"pid":1,"message":"Unable to revive connection: http://elasticsearch:9200/"}
{"type":"log","@timestamp":"2017-10-13T21:37:38Z","tags":["warning","elasticsearch","admin"],"pid":1,"message":"Unable to revive connection: http://elasticsearch:9200/"}
{"type":"log","@timestamp":"2017-10-13T21:37:42Z","tags":["warning","elasticsearch","admin"],"pid":1,"message":"Unable to revive connection: http://elasticsearch:9200/"}
瓦斯科普

这里的问题是您在端口9200上公开了Elasticsearch,但正尝试连接到kibana.yml文件中的端口9300。

您需要编辑您的kibana.yml文件才能使用:

elasticsearch.url: http://elasticsearch:9200

或将elasticsearch服务中的端口更改为9300。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

连接到Java中的Oracle集群

使用Go代码从Kubernetes连接到外部Kubernetes集群

无法从集群内部连接到kubernetes API

Docker上的Kibana无法连接到Elasticsearch

将NiFi连接到ElasticSearch

如何从Kubernetes集群外部连接到CockroachDB?

无法将节点连接到集群

Kibana未连接到ElasticSearch

无法将工作程序节点连接到kubernetes集群

连接到ElasticSearch的Kibana问题

将jaeger与Kubernetes集群上的Elasticsearch后端存储连接

如何将Kibana Pod连接到Kubernetes中的Elastic集群

Google Cloud Kubernetes无法连接到集群

无法将Elasticsearch作为Kubernetes集群中的持久卷

Kibana无法在Docker上连接到Elasticsearch

无法将Kibana连接到Elasticsearch

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

Kibana unabe连接到Windows上的Elasticsearch

Kubernetes集群中的Pod无法通过出口网络策略连接到Internet

在Kubernetes cron作业中运行的应用程序未连接到同一Kubernetes集群中的数据库

如何使用SSL将Winlogbeat连接到Elasticsearch停放的集群?

Kibana将无法连接到Amazon Elasticsearch Service上的Elasticsearch

Graylog 无法连接到 Kubernetes 集群中的 Elasticsearch

本地 Docker 连接到 Kubernetes 集群

从 Kubernetes 集群连接到 MongoDB Droplet

从 kubernetes 集群内部连接到 Postgresql

将 Elasticsearch 连接到 Kibana

在 gitlab CI 中连接到 kubernetes 集群时出现禁止错误

如何将 Docker 中的 Prometheus 连接到 Kubernetes 集群?