에러 발생 환경
Windows 10 HOME
Docker Toolbox
docker-compose up -d 명령으로 docker-elk 실행
그리고
docker-compose down 명령으로 실행을 중지하고 컨테이너까지 삭제
그리고 모두 재실행하였다.
그런데
http://192.168.99.100:5601/로 kibana에 접속하려 했는데 문제가 일어났다.
=> Kibana server is not ready yet
에러 로그
$ docker logs <kibana CONTAINER ID>
...
{"type":"log","@timestamp":"2020-06-15T04:50:29Z","tags":["warning","savedobjects-service"],"pid":6,"message":"Unable to connect to Elasticsearch. Error: [resource_already_exists_exception] index [.kibana_1/BYPspC66RiKE4ncEfALX3Q] already exists, with { index_uuid=\"BYPspC66RiKE4ncEfALX3Q\" & index=\".kibana_1\" }"}
{"type":"log","@timestamp":"2020-06-15T04:50:29Z","tags":["warning","savedobjects-service"],"pid":6,"message":"Another Kibana instance appears to be migrating the index. Waiting for that migration to complete. If no other Kibana instance is attempting migrations, you can get past this message by deleting index .kibana_1 and restarting Kibana."}
{"type":"log","@timestamp":"2020-06-15T04:50:30Z","tags":["info","savedobjects-service"],"pid":6,"message":"Finished in 28900ms."}
에러 분석
즉, .kibana_1 이라는 이름으로 kibana instance가 이미 존재해서 생기는 문제인 것을 알 수 있다.
그래서 indices를 확인해보았다.
$ curl -XGET http://192.168.99.100:9200/_cat/indices
.kibana_task_manager_1과 .kibana_1이 존재하는 것을 알 수 있었다.
해결 방법
위의 로그에서 해결방안도 알려주고 있다. 삭제하고 재시작하면 된다.
$ curl -XDELETE http://192.168.99.100:9200/.kibana_1
$ curl -XDELETE http://192.168.99.100:9200/.kibana_task_manager_1
$ docker restart <kibana CONTAINER ID>
완전히 구동된 후 재접속하면 잘 실행되는 것을 볼 수 있다!
끝!
'etc' 카테고리의 다른 글
[DevSecOps 파이프라인] Jenkins 설치 (GCP instance 위에) (3) | 2020.12.08 |
---|---|
[Error solved] Not allowed to load local resource: kakao map api (0) | 2020.08.16 |
[Elasticsearch] Docker로 Elasticsearch 사용하기 / Python Elasticsearch Client로 테스트해보기 (0) | 2020.06.11 |
[HTTP] HTTP Server 빌드하기 / 파이썬 사용 (0) | 2020.05.06 |
[Docker] 도커 간단 실습하기 2. 도커 이미지 생성하기 / ubuntu 14.04 기반 nginx 서버 도커 이미지 (0) | 2020.05.04 |