Elasticsearch + Kibana를 docker-compose로 빨리 이동

수중의 로그 파일을 사쿠로 해석하고 싶고 docker-compose 를 사용해 로컬로 기동해 보았습니다.


(Machine Learning의 최상위 화면. 여기에서 로그 파일을 가져오고 Visualize에서 시각화했습니다.)

환경



MacOS Mojave 10.14.4
Docker 18.09.2

절차


  • docker-compose.yaml 만들기
  • docker-compose up
  • 브라우저로 액세스!

  • docker-compose.yaml



    docker-compose.yaml
    version: "3"
    
    services:
      elasticsearch:
        image: docker.elastic.co/elasticsearch/elasticsearch:7.2.0
        environment:
          - discovery.type=single-node
          - cluster.name=docker-cluster
          - bootstrap.memory_lock=true
          - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
        ulimits:
          memlock:
            soft: -1
            hard: -1
        ports:
          - 9200:9200
        volumes:
          - es-data:/usr/share/elasticsearch/data
      kibana:
        image: docker.elastic.co/kibana/kibana:7.2.0
        ports:
          - 5601:5601
    
    volumes:
      es-data:
    

    호스트에 데이터를 저장하려면 services.elasticsearch.volumes를 다음과 같이 수정하고 volumes를 삭제합니다.
    # 省略
        volumes:
          - ./es-data:/usr/share/elasticsearch/data
    # 以下は削除
    #volumes:
    #  es-data:
    

    시작


    docker-compose up
    

    브라우저로 액세스!





    조금 해설


  • discovery.type=single-node
  • 로컬로 검증하는 것만이므로 Development mode 로 하는 것으로 간이한 설정으로 했습니다.
    프로덕션 모드와 비교하여 클러스터 구축과 같은 복잡한 설정을 하지 않아도 됩니다.

  • bootstrap.memory_lock=true
  • 스왑을 사용하지 않는 설정.

  • "ES_JAVA_OPTS=-Xms512m -Xmx512m"
  • 메모리 고정.


  • 참고


  • Kibana User Guide [7.2] » Set Up Kibana » Running Kibana on Docker
  • Elasticsearch Reference [7.2] » Set up Elasticsearch » Installing Elasticsearch » Install Elasticsearch with Docker
  • 좋은 웹페이지 즐겨찾기