ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Docker를 활용하여 Kibana 설치하기
    ElasticSearch 2024. 9. 19. 14:53
    반응형

    Docker로 Kibana 설치하기: 상세 가이드

    Kibana는 Elasticsearch 데이터를 시각화하고 대시보드를 통해 쉽게 접근할 수 있는 도구입니다. Elasticsearch와 연동하여 실시간 데이터 분석 및 모니터링을 지원하므로, Docker를 사용하여 Kibana를 설치하는 것은 매우 효율적인 방법입니다.

    1. Kibana Docker 이미지 다운로드

    먼저 Kibana의 Docker 이미지를 다운로드합니다. Kibana는 Elasticsearch와 버전이 맞아야 하므로, Kibana 7.17.24 버전을 Elasticsearch 7.17.24와 함께 사용해야 합니다.

    1.1 Kibana Docker 이미지 다운로드

    아래 명령어를 실행하여 Kibana 7.17.24 Docker 이미지를 다운로드합니다.

    bash
    코드 복사
    docker pull docker.elastic.co/kibana/kibana:7.17.24

    이 명령어는 Kibana 7.17.24 버전의 Docker 이미지를 다운로드합니다. 다운로드는 네트워크 속도에 따라 시간이 걸릴 수 있습니다.

     

     


    2. Docker로 Kibana 실행

    Kibana는 Elasticsearch와 연동되므로, 실행할 때 Elasticsearch URL을 지정해줘야 합니다. Elasticsearch는 기본적으로 localhost:9200에서 실행되므로, Kibana가 이 주소를 사용하도록 설정해야 합니다.

     

    2.1 단일 노드 Kibana 실행

    아래 명령어로 Kibana 7.17.24 버전을 실행합니다. 이 명령어는 Kibana를 백그라운드에서 실행하며, Elasticsearch와 연동합니다.

    docker run -d --name kibana -p 5601:5601 -e "ELASTICSEARCH_HOSTS=http://localhost:9200" docker.elastic.co/kibana/kibana:7.17.24
    • -d: 컨테이너를 백그라운드에서 실행.
    • --name kibana: 컨테이너 이름을 kibana로 지정.
    • -p 5601:5601: 호스트의 5601 포트와 컨테이너의 5601 포트를 매핑. Kibana는 기본적으로 포트 5601에서 실행됨.
    • -e "ELASTICSEARCH_HOSTS=http://localhost:9200": Kibana가 연결할 Elasticsearch 서버의 주소를 설정. localhost:9200은 Docker 내에서 Elasticsearch가 실행되고 있는 주소입니다.
    • docker.elastic.co/kibana/kibana:7.17.24: Kibana 7.17.24 Docker 이미지.

    2.2 실행 확인

    Kibana가 정상적으로 실행되면, 웹 브라우저에서 http://localhost:5601에 접속하여 Kibana 대시보드에 접근할 수 있습니다. Kibana가 정상적으로 실행 중이라면 Kibana 대시보드 화면이 표시됩니다.

     

    2.3 실행 중인 컨테이너 확인

    아래 명령어로 실행 중인 Kibana 컨테이너를 확인할 수 있습니다.

    docker ps

    Kibana가 정상적으로 실행 중이라면, 다음과 같은 출력이 나타납니다.

    CONTAINER ID   IMAGE                               COMMAND                  CREATED         STATUS         PORTS                              NAMES
    a1b2c3d4e5f6   docker.elastic.co/kibana/kibana:7.17.24   "/bin/tini -- /usr/…"   10 seconds ago   Up 9 seconds   0.0.0.0:5601->5601/tcp               kibana

    3. Elasticsearch와 Kibana 연동 확인

    Kibana는 Elasticsearch와 통신하여 데이터를 시각화합니다. Kibana와 Elasticsearch의 연결 상태를 확인하기 위해서는 Kibana의 설정 파일이나 환경 변수를 통해 Elasticsearch URL이 정확히 설정되었는지 확인해야 합니다.

    3.1 Kibana와 Elasticsearch 통신 확인

    브라우저에서 http://localhost:5601에 접속한 후, Kibana가 정상적으로 Elasticsearch와 연결되어 있는지 확인할 수 있습니다.

    • Kibana 대시보드에서 왼쪽 메뉴에 있는 Management > Stack Monitoring으로 이동하여 Elasticsearch와 Kibana 상태를 모니터링할 수 있습니다.
    • 만약 Kibana가 Elasticsearch와 제대로 연결되지 않았거나 오류가 발생한 경우, Kibana 로그를 확인할 수 있습니다. 로그를 확인하려면 아래 명령어를 사용합니다.
    docker logs kibana

    이 명령어는 Kibana 컨테이너의 로그를 출력합니다. 로그에서 오류 메시지나 연결 문제를 확인할 수 있습니다.


    4. Kibana 설정 및 커스터마이징

    Kibana는 Docker를 통해 환경 변수를 설정하거나 kibana.yml 파일을 수정하여 다양한 설정을 변경할 수 있습니다. 아래는 자주 사용하는 설정입니다.

    4.1 Kibana 환경 변수 설정

    Kibana 실행 시 다양한 환경 변수를 설정할 수 있습니다. 예를 들어, Elasticsearch에 연결할 때 보안 설정이나 다른 옵션을 추가할 수 있습니다.

    4.1.1 Elasticsearch 인증 정보 추가

    Elasticsearch에 인증이 필요한 경우, Kibana가 Elasticsearch에 접근할 수 있도록 사용자 이름과 비밀번호를 추가해야 합니다.

    docker run -d --name kibana -p 5601:5601 -e "ELASTICSEARCH_HOSTS=http://localhost:9200" -e "ELASTICSEARCH_USERNAME=kibana_user" -e "ELASTICSEARCH_PASSWORD=my_password" docker.elastic.co/kibana/kibana:7.17.24
    • ELASTICSEARCH_USERNAME: Elasticsearch에 연결할 Kibana 사용자 이름.
    • ELASTICSEARCH_PASSWORD: 해당 사용자의 비밀번호.

    4.2 메모리 설정

    Kibana의 메모리 할당을 조정할 수 있습니다. 아래는 Kibana 실행 시 힙 메모리를 조정하는 예시입니다.

    docker run -d --name kibana -p 5601:5601 -e "ELASTICSEARCH_HOSTS=http://localhost:9200" -e "NODE_OPTIONS=--max-old-space-size=512" docker.elastic.co/kibana/kibana:7.17.24

    NODE_OPTIONS=--max-old-space-size=512: Kibana가 사용할 힙 메모리를 512MB로 설정.

     


    5. Kibana 컨테이너 관리

    Docker로 실행한 Kibana 컨테이너를 중지하거나 다시 시작, 삭제하는 방법을 설명합니다.

    5.1 컨테이너 중지

    아래 명령어로 Kibana 컨테이너를 중지할 수 있습니다.

    docker stop kibana

    5.2 컨테이너 재시작

    중지된 Kibana 컨테이너를 다시 시작하려면, 아래 명령어를 사용합니다.

    docker start kibana

    5.3 컨테이너 삭제

    Kibana 컨테이너를 삭제하려면, 먼저 중지한 후 아래 명령어를 사용하여 삭제할 수 있습니다.

    docker rm kibana

    6. Kibana와 Elasticsearch 함께 실행

    만약 Elasticsearch와 Kibana를 동시에 Docker로 실행하고 싶다면, docker-compose를 사용하여 두 컨테이너를 관리할 수 있습니다.

    6.1 docker-compose 예시 파일

    docker-compose.yml 파일을 사용하여 Elasticsearch와 Kibana를 동시에 실행할 수 있습니다.

    version: '3'
    services:
      elasticsearch:
        image: docker.elastic.co/elasticsearch/elasticsearch:7.17.24
        environment:
          - discovery.type=single-node
        ports:
          - "9200:9200"
          - "9300:9300"
        volumes:
          - esdata:/usr/share/elasticsearch/data
    
      kibana:
        image: docker.elastic.co/kibana/kibana:7.17.24
        ports:
          - "5601:5601"
        environment:
          - ELASTICSEARCH_HOSTS=http://elasticsearch:9200
    
    volumes:
      esdata:
        driver: local

     

    • 이 파일을 docker-compose.yml로 저장합니다.
    • docker-compose 명령어를 사용해 Elasticsearch와 Kibana를 동시에 실행합니다.
    docker-compose up -d

     

    이 명령어는 Elasticsearch와 Kibana를 동시에 실행하고, 각각의 컨테이너가 상호 연동되도록 설정합니다.

    반응형

    댓글

Designed by Tistory.