06 Container Insights 사용하기

shin·2023년 6월 14일
0

Kubernetes

목록 보기
9/12
post-thumbnail

Amazon EKS로 웹 애플리케이션 구축하기

Amazon CloudWatch Container Insight 란?

  • CloudWatch Container Insight : 컨테이너형 애플리케이션 및 마이크로 서비스에 대한 모니터링, 트러블 슈팅 및 알람을 위한 완전 관리형 관측 서비스

1) EKS CloudWatch Container Insights 사용하기

  • 매니페스트 파일을 관리하기 위해 폴더 생성
cd ~/environment
mkdir -p manifests/cloudwatch-insight && cd manifests/cloudwatch-insight

2) CloudWatch agent, Fluent Bit 설치

  • amazon-cloudwatch라는 네임스페이스를 생성
  • 일부 설정 값을 명명한 후, CloudWatch 에이전트 및 Fluent Bit를 설치
ClusterName=eks-demo
RegionName=$AWS_REGION
FluentBitHttpPort='2020'
FluentBitReadFromHead='Off'
[[ ${FluentBitReadFromHead} = 'On' ]] && FluentBitReadFromTail='Off'|| FluentBitReadFromTail='On'
[[ -z ${FluentBitHttpPort} ]] && FluentBitHttpServer='Off' || FluentBitHttpServer='On'
  • yaml 파일 다운로드
wget https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/latest/k8s-deployment-manifest-templates/deployment-mode/daemonset/container-insights-monitoring/quickstart/cwagent-fluent-bit-quickstart.yaml
  • 환경 변수 값을 해당 파일에 적용
sed -i 's/{{cluster_name}}/'${ClusterName}'/;s/{{region_name}}/'${RegionName}'/;s/{{http_server_toggle}}/"'${FluentBitHttpServer}'"/;s/{{http_server_port}}/"'${FluentBitHttpPort}'"/;s/{{read_from_head}}/"'${FluentBitReadFromHead}'"/;s/{{read_from_tail}}/"'${FluentBitReadFromTail}'"/' cwagent-fluent-bit-quickstart.yaml 
  • 해당 파일(cwagent-fluent-bit-quickstart.yaml)을 오픈한 후, fluent-bit의 DaemonSet 객체를 찾은 다음 아래의 값을 spec 밑에 추가
  • 파일을 디플로이
  • 정상 설치 여부 확인
    • 아래와 같이 cloudwatch-agent pod 및 fluent-bit pod가 각각 3개씩 나오면 됨

3) CloudWatch 콘솔창에서 살펴보기

  • Amazon CloudWatch 콘솔창에 접속하면 Container Insights에서 모든 리소스 리스트들을 볼 수 있음
  • Map View를 클릭하면 클러스터의 리소스가 트리 형태로 표시됨
    • 특정 오브젝트를 클릭하면 관련 메트릭 값도 확인 가능
  • 서비스 단위로 메트릭 값 확인 가능

profile
Backend development

0개의 댓글