AWS

EC2 스왑 공간 모니터링: CloudWatch Agent와 기본 지표의 차이

heesoohi 2025. 5. 26. 01:44

스왑(Swap) 공간이란?

Amazon EC2 인스턴스를 운영하다 보면, 메모리 부족 상황에서 발생하는 스왑 공간(Swap Space) 문제를 마주할 수 있다. 스왑 공간은 RAM(메인 메모리)이 부족할 때 디스크의 일부를 임시 메모리처럼 사용하는 공간이다.

  • RAM은 빠르고 비싼 자원으로, 운영체제와 애플리케이션들이 주로 사용하는 공간이다.
  • 하지만 실행 중인 작업이 많아 RAM이 부족해지면, OS는 디스크의 일부를 사용하여 부족한 메모리를 보완하려 한다.
  • 이 디스크 기반 임시 메모리 공간이 바로 스왑 공간이다.

✅ 스왑은 성능 저하를 일으킬 수 있는 비상용 자원으로, 자주 사용될 경우 시스템 이상 징후로 간주해야 한다.

 

CloudWatch에서 스왑 공간을 모니터링하려면?

스왑 사용량은 기본 CloudWatch 지표(Basic Monitoring) 에 포함되지 않는다.

 

➤ 기본 지표에서는 제공되지 않는 항목:

  • Memory 사용량
  • Swap 사용량
  • Disk 사용률 등..

이런 지표들을 모니터링하려면 CloudWatch Agent를 인스턴스에 설치하고 구성해야 한다. 설치 후 설정 파일을 작성하거나, SSM 또는 마법사를 통해 설정하고 실행하거나 설정 파일을 직접 내려받아 적용할 수 있다.

 

⚠️ 세부 모니터링만 활성화하면 스왑 공간은 절대 수집되지 않으니, 스왑 공간 모니터링을 위해서는 CloudWatch Agent가 반드시 필요하다.  또한 대시보드에 대해서도 알아두면 좋은데, CloudWatch Agent를 통해 수집한 Swap 지표(SwapUsed, SwapUtilization)를 CloudWatch Dashboard에 시각화하여 운영 모니터링에 활용할 수 있다. 하지만 대시보드는 지표 수집 기능이 아니라 시각화 도구이기 때문에, 에이전트 없이 단독으로는 의미가 없다.

 

세부 모니터링 (Detailed Monitoring) CloudWatch 기본 지표의 수집 주기를 5분 → 1분으로 줄여줌
CloudWatch Agent 메모리, 스왑, 디스크 I/O 등 추가 지표를 수집하기 위해 인스턴스 내에 설치하는 별도 에이전트