EC2 인스턴스는 물리 호스트에 문제가 생기면 running 상태로 표시되더라도 정상적으로 동작하지 않을 수 있다.
이런 상황에서 인스턴스를 자동으로 복구할 수 있도록 AWS는 CloudWatch 경보를 통한 Auto Recovery 기능을 제공한다.
🛠️ 자동 복구란?
EC2 인스턴스의 상태를 감시하다가 시스템 장애(예: 하드웨어 오류)로 인해 인스턴스가 응답하지 않으면, CloudWatch Alarm이 이를 감지해 자동으로 인스턴스를 정상적인 호스트에서 다시 시작한다.
☑️ 인스턴스를 "다시 시작"하는 것이지, 새로운 인스턴스를 생성하는 것이 아니다.
복구 중 유지되는 것 vs 사라지는 것
항목 | 복구 후 유지 여부 | 설명 |
인스턴스 ID | ✅ | 동일 ID로 복구 |
프라이빗 IP | ✅ | 내부 통신 문제 없음 |
탄력적 IP (EIP) | ✅ | 고정 IP 유지 |
퍼블릭 IPv4 주소 | ❌ | 동적 IP는 바뀔 수 있음 |
인스턴스 스토어 | ❌ | 호스트 변경 시 사라짐 |
메모리 데이터 (RAM) | ❌ | 휘발성 데이터는 유실됨 |
메모리 데이터는 왜 유실될까?
복구는 단순 재부팅이 아니라, 하드웨어 수준에서 인스턴스를 강제로 종료 후 다른 호스트에 재시작하는 과정이다. 따라서 인스턴스가 가지고 있던 RAM 상의 실행 중 데이터(세션, 캐시, 변수 등) 는 복구 중에 모두 삭제된다.
실무에서 Redis 등 인메모리 DB나 세션 서버를 EC2 내부에 올려 쓰고 있다면, 반드시 데이터 유실 가능성을 고려해야 한다.
🔔 CloudWatch로 자동 복구 설정하기 (요약)
- CloudWatch에서 새로운 Alarm 생성
- "StatusCheckFailed_System" 메트릭을 기준으로 조건 설정
- Alarm 트리거 시 "EC2 복구" 작업 수행하도록 설정
* 설정 방식은 매우 간단하지만, 적절한 알람 임계값 설정이 중요하다.
CloudWatch의 Auto Recovery는 복잡한 장애 조치 없이 EC2 인스턴스를 간단히 자동 복구할 수 있는 유용한 기능이지만, 복구 과정에서 유지되지 않는 항목들을 잘 파악하고, 인프라 설계에 반영해야 한다.
'AWS' 카테고리의 다른 글
Auto Scaling 최적화 - 안정성과 비용 효율을 동시에 잡는 법 (0) | 2025.05.15 |
---|---|
페이지 전체 로딩이 느려질 때 생각해야 할 원인과 대응 전략 (0) | 2025.05.14 |
로드밸런서(ALB/NLB)를 이해하기 위한 통신 흐름의 기초 (0) | 2025.05.12 |
EC2 인스턴스 인터넷 연결 구조 (0) | 2025.05.11 |
VPC 내 서브넷의 인터넷 연결 방식 (0) | 2025.05.10 |