모니터링 툴 설치
loki-stack이 유지보수가 안되어서 loki가 동작하지 않음. 그래서 다시 설치.
기존에 loki-stack으로 모니터링/로깅 스택을 구축했는데, 지금보니 loki가 동작을 안하더라.
loki-stack의 유지보수가 안되어서 포함된 loki 버전이 오래되어서 그렇다고 했다.
다른 라이브러리도 최신은 아닐 것 같아서 모두 삭제하고 다시 설치했다.
설치
loki-values.yaml
prometheus-values.yaml
promtail-values.yaml
grafana-values.yaml
위 명령어로 일괄 설치된다.
cloudflare r2 연결해서 로그파일 업로드 하도록 했다.
loki 설치하면서 겪은 이슈.
1. 로키 배포 모드
기본적으로 로키는 마이크로서비스 모드로 설치된다. read, write, backend 등등 로키의 컴포넌트 파드가 3개씩 설치된다.
문제는 내 쿠버네티스는 고정 워커노드가 2개고 필요하면 오토스케일링으로 노드가 추가로 붙는 방식인데, loki에서 3개의 노드를 고정적으로 요구하는지 트래픽도 없는데 노드 하나가 생성된다.
추가 설정으로 컴포넌트 파드들의 레플리카를 2개씩 생성할 수도 있는데, 그것도 과해 보여서 SingleBinary 모드로 설치했다.
이 설정은 read, write, backend 등등 로키의 컴포넌트 파드들을 합쳐서 하나의 단일 파드로 동작하도록 한다.
구조가 단순하고 초기 리소스가 적게 들어서 소규모 클러스터에서는 더 합리적인 선택일 수 있다.
물론 고가용성 측면에서는 불리하다.
2. 캐시파드 메모리 요구량
뭔 캐시 파드 하나가 10기가 가까이 램 용량을 요구한다.
필수적인 기능도 아니고, 있으면 성능이 좋아지긴 하겠지만 없어도 동작하는 파드다.
요구 램 1기가, 리밋 2기가로 제한을 뒀다.
헤츠너 인프라가 아무리 싸다지만 10기가 메모리를 할당할 수는 없다.
결론
이제 잘 동작한다.
생각보다 yaml 설정에서 ai가 큰 도움을 주지 못했다.
loki가 최신버전에서 변경사항이 조금 있었는지, 자꾸 예전 버전의 설정을 알려줘서 시간낭비를 조금 했다.
Last updated on