티스토리 뷰
목차
"회사 서비스가 갑자기 다운됐는데 AWS 장애래요!" 이런 상황, 개발자라면 한 번쯤 겪어봤을 겁니다.
사실 AWS 장애 대응은 미리 준비만 해두면 생각보다 어렵지 않아요.
오늘은 AWS 장애의 모든 것, 실시간 확인 방법부터 예방책까지 쉽게 알려드릴게요.
AWS 장애란 정확히 뭘까요?
AWS(Amazon Web Services) 장애는 아마존이 제공하는 클라우드 서비스에 문제가 생긴 상황을 말해요.
쉽게 말해, 우리가 빌린 서버나 저장 공간이 일시적으로 작동하지 않는 거죠. 마치 임대한 사무실의 전기가 나간 것과 비슷해요.
주요 장애 유형은 다음과 같아요.
• 리전 장애: 특정 지역 전체의 AWS 서비스 중단
• 가용영역(AZ) 장애: 한 리전 내 일부 데이터센터 문제
• 서비스별 장애: EC2, S3 등 특정 서비스만 영향
• 네트워크 장애: 연결 및 통신 문제
• 성능 저하: 서비스가 완전히 멈추지는 않지만 응답 속도가 현저히 느려지는 상황
매년 크고 작은 장애가 발생하고 있어요. 완벽한 시스템은 없다는 걸 기억하세요!
실시간 장애 확인은 어디서?
AWS 장애 여부를 확인하는 가장 빠른 방법이 있어요.
AWS Service Health Dashboard가 바로 그 주인공이에요. 이 페이지에서 전 세계 AWS 상태를 실시간으로 볼 수 있죠.
🔍 확인 방법
• AWS 공식 상태 페이지 접속: https://status.aws.amazon.com
• 사용 중인 리전(서울: ap-northeast-2) 확인
• 이용 중인 서비스(EC2, RDS 등) 상태 체크
• 과거 장애 이력도 함께 확인 가능
Personal Health Dashboard는 더 편리해요. 내 계정에 직접 영향을 주는 문제만 골라서 보여줘요.
💡 고급 팁: AWS Health API
대규모 서비스를 운영한다면 AWS Health API를 활용하세요. 장애 정보를 자동으로 모니터링 시스템에 연동할 수 있어요.
슬랙이나 팀즈로 실시간 알림을 받을 수도 있답니다!
모바일에서도 AWS Console 앱으로 바로 확인할 수 있으니, 출근길에도 체크 가능해요!
장애 발생 시 첫 대응법
"지금 당장 서비스가 안 돼요!" 이럴 때 패닉하지 마세요.
Step 1: 장애 범위 파악하기 (5분 소요)
AWS 상태 페이지에서 공식 장애인지 먼저 확인하세요. 우리 쪽 설정 문제일 수도 있거든요.
내 서비스의 영향 분석이 핵심이에요. AWS가 일부 문제를 겪을 때 특정 인스턴스만 영향받을 수 있으니, 우리 서비스의 로그와 CloudWatch 메트릭을 꼭 확인하세요.
Step 2: 사용자 공지하기 (즉시)
홈페이지나 앱에 간단한 공지를 띄워주세요. "일시적인 접속 지연이 발생하고 있습니다"라는 메시지만으로도 사용자들의 불안감이 줄어들어요.
Step 3: 팀원들과 소통 체계 구축 (10분)
슬랙이나 카카오톡 단체방으로 상황을 공유하고, 역할을 분담하세요.
💡 팀 역할 분담 예시
• 담당자 A: AWS 상태 모니터링
• 담당자 B: 고객 문의 대응
• 담당자 C: 백업 시스템 준비
• 담당자 D: 경영진 보고
침착하게 단계별로 대응하면, 혼란을 최소화할 수 있어요.
멀티 AZ·리전 구성이 답
AWS 장애를 미리 대비하는 가장 확실한 방법은 가용영역(AZ) 및 멀티 리전 아키텍처예요.
1단계: Multi-AZ 기본 구성
한 리전 내에서 2개 이상의 AZ에 시스템을 분산 배치하는 것은 AWS 사용의 기본이에요.
• RDS Multi-AZ: 데이터베이스 자동 백업 및 장애 조치
• ELB(로드밸런서): 여러 AZ에 트래픽 자동 분산
• EC2 Auto Scaling: 여러 AZ에 인스턴스 분산 배치
단일 데이터센터 장애에 대비할 수 있어요. 추가 비용은 약 10-20% 정도예요.
2단계: Multi-Region 재해 복구(DR)
한국(서울)에만 서버를 두지 말고, 일본(도쿄)이나 싱가포르에도 같은 시스템을 복제해두는 거죠. 마치 본점 외에 지점을 여러 개 두는 것과 같아요.
Route 53 헬스 체크 설정
• 서울 리전 서버 상태를 자동으로 체크
• 문제 발생 시 도쿄 리전으로 자동 전환
• 사용자는 장애를 거의 느끼지 못함
데이터 동기화
• S3 Cross-Region Replication: 파일 자동 백업
• RDS Read Replica (다른 리전): 읽기 전용 복제본 생성 (단, 복제 지연이 있을 수 있어 완벽한 DR은 아님)
• DynamoDB Global Tables: 실시간 양방향 복제
• Aurora Global Database: 1초 이내 복제 지연으로 더 안정적
비용은 약 30-50% 증가하지만, 장애로 인한 손실을 생각하면 충분히 가치 있는 투자예요!
백업은 이렇게 하세요
"백업해뒀으니까 괜찮겠지" 하고 방심하면 안 돼요.
제대로 된 백업 전략이 필요해요. 3-2-1 규칙을 기억하세요!
📦 3-2-1 백업 규칙
• 3개의 복사본: 원본 + 백업 2개
• 2개의 다른 매체: 예) AWS S3 + 사내 NAS
• 1개는 외부 위치: 다른 리전이나 다른 클라우드
자동 백업 설정하기
EBS 스냅샷을 매일 자동으로 생성하도록 설정할 수 있어요. AWS Backup 서비스를 이용하면 클릭 몇 번으로 가능해요.
RDS는 자동 백업이 기본이에요. 최대 35일치까지 보관할 수 있고, 특정 시점으로 복구도 가능하죠.
S3에 저장된 중요 파일은 버저닝을 꼭 켜세요. 실수로 덮어쓰거나 삭제해도 복구할 수 있어요.
다만, 완벽한 재해 복구를 위해서는 다른 리전에 Cross-Region Replication을 설정하는 것이 가장 안전합니다.
백업이 제대로 작동하는지 월 1회 복구 테스트도 필수예요!
모니터링 시스템 구축하기
장애를 빨리 발견하는 게 반은 해결한 거예요.
CloudWatch 알람 설정이 핵심이에요. CPU 사용률이 80%를 넘거나, 에러율이 5%를 초과하면 즉시 알림을 받을 수 있어요.
🚨 필수 모니터링 항목
• CPU 사용률 (80% 이상 시 알림)
• 메모리 사용률 (85% 이상 시 알림)
• 디스크 공간 (90% 이상 시 알림)
• 에러 로그 개수 (시간당 100개 이상)
• 응답 시간 (3초 이상 지연)
알림 채널 다양화하기도 중요해요. 이메일만으로는 부족해요. 문자, 슬랙, 카카오톡 등 여러 채널로 받으세요.
Pingdom이나 UptimeRobot 같은 외부 모니터링 서비스도 함께 쓰면 좋아요. AWS 자체에 문제가 생겨도 알림을 받을 수 있거든요.
대시보드는 TV 모니터에 띄워두면 팀 전체가 한눈에 볼 수 있어요!
자주 묻는 질문 TOP 8
Q1. AWS 장애 시 환불받을 수 있나요?
네, 가능해요! SLA(서비스 수준 계약)에 따라 가용성이 99.99% 미만이면 크레딧을 받을 수 있어요. AWS Support에 직접 요청하고, CloudWatch 메트릭으로 가동 시간을 증명해야 해요. 크레딧은 현금이 아닌 AWS 사용 금액으로 제공됩니다.
Q2. 작은 스타트업도 멀티 리전이 필요한가요?
초기에는 비용 부담이 클 수 있어요. 대신 Multi-AZ 구성부터 시작하고, 다른 클라우드(GCP, Azure)에 간단한 백업 서버를 두는 것도 방법이에요.
Q3. 장애 시 자동으로 전환되나요?
Route 53의 헬스 체크와 페일오버 라우팅을 설정하면 자동 전환돼요. 하지만 사전 설정이 필수예요! 테스트도 정기적으로 해야 합니다.
Q4. 프리티어로도 백업 가능한가요?
S3 프리티어로 5GB까지 무료로 백업할 수 있어요. 작은 서비스라면 충분해요. EBS 스냅샷은 1GB당 약 $0.05의 비용이 듭니다.
Q5. 복구까지 얼마나 걸리나요?
AWS 공식 장애는 보통 1-4시간 내 해결돼요. 하지만 대규모 장애는 하루 이상 걸릴 수도 있어요. 2022년 서울 리전 장애는 약 6시간 지속됐습니다.
Q6. 한국 리전이 가장 안정적인가요?
서울 리전은 비교적 안정적이에요. 하지만 2022년 대규모 장애가 있었던 만큼, 백업은 필수예요. 완벽한 리전은 없어요.
Q7. 장애 발생 전 징후가 있나요?
응답 시간이 점점 느려지거나, 간헐적으로 타임아웃이 발생하면 주의해야 해요. CloudWatch로 추세를 관찰하고, 평소보다 20% 이상 느려지면 경계 태세를 갖추세요.
Q8. 보험으로 커버되나요?
일반적인 사이버보험은 AWS 장애를 커버하지 않아요. 비즈니스 중단 보험을 별도로 알아봐야 해요. 보험사마다 조건이 다르니 꼼꼼히 확인하세요.
📌 꼭 기억하세요!
✔ AWS 상태 페이지(status.aws.amazon.com)를 즐겨찾기하세요
✔ Multi-AZ 기본 구성으로 가용성을 확보하세요
✔ 중요 서비스는 Multi-Region 전략을 고려하세요
✔ 3-2-1 백업 규칙을 따르고, 월 1회 복구 테스트하세요
✔ CloudWatch 알람을 여러 채널로 받도록 설정하세요
✔ AWS Health API로 자동 모니터링을 구축하세요
✔ 장애 대응 매뉴얼을 미리 만들어두세요
✔ AWS Support 플랜 가입을 검토하세요 (최소 Developer 이상)
AWS 장애는 누구에게나 올 수 있어요. 하지만 미리 준비하면 피해를 최소화할 수 있답니다!
지금 바로 장애 대응 계획을 세워보세요. 내일의 나를 위한 최고의 투자가 될 거예요! 💪