【问题标题】:Elasticsearch and kibana docker images are not working properlyElasticsearch 和 kibana docker 映像无法正常工作
【发布时间】:2020-09-15 06:00:46
【问题描述】:

我按照这里接受的答案How to use the official docker elasticsearch container?

但是 kibana UI 没有出现在浏览器 localhost:5601 中,可能是什么问题?

 [root@localhost ~]# sysctl -w vm.max_map_count=262144
    vm.max_map_count = 262144

 [root@localhost ~]# cat /proc/sys/vm/max_map_count
 262144
 [root@localhost ~]#

错误日志:docker-compose up

kibana       | {"type":"log","@timestamp":"2020-05-28T02:09:53Z","tags":["warning","elasticsearch","admin"],"pid":1,"message":"Unable to revive connection: http://elasticsearch:9200/"}
kibana      | {"type":"log","@timestamp":"2020-05-28T02:09:55Z","tags":["warning","elasticsearch","admin"],"pid":1,"message":"Unable to revive connection: http://elasticsearch:9200/"}
kibana      | {"type":"log","@timestamp":"2020-05-28T02:09:55Z","tags":["warning","elasticsearch","admin"],"pid":1,"message":"No living connections"}

docker ps:

[root@localhost ~]# docker ps
CONTAINER ID        IMAGE                                                 COMMAND                  CREATED             STATUS              PORTS                                            NAMES
b978841f86d5        docker.elastic.co/elasticsearch/elasticsearch:6.6.1   "/bin/bash bin/es-do…"   14 minutes ago      Up 31 seconds       0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp   elasticsearch
9f255a223659        docker.elastic.co/kibana/kibana:6.6.1                "/bin/sh -c /usr/loc…"   14 minutes ago      Up 31 seconds       0.0.0.0:5601->5601/tcp                           kibana
c21d1a77f25f        mobz/elasticsearch-head:5                             "/bin/sh -c 'grunt s…"   14 minutes ago      Up 31 seconds       0.0.0.0:9100->9100/tcp                           head  

操作系统:Centos 7

泊坞窗:最新

docker-compose:最新

docker-compose.yml

    version: '3'
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:6.6.1
    container_name: elasticsearch
    environment:
      - node.name=es01
      - cluster.name=docker-cluster
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      nproc: 65535
      memlock:
        soft: -1
        hard: -1
    cap_add:
      - ALL
    privileged: true
    ports:
      - 9200:9200
      - 9300:9300
    networks:
      - elastic

  kibana:
    image: docker.elastic.co/kibana/kibana-oss:6.6.1
    container_name: kibana
    environment:
      SERVER_NAME: localhost
      ELASTICSEARCH_URL: http://elasticsearch:9200
    depends_on:
      - elasticsearch 
    ports:
      - 5601:5601
    ulimits:
      nproc: 65535
      memlock:
        soft: -1
        hard: -1
    cap_add:
      - ALL
    networks:
      - elastic

network:
  elastic:
    driver: bridge

final capture here after adding the network part (suggested by @Nagle Zhang

On GCP ubuntu 16.04

【问题讨论】:

    标签: docker elasticsearch docker-compose kibana


    【解决方案1】:

    通过命令 docker ps ,我们可以告诉您的服务(kibana&es)都正常工作。

    真正的问题是你的 Kibana 服务找不到 Elasticsearch 服务,因为它无法解析地址http://elasticsearch:9200

    你能分享你的 docker-compose 文件吗?我认为这是因为您在 docker-compose 中的网络不正确。

    1. 运行docker exec -it kibana bash
    2. ping elasticsearch,检查是否正常。
    3. 退出kibana容器,运行命令docker inspect kibanadocker inspect elasticsearch检查两者是否在同一个网络中。
    4. 如果不是,请将网络更改为下面的代码。

    为您的容器添加一个网络。

    version: '3'
    services:
      elasticsearch:
        image: docker.elastic.co/elasticsearch/elasticsearch:6.6.1
        container_name: elasticsearch
        environment:
          - node.name=es01
          - cluster.name=docker-cluster
          - bootstrap.memory_lock=true
          - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
        ulimits:
          nproc: 65535
          memlock:
            soft: -1
            hard: -1
        cap_add:
          - ALL
        privileged: true
        ports:
          - 9200:9200
          - 9300:9300
        networks:
          - elastic
    
      kibana:
        image: docker.elastic.co/kibana/kibana-oss:6.6.1
        container_name: kibana
        environment:
          SERVER_NAME: localhost
          ELASTICSEARCH_URL: http://elasticsearch:9200
        depends_on:
          - elasticsearch 
        ports:
          - 5601:5601
        ulimits:
          nproc: 65535
          memlock:
            soft: -1
            hard: -1
        cap_add:
          - ALL
        networks:
          - elastic
    
    network:
      elastic:
        driver: bridge
    

    【讨论】:

    • 我编辑了问题,请检查 docker compose 文件,同一个 docker 可以在另一台 ubuntu pc 上运行良好,但在 centos 上不能运行,我想知道为什么。我尝试了所有可能的解决方案
    • elasticsearch 运行成功了吗?
    • 真的是连线,为什么你把你的容器命名为elasticsearch & kibana,但你的真正名字是kibana_540 & elasticsearch_540
    • 好像行得通,你可以通过docker ps知道,ealsticsearch状态是up 31 seconds
    • 一切正常,但kibana无法连接到ES,@Nagle Zhang dockercompose-file.yml 是为了再次尝试,我只是更改了名称,看看它是否可以工作
    猜你喜欢
    • 2019-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-28
    • 2019-09-02
    • 1970-01-01
    • 2019-08-23
    相关资源
    最近更新 更多