<출처>
https://inpa.tistory.com/entry/AWS-%F0%9F%93%9A-AMI-Snapshot-%EA%B0%9C%EB%85%90-%EB%B0%B1%EC%97%85-%EC%82%AC%EC%9A%A9%EB%B2%95-%F0%9F%92%AF-%EC%A0%95%EB%A6%AC
<목차>
1. Snapshot이란?
2. AMI란?
3. 스냅샷과 AMI의 차이 정리
4. Snapshot, AMI 실습 - AWS 콘솔
Snapshot이란?
- EBS 볼륨의 효율적인 저장 방법으로, 특정 시간의 EBS 볼륨 상태의 저장본(복사본)을 의미한다.
- 특정 순간의 EBS 볼륨을 사진으로 찍어두는 의미로, 필요시 EBS 볼륨의 스냅샷을 통한 데이터 복구가 가능하다.
특징
- OS와 별개로 데이터만 백업하고 싶은 경우, 생성된 스냅샷을 기반으로 여러 종류의 AMI를 생성하고 싶은 경우 등에 자주 애용된다.
- 증분식 저장(변화된 부분만 저장)을 통해 백업 용량을 효율적으로 관리할 수 있다.
AMI란?
- Amazon Machine Image
- EC2 인스턴스를 실행하기 위한 정보를 모은 단위이다.
- cpu 타입, 저장 용량, 비트 수 종류, OS 종류, 설치된 소프트웨어 , .... 등의 인스턴스의 세팅 정보(템플릿)를 저장한 단위
- 이를 AWS에서는 "이미지(Image)"라고 칭한다.
AMI의 사용
- 긴급하게 백업된 인스턴스를 복구해야 하는 경우
- 인스턴스 설정 등이 복잡해서 설정이 완료된 인스턴스 이미지를 만들어 보관하고 싶은 경우
- 템플릿을 사용하여 Auto Scaling Group의 새 인스턴스를 자동으로 생성하고 싶은 경우
AMI의 구성
- 1개 이상의 EBS 스냅샷 : AMI에는 인스턴스가 어떤 EBS 스냅샷과 연결되어 있는지에 대한 정보가 포함되어 있음
- 루트 볼륨에 대한 템플릿 : OS, 어플리케이션 서버 등의 영구 볼륨의 데이터
- 사용 권한 : 어떤 AWS 계정이 사용할 수 있는지
- EBS 블록 디바이스 매핑 : EBS가 무슨 용량으로 몇 개 붙는 지
AMI의 생성 과정
스냅샷과 AMI의 차이 정리
- 스냅샷은 바로 인스턴스를 생성할 수 없고, 스냅샷을 이용해 AMI를 만드는 과정을 거쳐야만 인스턴스를 생성할 수 있다.
- AMI는 인스턴스를 바로 생성할 수 있다.
- 스냅샷은 EBS 내용만을 백업한 데이터로, 바로 인스턴스를 만드는 것이 불가능.
스냅샷과 AMI의 특징 비교
AMI
- EC2에 연결된 전체 볼륨 백업(EC2 인스턴스에 연결되어 있는 OS가 설치된 루트 장치를 포함)
- 인스턴스가 어떤 EBS 스냅샷과 연결되어 있는지에 대한 정보도 포함
- 긴급하게 백업된 인스턴스를 복구해야 하는 경우, 인스턴스 설정 등이 복잡해서 설정이 완료된 인스턴스 이미지를 만들고 싶은 경우, Auto Scaling Group에서 새 인스턴스를 자동으로 생성하기 위해 만드는 경우
Snapshot
- 특정 시점, 특정 EBS 볼륨 백업
- snapshot으로부터 ami 생성 가능, 단 이 경우 지정된 snapshot이 root volume으로 지정
- OS과 별개로 데이터만 백업하고 싶은 경우, 생성된 스냅샷을 기반으로 여러 종류의 AMI를 생성하고 싶은 경우
Snapshot, AMI 실습 - AWS 콘솔
1) 이미지(AMI)로 인스턴스 생성하기
1. test 인스턴스 생성
- 인스턴스 생성 => 볼륨 자동 생성됨
2. 인스턴스의 이미지(AMI) 생성
- ami를 생성 => 자동으로 ami에 포함된 snapshot이 생성됨
- ami를 삭제(비활성화+등록 취소) : snapshot이 자동으로 삭제되지 않음!(별도로 삭제 해주어야 비용 부과 X)
3. 이미지로 test-ami 인스턴스 생성
- test 인스턴스의 ami를 이용하여 완전히 똑같은 인스턴스 test-ami를 생성할 수 있다.
2) 스냅샷 이용하기
1. EBS 볼륨에서 스냅샷 만들기: 볼륨 선택 - 스냅샷 생성 선택
2. 스냅샷으로 EBS 볼륨 생성하기
- 인스턴스의 한 번 만들어진 EBS 볼륨은, 다른 가용영역이나 리전으로 이전이 아예 불가능 -> 볼륨 스냅샷으로 새로운 볼륨을 생성함과 동시에 이전할 가용영역이나 리전을 선택하는 방식으로 우회적으로 EBS 볼륨을 복사.
용량 크기와 가용영역을 변경하여 볼륨을 생성