Cloud/AWS

AWS Backup으로 데이터 backup 관리

Omoknooni 2023. 9. 7. 15:55

실서비스를 운영하면 서버의 백업과 관리는 빠져서는 안될 필수불가결한 항목이다.

이번에는 AWS 서비스인 AWS Backup을 통해 ec2 인스턴스들에 대해 백업 작업을 진행해본다.

 

AWS Backup

AWS내의 서비스 및 일부 온프레미스의 App들에 대한 데이터들의 백업을 관리하고 자동화할 수 있는 중앙집중식 완전 관리형 서비스이다.

백업할 리소스를 지정해 직접 백업 작업을 진행할 수 있고(온디맨드 백업), 리소스와 백업 계획(일정)을 지정해 자동으로 백업을 진행할 수도 있다.

 

Backup 서비스에서는 백업 볼트라는 개념이 존재한다. 백업볼트는 간단히 말해 백업본이 저장될 컨테이너로 볼 수 있다. 백업 서비스를 이용하기 전에 최소 1개의 vault를 가져야한다. (기본값 Default 백업볼트가 있음)

또한 모든 백업본들은 KMS 키를 통해 암호화시키거나, 백업본이 저장된 저장소를 잠금설정(lock)해 안전하게 보관할 수 있다.

 

온디맨드 백업

Backup 서비스의 대시보드에서 온디맨드 백업을 진행할 수 있다.

 

백업을 지원하는 서비스들은 다음과 같으며, 서비스 선택 후 백업을 시킬 대상을 선택한다.

 

대상 선택 후 백업 작업의 시간, 백업본을 저장할 기간과 백업본이 저장될 저장소(백업 볼트)까지 지정 후 백업을 바로 진행

 

'작업' 탭에서 백업 작업의 진행도를 확인할 수 있으며, 완료된 백업본의 ARN을 확인할 수 있다.

 

EC2 백업의 경우, AMI가 생성됨을 확인할 수 있다.

 

백업 계획을 세워 자동 백업

백업 계획을 세우는 경우, 백업 기간, 빈도, 볼트를 먼저 지정시킨 후에 백업 리소스를 지정할 수 있다.

AWS에서 제공하는 템플릿을 이용해 미리 설정된 계획을 생성할 수 있으며, 각 템플릿 별 빈도 및 저장 기간은 다음과 같다.

 

 

 

백업 빈도는 cron 표현식을 지원하므로 상세한 설정의 경우 이를 이용하면 편리하다.

해당 사이트에서 cron Expression에 대해 테스트해볼 수 있다.

cron Expression test page : https://crontab.guru/

 

Crontab.guru - The cron schedule expression editor

 

crontab.guru

 

하단의 '대상으로 복사'의 경우, 해당 리전에 백업된 데이터를 타 계정이나 다른 리전의 볼트에도 생성하는 옵션으로 백업본의 가용성을 높일 수 있다.

 

 

백업본의 복원

백업을 통해 생성된 백업 볼트 내의 데이터를 선택해 복원작업을 실행할 수 있다.

복원 작업메뉴로 넘어가는 경우, 백업 당시의 설정이 기본값으로 로딩됨을 볼 수 있다.

 

온디맨드 백업과 마찬가지로 '작업' 탭에서 복원 작업의 진행도를 확인할 수 있으며, 완료된 백업본의 ARN을 확인할 수 있다.

백업본의 AMI로 인스턴스가 시작됨을 확인할 수 있다