-
docker-compose로 ELK 8 버전 사용해보기 2부(https)ELK 2023. 5. 9. 16:17
1부에 이어서 계속한다.
tls 를 적용하기위해 tls 브랜치를 git clone 해주자.
https://github.com/deviantony/docker-elk/tree/tls
git clone --branch tls https://github.com/deviantony/docker-elk.git 만들고싶은폴더명
.env 파일을 1부때 처럼 바꿔주고, docker-compose.yml에서 kibana와 logstash도 추가해주자.
README.md 를 읽어보면 아래 명령어를 쓰면 된다고 한다.
docker-compose up tls docker-compose up setup docker-compose up -d
docker-compose up tls 를 하면 tls 아래에 certs 아래에 인증서들이 생긴다.
tls디렉터리에서 entrypoint.sh를 분석하겠다.
elasticsearch-certutil ca 명령어를 통해 ca인증서를 하나 만들어준다.
elasticsearch-certutil에 대해 알고싶다면, elasticsearch를 다운받고 bin 폴더에 가면 있다.
이부분은 정합성검사하는 부분이다.
find 명령어를 통해 ca.crt와 ca.key를 찾고, 이를 while 명려어의 입력으로 넣어준다.
그리고 출력한다.
이런식으로 방금 만든 ca.crt와 ca.key를 출력해준다.
방금 만든 ca 인증서를 가지고 elasticsearch 인증서를 만들어준다.
instances.yml 을 보면, elasticsearch, kibana, fleet-server, apm-server 이렇게 4개가 있어서, 4개 각각에 해당하는 crt와 key파일들이 각각 생성된다.
이렇게 하고,
kibana.yml에서 ssl을 켜주면 된다.
docker-compose setup docker-compose up -d
이렇게 실행해주면, https://localhost:5601 로 접속 가능하고, https://localhost:9200 으로 접속 가능하다.
문제는 주의요함 이라고 https에 줄그어져있다.
브라우저에는 믿을수 있는 ca기관의 인증서들을 자체적으로 가지고 있는데, 우리는 스크립트를 통해 새롭게 하나 만들었으므로, 브라우저에서는 우리가 만든 ca 인증서를 당연히 모를수 밖에 없다.
그래서 브라우저에 우리가 만든 ca인증서를 등록해보자.
이렇게 추가를 해준다. 뭐 나오면 "예" 를 눌러주자.
그리고 크롬 창을 전부 끄고 다시 실행해주자.
잘 작동한다.
다음에는 fleet-server과 apm-server에 대해 알아보겠다.
'ELK' 카테고리의 다른 글
docker-compose로 ELK 8 버전 사용해보기 1부 (6) 2023.05.03