kibana 7.2在Kubernetes上无法达到Elasticsearch

时间:2019-07-10 15:12:16

标签: kubernetes kibana-7

我正在测试最新版本的Elastic Stack(7.2.0),我似乎无法将Kibana连接到Elasticsearch,但是当我回滚到6.8.1时它可以工作。有什么想法吗?


Kibana部署和服务

apiVersion: apps/v1
kind: Deployment
metadata:
  name: kibana
  namespace: *************
  labels:
    component: kibana
spec:
  replicas: 1
  selector:
    matchLabels:
      component: kibana
  template:
    metadata:
      labels:
        component: kibana
    spec:
      containers:
      - name: kibana
        image: docker.elastic.co/kibana/kibana:7.2.0
        resources:
          limits:
            cpu: 1000m
          requests:
            cpu: 100m
        env:
          - name: ELASTICSEARCH_URL
            value: http://elastic.****************:80
        ports:
        - containerPort: 5601
          name: kibana
          protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
  name: kibana
  namespace: *************
  labels:
    component: kibana
spec:
  selector:
    component: kibana
  ports:
  - port: 80
    protocol: "TCP"
    name: "http"
    targetPort: 5601

我正在使用入口,但是当我尝试部署7.2.0时,Kibana会完全忽略ELASTICSEARCH_URL值,但是当我回滚至6.8.1时,它会起作用。我不知道7.2.0是否不再支持此方法,我一直在努力寻找一些文档,但是没有运气。

3 个答案:

答案 0 :(得分:1)

从Kibana 7.0开始,elasticsearch.hosts不再有效,现在ELASTICSEARCH_HOSTShttps://www.elastic.co/guide/en/kibana/7.x/breaking-changes-7.0.html#_literal_elasticsearch_url_literal_is_no_longer_valid

环境变量转换为这些设置名称。在这种情况下,新的环境变量将为function test<A, B>(input: A, fallbackValue: B): NonNullable<A> | B { if (input == null || input == undefined) { return fallbackValue; } else { return input; } } 。请参见https://www.elastic.co/guide/en/kibana/7.2/docker.html上的示例。

答案 1 :(得分:0)

更新ELASTICSEARCH_URL中的摄取服务dns名称,如下所示。假设kibana和es在同一k8s集群中运行


          - name: ELASTICSEARCH_URL
            value: http://ingest.<namespace>.svc.cluster.local:9200

更新它们在其中运行的正确名称空间

答案 2 :(得分:0)

将您的环境密钥从ELASTICSEARCH_URL更改为ELASTICSEARCH_HOSTS