System Architecture Design
서비스 모니터링

서비스 모니터링

서비스 운영을 위한 모니터링 시스템 구축을 위한 시계열데이타베이스(TSDB) 아래의 Architecture와 같이 다양한 서비스 에코시스템을 통해서 운영시스템 구축 가능 Grafana 인프라

Prometheus

라이센스

Apache License 2.0

배포 Tools

kube-prometheus-stack : kubernetes cluster환경에 맞게 구성된 오픈소스 프로젝트입니다. Prometheus를 기반으로 다양한 컴포넌트들의 메트릭 데이타를 수집하고 모니터링 구축해주는 프레임워크

prometheus Rules

kube-prometheus-stack 구축을 통한 아래 수집된 Ruler입니다. 각항목에 설정에 따른 알림을 alertmanager에게 전달하는 역할을 합니다.

Tools목적기타
Grafana시계열 데이타 대시보드링크 (opens in a new tab)
Alertmanager알림등록(이메일, 팀즈등등) Prometheus 미들웨어
ThanosPrometheus 한계에 따른 추가다수의 Prometheus 조회, 외부 저장기능, 복구기능, 기타 기능
kubectl get prometheusrules --all-namespaces
NAMESPACE      NAME                                                              AGE
istio-system   prometheus-kube-prometheus-alertmanager.rules                     6d11h
istio-system   prometheus-kube-prometheus-config-reloaders                       6d11h
istio-system   prometheus-kube-prometheus-etcd                                   6d11h
istio-system   prometheus-kube-prometheus-general.rules                          6d11h
istio-system   prometheus-kube-prometheus-k8s.rules.container-cpu-usage-second   6d11h
istio-system   prometheus-kube-prometheus-k8s.rules.container-memory-cache       6d11h
istio-system   prometheus-kube-prometheus-k8s.rules.container-memory-rss         6d11h
istio-system   prometheus-kube-prometheus-k8s.rules.container-memory-swap        6d11h
istio-system   prometheus-kube-prometheus-k8s.rules.container-memory-working-s   6d11h
istio-system   prometheus-kube-prometheus-k8s.rules.container-resource           6d11h
istio-system   prometheus-kube-prometheus-k8s.rules.pod-owner                    6d11h
istio-system   prometheus-kube-prometheus-kube-apiserver-availability.rules      6d11h
istio-system   prometheus-kube-prometheus-kube-apiserver-burnrate.rules          6d11h
istio-system   prometheus-kube-prometheus-kube-apiserver-histogram.rules         6d11h
istio-system   prometheus-kube-prometheus-kube-apiserver-slos                    6d11h
istio-system   prometheus-kube-prometheus-kube-prometheus-general.rules          6d11h
istio-system   prometheus-kube-prometheus-kube-prometheus-node-recording.rules   6d11h
istio-system   prometheus-kube-prometheus-kube-scheduler.rules                   6d11h
istio-system   prometheus-kube-prometheus-kube-state-metrics                     6d11h
istio-system   prometheus-kube-prometheus-kubelet.rules                          6d11h
istio-system   prometheus-kube-prometheus-kubernetes-apps                        6d11h
istio-system   prometheus-kube-prometheus-kubernetes-resources                   6d11h
istio-system   prometheus-kube-prometheus-kubernetes-storage                     6d11h
istio-system   prometheus-kube-prometheus-kubernetes-system                      6d11h
istio-system   prometheus-kube-prometheus-kubernetes-system-apiserver            6d11h
istio-system   prometheus-kube-prometheus-kubernetes-system-controller-manager   6d11h
istio-system   prometheus-kube-prometheus-kubernetes-system-kube-proxy           6d11h
istio-system   prometheus-kube-prometheus-kubernetes-system-kubelet              6d11h
istio-system   prometheus-kube-prometheus-kubernetes-system-scheduler            6d11h
istio-system   prometheus-kube-prometheus-node-exporter                          6d11h
istio-system   prometheus-kube-prometheus-node-exporter.rules                    6d11h
istio-system   prometheus-kube-prometheus-node-network                           6d11h
istio-system   prometheus-kube-prometheus-node.rules                             6d11h
istio-system   prometheus-kube-prometheus-prometheus                             6d11h
istio-system   prometheus-kube-prometheus-prometheus-operator                    6d11h

위의 설정된 Prometheus Rule설정중 하나를 선택해서 내부를 확인해본다면

k describe prometheusrules prometheus-kube-prometheus-alertmanager.rules -n istio-system

Architecture Promethues

서비스 metric 데이타를 가지고 모니터링 [아래 이미지 참조] Eventhub 수집

참고

https://prometheus-operator.dev/ (opens in a new tab)