Disaster Recovery (DR)

Tue, 20 Aug 2024 04:33:07 GMT

# 1. Disaster Recovery

- **RPO** (**Recovery Point Objective) **- 재난이 발생해서 얼마 동안 데이터를 잃었는가? (Data loss)

- **RTO (Recovery Time Objective) **- 재난이 발생하고 얼마 동안 서비스를 못 하는가? (Downtime)

![Image](https://upload.cafenono.com/image/slashpageHome/20240820/134303_4vaIbp03Q5u5MERFmD?q=80&s=1280x180&t=outside&f=webp)

### 1. Backup & Restore

주기적으로 제이터를 백업해 놓은 다음, 재난이 발생하면 해당 백업본을 복구하고 서비스를 재시작한다. RPO가 매우 크다.

### 2. Pilot Light

Backup & Restore과 매우 비슷하지만, AWS 인스턴스를 만들어서 정지시켜 놓는다는 차이가 있다. 이렇게 하면 추가적인 설정을 할 필요없이 빠르게 연결이 가능하다.

### 3. Warm Standby

모든 시스템을 동일하게 복제해 놓지만, 최소한만 실행시켜 놓는다.

![Image](https://upload.cafenono.com/image/slashpageHome/20240820/134304_X5NWrJTAz7w75AeBRV?q=80&s=1280x180&t=outside&f=webp)

### 4. Multi Site / Hot Site

모든 시스템을 동일하게 복제하고 실환경에서 돌아가게 한다. 한쪽 시스템이 죽으면 다른 시스템에서 하던대로 하면 된다. 가장 비싸다.

# 2. DevOps Checklist

- AMI가 복제되어 parameter store에 저장되었는가?

- CFN StackSet이 여러 리전에서 동작하는 걸 테스트했는가?

- RPO/RTO는 얼마인가?

- Route53 Health Check는 잘 동작하는가? CW Alarm과 연동되었는가?

- CW Events를 통해 RDS Read Replication을 만드는 Lambda를 실행할 수 있는가?

- 데이터는 백업되었는가?