Docker에서 엘라스틱서치(Elasticsearch)와 키바나(Kibana) 사용하기
도커(Docker) 환경에서 엘라스틱서치(Elasticsearch)와 키바나(Kibana)를 설치 후 사용하겠습니다.
Docker 설치가 필요합니다.
- 엘라스틱서치와 키바나 컨테이너가 사용할 Docker 네트워크를 하나 만듭니다. sudo docker network create <본인이 사용할 네트워크 이름> 그리고 잘 만들어졌는지 확인합니다. sudo docker network ls
- sudo docker run --name elasticsearch --net docker-net -p 9200:9200 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.6.2 를 실행하면 로컬에 이미지가 없으므로 Docker Hub에서 pull하고 실행하게 됩니다. -p 옵션은 포트 퍼블리쉬, -e 옵션은 환경변수 설정입니다.
* 테스트 용도로 간편하게 사용하기 위해 싱글 노드 디스커버리를 사용합니다. 9200 포트를 맵핑합니다. 9200은 REST API를 사용할 때 필요하고 9300은 노드 통신을 위해 필요합니다. 만약싱글 노드에서 discovery.type 없이 실행하면 아래와 같은 에러가 뜨면서 실행이 중지됩니다.
- 새 창에서 curl localhost:9200 로 엘라스틱서치가 잘 동작하는지 확인합니다. 그리고 엘라스틱서치 Docker 이미지와 컨테이너도 확인합니다.
- 키바나 이미지를 pull 합니다. sudo docker pull docker.elastic.co/kibana/kibana:7.6.2
- 키바나 이미지를 run 합니다. IMAGE ID를 카피해서 실행하겠습니다. sudo docker run --name kibana --net docker-net -p 5601:5601 f70986bc5191
(일부러 여러가지 방법들로 시도하고 있습니다.)
- 동작 중인 엘라스틱과 키바나 컨테이너를 확인합니다.
- 웹브라우저를 열고 키바나에 접속을 합니다. (리눅스 서버 주소 + 키바나 포트)
* 만약 접속이 안되시면 방화벽에서 포트를 열여주셔야 합니다. 잘 기억 안나시면 복습은 여기서 : 리눅스에 엘라스틱서치 & 키바나 설치하기 (click) 그리고 이 링크에서 키바나에 샘플 추가하고 대시보드 둘러보는 방법을 참고해 주세요.
** 위 방법은 테스트 용도로 사용하세요. 프로덕션 환경에서는 추가적인 설정이 필요하고 Docker Compose 를 사용하시는 방법이 좋을 것 같습니다.
Comments
Post a Comment