yon11b

[SK 쉴더스 루키즈] AWS 모니터링 본문

보안/SK 쉴더스 루키즈

[SK 쉴더스 루키즈] AWS 모니터링

yon11b 2026. 5. 13. 02:24
반응형

모니터링

장애에 대한 미연 방지 및 사고에 대한 신속 대응을 위한 서비스 상태 파악

 

CloudWatch

  • AWS 서비스들의 상태를 지표(metrics) 중심으로 모니터링하는 대표 도구
  • EC2, RDS, ELB, Lambda 가 보낸 지표로그를 모아서 보여 줌. (로그 저장도 가능)
  • 대표적으로 CPU 사용률, 네트워크 트래픽, 디스크 I/O 같은 것들을 그래프로 볼 수 있음
  • 알람 기능이 있다. => e.g. CPU 80% 초과 시 알람

*지표: 현재 상태를 숫자로 표현한 것

 

CloudWatch & Auto Scaling

CloudWatch가 상태를 보고 → Alarm이 발생하면 → Auto Scaling이 동작

지표를 보고 끝이 아니라 알람을 트리거로 다른 작업을 붙일 수 있음

 

리소스/커스텀 데이터 -> Metrics -> Alarm -> Action

 

 

CloudTrail

누가 뭐했는지에 대한 행동을 기록함.

CloudWatch가 상태를 보는 느낌이라면, CloudTrail은 행동 기록을 보는 느낌

  • 콘솔에서 바로 보는 Event history는 최근 90일
  • 더 오래 보관하려면 Trail을 만들어서 S3 같은 곳에 저장해야 함

 

CloudWatch vs CloudTrail

구분 CloudWatch CloudTrail
핵심 목적 상태/성능 모니터링 사용자 행위 추적(Audit)
기록 대상 메트릭, 로그, 알람 AWS API 호출
대표 데이터 CPU 사용률, 트래픽, 에러율 EC2 생성, S3 삭제
데이터 형태 숫자 + 로그 이벤트 기록

 

 

Config

AWS 리소스가 시간이 지나면서 구성과 관계가 어떻게 변하는지 확인할 수 있음

  • 리소스 구성 변경을 지속적으로 모니터링, 변경사항 관리
  • Rule 기반 점검
  • 규정 준수, 미준수 적용(ex. 보안정책 잘 준수하고 있나)

<예시>

회사 정책

"S3 버킷은 public이면 안 된다"

 

Config Rule 생성

AWS가 계속 검사:

S3 버킷 공개 여부 체크

 

{
  "resourceType": "AWS::S3::Bucket",
  "configuration": {
    "publicAccessBlock": false
  }
}

 

 

CloudFormation

소스 코드를 만들어 놓고 그 코드대로 빠르게 배포할 수 있도록 초기 인프라 생성

YAML, JSON 사용.

lambda와의 차이점

lambda는 이벤트가 일어나면 그 다음 자동으로 실행하는 거고 cloudformation은 처음에 aws 환경 구축할 때 돌리는 코드이다.

드리프트 감지

  • not checked → in sync →drifted

drifted 상태란?

실제 AWS 리소스 설정이 CloudFormation 템플릿 내용과 달라진 상태

{
  "Resources": {
    "MyEC2": {
      "Type": "AWS::EC2::Instance",
      "Properties": {
        "InstanceType": "t3.micro"
      }
    }
  }
}

 

 

AWS GuardDuty

로그를 보고, 수백억 이벤트를 ML 기반으로 분석

 

AWS Shield

DDoS 공격을 방어하기 위해 개발된 AWS 서비스

 

 

 

 

 

728x90