31장 다중 인스턴스·재해복구를 배포 절차와 연결한다
HA는 서버가 두 대라는 뜻이 아니다. 같은 전원·스토리지·DB·load balancer를 공유하면 공통 장애점이 남는다. 인스턴스, zone, DB, 파일, DNS, 인증서, secret, 관측 시스템의 장애 도메인을 그린다. RTO는 복구까지 허용 시간, RPO는 허용 가능한 데이터 손실 범위다.
배포 때 한 노드를 drain하고 active request와 session, batch가 빠졌는지 확인한다. 새 WAR를 올린 뒤 readiness와 외부 smoke가 통과해야 pool에 복귀한다. 모든 노드를 동시에 재시작하는 스크립트에는 승인과 동시성 제한을 둔다.
DR 환경의 WAR와 설정이 운영과 같다는 가정은 훈련으로 증명한다. DB가 오래된 시점이면 새 WAR가 기대하는 schema와 맞지 않을 수 있고, 인증서·DNS·secret이 만료됐을 수 있다. 복구 훈련은 로그인, 조회, 쓰기, 배치, 파일 연계까지 확인한다.
실습 31 한 노드와 한 zone을 잃는다
node-a 중단과 zone 전체 중단을 각각 표로 만든다. 남은 capacity, session, batch owner, DB connection, DNS/TLS, 경보, 사용자 공지를 기록한다. 복구 성공은 프로세스가 뜬 순간이 아니라 핵심 사용자 여정과 데이터 일관성이 확인된 순간이다.