AWS - Prometheus

Anthony Rhim·2022년 9월 21일
0

Seminars

목록 보기
3/7

새로지은 역삼의 센터필드 AWS 건물에서 Prometheus에 대한 세미나에 참석할 수 있었다.

Monitoring

  • 서비스 관점: 지연시간, 트래픽, 에러, 포화도
  • 시스템 관점: 네트워킹 에러, 사용율, 포화도

1. Prometheus

Prometheus

  • Built at SoundCloud 2012
  • Time-series based
  • CNCF 2nd graduated
  • Service discovery

Features

  • Multi-dimensional data
  • PromQL
  • Pull over HTTP
  • Push gateway sometimes

Exporter

  • 서비스나 어플리케이션에서 데이터를 수집
  • Go, Java, Python, Ruby

AlertManager

  • 무엇보다 무료라서 장점이다

Visualization

  • API를 PromQL쿼리 통해 데이터 제공
  • WEB-GUI 2종류의 내부 시각화 컴포넌트 제공, PromQL 쿼리를 이용한 시각화
  • Grafana 다양한 데이터소스로 시각화 가능, alert 무료, Grafanalab을 통한 다양한 dashboard 템플릿, 키바나보다 이쁜 느낌

2. EKS

Kubernetes Components

  • EKS를 한 이유는 API서버를 제공하고 있다.

Control Plane Componenets

  • 노드들이 각각 되어 있기 때문에 하나 다운되면 힘들고, 버전업이 되면서 Kubernetes 갖추고 있는 컴포넌트의 버전과 충돌이 된다.

EKS

  • Control Plane 역할에 한해서 대신 해 줌.
  • kubernetes는 혼자서 할 수 있는 게 별로 없다.
  • 이걸 최상의 상태로 유지해줍니다, 무중단 보장.

3. Helm

Command는 소문자로 하고, document는 대문자로 하기.

Package manager

  • 우리에게는 dependency 벽이 있어서 package manager로 하는 게 따로 혼자 하는 것보다 낫다.

Helm

  • CNCF graduated
  • Rollback (빠른 롤백 가능), manage complexity, easy updates, simple sharing
  • Yaml 형식의 chart를 이용: Chart.yaml, charts/, Templates, Values.yaml

4. Prometheus Operator

Operator

  • Kubernetes에서 Prometheus의 관리 제공, 간편한 스택 구성과 자동화 제공.
  • 주요기능: 기본적으로 kubernetes에서 설치할 때 제공되는 관리수준 느낌이지만, 딥다이브하면 생각보다 복잡함.

Vs.

  • Prometheus Operator: 공식설치 방식
  • kube-prometheus: 클러스터링을 목적으로 하는 설치, HA 지원, Prometheus Operator 포함함
  • community helm chart: Kube-prometheus를 package manager를 사용하여 설치

Operator

5. 데모

윈도우 choco로 helm 설치 후 helm version을 통해 설치 완료를 확인함.

  • helm search repo
  • kubectl create ns monitoring
  • helm install kps-monitor prometheus-community/kub-prometheus-stack
  • kubectl get pods -n monitoring
  • kubectl get service -n monitoring
  • helm search repo
  • helm fetch prometheus-communitu/kube-prometheus(...)
  • 이후 yaml파일의 포트 설정 (3000줄 가량 되는데, 이것도 줄인 것이다)
  • kubectl get svc -n monitoring
profile
For engineering purposes.

0개의 댓글