ELK Docker Install

ELK Docker 安裝步驟


一、架構

Elastic stack架構圖如下

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

二、安裝步驟

透過Docker安裝,是很容易的,重點是所有的Container都要在同一個網路下面

此安裝步驟根據官方文件分享

  1. 新增docker-compose.yml

    ​​​​version: '2.2' ​​​​services: ​​​​ es01: ​​​​ image: docker.elastic.co/elasticsearch/elasticsearch:7.12.0 ​​​​ container_name: es01 ​​​​ environment: ​​​​ - node.name=es01 ​​​​ - cluster.name=es-docker-cluster ​​​​ - discovery.seed_hosts=es02,es03 ​​​​ - cluster.initial_master_nodes=es01,es02,es03 ​​​​ - bootstrap.memory_lock=true ​​​​ - "ES_JAVA_OPTS=-Xms512m -Xmx512m" ​​​​ ulimits: ​​​​ memlock: ​​​​ soft: -1 ​​​​ hard: -1 ​​​​ volumes: ​​​​ - data01:/usr/share/elasticsearch/data ​​​​ ports: ​​​​ - 9200:9200 ​​​​ networks: ​​​​ - elastic ​​​​es02: ​​​​ image: docker.elastic.co/elasticsearch/elasticsearch:7.12.0 ​​​​ container_name: es02 ​​​​ environment: ​​​​ - node.name=es02 ​​​​ - cluster.name=es-docker-cluster ​​​​ - discovery.seed_hosts=es01,es03 ​​​​ - cluster.initial_master_nodes=es01,es02,es03 ​​​​ - bootstrap.memory_lock=true ​​​​ - "ES_JAVA_OPTS=-Xms512m -Xmx512m" ​​​​ ulimits: ​​​​ memlock: ​​​​ soft: -1 ​​​​ hard: -1 ​​​​ volumes: ​​​​ - data02:/usr/share/elasticsearch/data ​​​​ networks: ​​​​ - elastic ​​​​ es03: ​​​​ image: docker.elastic.co/elasticsearch/elasticsearch:7.12.0 ​​​​ container_name: es03 ​​​​ environment: ​​​​ - node.name=es03 ​​​​ - cluster.name=es-docker-cluster ​​​​ - discovery.seed_hosts=es01,es02 ​​​​ - cluster.initial_master_nodes=es01,es02,es03 ​​​​ - bootstrap.memory_lock=true ​​​​ - "ES_JAVA_OPTS=-Xms512m -Xmx512m" ​​​​ ulimits: ​​​​ memlock: ​​​​ soft: -1 ​​​​ hard: -1 ​​​​ volumes: ​​​​ - data03:/usr/share/elasticsearch/data ​​​​ networks: ​​​​ - elastic ​​​​ kib01: ​​​​ image: docker.elastic.co/kibana/kibana:7.12.0 ​​​​ container_name: kib01 ​​​​ ports: ​​​​ - 5601:5601 ​​​​ environment: ​​​​ ELASTICSEARCH_URL: http://es01:9200 ​​​​ ELASTICSEARCH_HOSTS: '["http://es01:9200","http://es02:9200","http://es03:9200"]' ​​​​ networks: ​​​​ - elastic ​​​​volumes: ​​​​ data01: ​​​​ driver: local ​​​​ data02: ​​​​ driver: local ​​​​ data03: ​​​​ driver: local ​​​​networks: ​​​​ elastic: ​​​​ driver: bridge
  2. 確保Docker Engine 至少有4GB

  3. Run docker-compose 以執行 Elasticsearch 三個節點,與 Kibana
    docker-compose up

  4. 開啟 kibana: http://localhost:5601