IT,프로그래밍/Devops

[K8S, Grafana, Loki] 쿠버네티스 log monitoring tool Loki 설치법

 

이전글에서 kong Ingress controller plugin으로 Prometheus를 설치했고,

이후에 Grafana와 연동해서 대시보드에서 Metrics를 확인할수 있게 되었다.

 

이전글 보러가기
그라파나 대시보드에 domain으로 접속하는법
burning-camp.tistory.com/71?category=959180

 

하지만 Prometheus는 CPU, Memory와 같은 Metrics수집이기에 각 pod에서 찍히는 log들을 볼수는 없다.

그렇기에 Log monitoring을 위하여 Loki를 선택하였다.

 

마지막까지 2가지 스택중에 고민을 하였는데 ELK vs Grafana + loki + promtail 스택이었습니다.

 

이중에서 loki를 선택을한 이유는 다음과 같습니다

 

  1. ElasticSearch, Kabana가 원했던 단순 log수집 + 검색용으로 쓰기에는 너무 기능이 많다 생각했습니다
  2. Grafana와 Prometheus를 이미 쓰기로 마음먹었기에 같은 스택으로 따라가고 싶었습니다.
  3. Loki의 설치 및 사용이 ELK보다 쉽다고 느껴져서였습니다

위와 같은 이유로 loki를 선택하였고 이제 loki 설치를 해보겠습니다.

log aggregation system inspired by Prometheus.

  1.  
  2. Grafana, Prometheus가 설치되어 있는 namespace에 loki를 설치해준다
helm upgrade --install loki --namespace=monitoring grafana/loki
  1. log수집을 위해서 promtail을 설치해주며, loki serviceName을 먼저 배포된 loki의 serviceName을 set해주자.
helm upgrade --install promtail loki/promtail --set "loki.serviceName=loki" --namespace monitoring
  1. Grafana에서 Data source를 선택후 loki를 추가해준다.

  1. loki는 http://loki:3100 으로 연결해 주면된다.

이때. URL의 loki는 처음에 loki를 설치했을정한 service name이다.

  1. 이제부터는 대시보드에 추가할수 있게된다.

테스트를 해보면 loki의 log가 grafana에서 수집이 되어서 편하게 확인 할수 있게 되었습니다.

 

 

refer : Loki Setup for Kubernetes cluster