📂
Amazon EKS
  • Amazon EKS
  • 워크스페이스 생성하기
    • Cloud9 IDE 환경 구성
    • IAM 역할 생성
    • SSH & CMK Key 생성하기
  • EKS 클러스터 구축
    • EKS 클러스터 만들기
  • 쿠버네티스 대시보드 배포
    • Kubernetes 공식 대시보드 배포
  • 마이크로서비스 배포
    • 예제 애플리케이션 배포
    • 서비스 스케일(Scaling)
    • 애플리케이션 정리하기
  • 애플리케이션 배포 - Helm
    • HELM 설치
    • Helm으로 Nginx 배포
    • Helm을 사용하여 마이크로서비스 배포
    • 정리하기
  • 리소스 관리 - POD 배치
    • NodeSelector
    • Affinity and Anti-affinity
    • 더 실용적인 사용 사례
    • 정리하기
  • 리소스 관리 - Health Checks
    • Liveness 프로브 구성
    • Readiness 프로브 구성
    • 정리하기
  • 리소스 관리 - AutoScaling
    • HPA 구성하기
    • CA 구성하기
    • 정리하기
  • 네트워킹 - 서비스 노출
    • 서비스와 애플리케이션 연결
    • 서비스에 접근하기
    • 서비스 노출
    • Ingress
    • Ingress Controller
    • 정리하기
  • 네트워크 - Calico 정책
    • Calico 설치하기
    • Stars Policy Demo
    • 정리하기
  • Updating 권한설정 - RBAC
    • 테스트 POD 설치
    • 사용자 생성 및 맵핑
    • 역할과 바인딩
    • 정리하기
  • Updating 권한설정 - IAM 그룹
    • IAM Role, Group & User 생성하기
    • RBAC 설정하기
    • EKS 엑세스 테스트
    • 정리하기
  • Updating 권한설정 - Service account
    • OIDC 자격 증명 공급자 생성하기
    • IAM 역할 생성 및 지정
    • 샘플 POD 배포
    • 정리하기
  • Updating - 네트워크 - POD Security Group
    • SG 생성하기
    • RDS 생성하기
    • CNI 구성하기
    • SG 정책
    • Pod 배포하기
    • 정리하기
  • Updating - 모니터링 - Prometheus and Grafana
    • Prometheus 배포하기
    • Grafana 배포하기
    • 정리하기(Optional)
  • Updating 모니터링 - X-Ray
    • X-Ray DaemonSet 배포하기
    • 샘플 마이크로서비스 배포
    • X-Ray console 확인
    • 정리하기(Optional)
  • Updating 모니터링 - Container Insights
    • 사전 준비
    • Container Insights 구성하기
    • 부하 테스트
    • Container Insights 확인하기
    • 정리하기(Optional)
  • Updating CD - Gitops with Flux
    • 사전 준비
    • Codepipeline
    • EKS에 배포
    • 정리하기
  • Updating Argo Rollouts
  • Updating Service Mesh - AWS App Mesh
    • Fargate 및 OBSERVABILITY 구성
    • Product Catalog App 배포
    • APP MESH 설치
    • Porting to APP MESH
    • Virtual Gateway 구성
    • Canary
    • Observability
  • Updating 버전 업그레이드 - EKS Cluster
    • Upgrade EKS control Plane
    • Upgrade EKS CORE ADD-ONs
    • Upgrade Managed Node Group
Powered by GitBook
On this page
  • 1. 사전 준비
  • 2. Prometheus 배포하기

Was this helpful?

  1. Updating - 모니터링 - Prometheus and Grafana

Prometheus 배포하기

PreviousUpdating - 모니터링 - Prometheus and GrafanaNextGrafana 배포하기

Last updated 3 years ago

Was this helpful?

1. 사전 준비

Prometheus 와 Grafana를 Helm을 사용하여 설치합니다. Helm이 설치 되어 있지 않다면 로 이동하여 Helm 설치를 진행합니다.

Helm 설치가 완료되었다면, 아래 명령어를 수행하여 Prometheus와 Grafana를 설치합니다.

# add prometheus Helm repo
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts

# add grafana Helm repo
helm repo add grafana https://grafana.github.io/helm-charts

2. Prometheus 배포하기

의 코어 구성 요소는 제어 영역(Control Plane)에서 처리되는 일들의 확인에 사용될 수 있는 다양한 통계 지표 세트를 제공합니다. 지표를 통해 API 서버의 각 리소스에 있는 의 수, 의 수, API 서버로의 요청 지연 시간 등의 다양한 정보를 확인할 수 있습니다. 이러한 지표는 Kubernetes API 서버, Kubelet, 클라우드 컨트롤러 관리자 및 스케줄러를 통해 제공됩니다.

지표를 시각화, 모니터링 및 알림 설정하기 전에, 이러한 지표 엔드포인트가 어떻게 출력 되는지 볼 수 있습니다.

kubectl get --raw /metrics

이 예에서는 기본적으로 표준 구성을 사용하지만 스토리지 클래스를 정의해야 합니다. 단순성과 검증 목적으로 을 사용하겠습니다. 실제 운영환경에서는 gp3 또는 필요한 경우 io2 volume을 사용하고 매니페스트의 기본 스토리지 크기를 늘려 성능을 향상시킬 수 있습니다. 다음 명령을 실행합니다.

kubectl create namespace prometheus

helm install prometheus prometheus-community/prometheus \
    --namespace prometheus \
    --set alertmanager.persistentVolume.storageClass="gp2" \
    --set server.persistentVolume.storageClass="gp2" \
    --set server.service.type=LoadBalancer

아래와 같은 결과에서 Prometheus endpoint를 기록해 둡니다.

Prometheus 구성요소가 정상적으로 배포 되었는지 아래 명령어로 확인합니다.

kubectl get all -n prometheus

Prometheus 서버 URL에 액세스하기 위해 로드 밸런서의 주소를 확인합니다.

kubectl get svc --namespace prometheus prometheus-server

브라우저창에 EXTERNAL-IP의 DNS을 복사하고 URL 마지막에 /targets 를 추가합니다.

[Graph]로 이동하여 검색 창에 apiserver_로 시작하는 지표 중 하나를 선택하고 [Execute ]를 클릭합니다. 이렇게 하면 API 서버에서 마지막으로 동기화된 데이터가 로드 됩니다.

Prometheus를 사용하면 Kubernetes API 서버 내에 어떤 일이 진행되는지 볼 수 있으며 시간의 흐름에 따른 이러한 지표의 변화를 그래프로 표시할 수 있습니다.

Prometheus 배에 대한 자세한 내용은 아래 링크를 참고하세요.

여기
Kubernetes
감시 프로그램
감사 추적 이벤트
gp2 EBS volumes
https://aws.amazon.com/ko/blogs/korea/amazon-eks-control-plane-metrics-prometheus/