Docker를 사용해 ELK 설치

스르륵·2022년 8월 18일
0

데이터파이프라인

목록 보기
8/10

1. Docker 설치

도커 설치 방법은 생략하겠다
WSL에서 docker desktop을 설치 해 사용했다.
리눅스를 사용한다면 docker engine을 직접 설치하면 된다.

2. Elasticsearch 설치

엘라스틱 서치 최신 버전인 8.3.3 이미지를 pull하여 컨테이너를 띄운다.
이때 single node로 실행하면 자동으로 보안관련 설정이 활성화 되는데, 컨테이너 실행 후 로그로 나오는 비밀번호, kibana 등록 토큰 등을 잘 저장해야 한다.

docker pull docker.elastic.co/elasticsearch/elasticsearch:8.3.3

docker network create elastic
docker run --name es01 --net elastic -p 9200:9200 -p 9300:9300 -it docker.elastic.co/elasticsearch/elasticsearch:8.3.3

컨테이너 실행 후 이러한 에러가 발생했는데, 가상메모리를 늘려주어야하는 것 같다.

sudo sysctl -w vm.max_map_count=262144
# 재부팅 후에도 적용하기 위해 설정 파일 수정 -> /etc/sysctl/conf
vm.max_map_count=262144

###
sudo sysctl -p   # 변경 사항 적용


가상메모리 수정 후 제대로 실행되었고 앞서 언급한 계정 비밀번호와 키바나 토큰이 콘솔에 떴다.

ca파일을 로컬로 복사하고 엘라스틱 서치와 연결 가능한지 확인한다.

docker cp es01:/usr/share/elasticsearch/config/certs/http_ca.crt .
curl --cacert http_ca.crt -u elastic https://localhost:9200

3. Kibana 설치

docker pull docker.elastic.co/kibana/kibana:8.3.3
docker run --name kib-01 --net elastic -p 5601:5601 docker.elastic.co/kibana/kibana:8.3.3

이후 localhost:5601에 접속하면 아까 따로 보관한 enrollment token을 넣으라는 창이 뜨고

bin/kibana-verification-code.bat을 실행하여 얻는 코드를 넣으라고 나온다.
우리는 docker container를 사용하므로

이렇게 얻은 코드를 입력하면 된다.

이렇게 세팅이 완료되고, 로그인창이 뜨는데, id는 elastic, 비밀번호는 아까 따로 보관한 비밀번호를 사용하면 된다.


완료!

4. Logstash 설치

docker pull logstash:8.3.3

logstash는 엘라스틱서치, 키바나와 다르게 다른 repo에서 다운받을 수 있다.

docker run --name logstash -v ~/elasticsearch:/data --net elastic -d logstash:8.3.3
docker exec -it logstash bash

컨테이터 실행 후 접속

profile
기록하는 블로그

0개의 댓글