[AWS] EBS, 스냅샷, AMI, EFS

2024. 4. 2. 21:25

EBS(Elastic Block Store)


1) EBS는 네트워크 드라이브로 인스턴스에 마운트하려면 네트워크 필요(지연 발생 가능)

 

2) EBS 볼륨은 인스턴스가 종료된 후에도 유지되어 데이터 보관 가능
=> 새로운 인스턴스에 마운트하면 데이터 사용 가능

 

3) EBS는 기본적으로 하나의 인스턴스에만 마운트 가능(예외 존재)
=> 단, 하나의 인스턴스에 여러 EBS 마운트 가능

 

4) 가용 영역 내에서 사용 가능
=>A 가용 영역에 EBS 생성 시 B 가용 영역의 인스턴스에 부착 못함(이 경우 스냅샷 이용)

 

5) 볼륨 전체 용량, 초당 입출력 작업 수, 초당 처리 용량 등 설정 가능
=> 필요시 용량 늘리는 것 가능

 

6) EBS는 생성 후에 특정 인스턴스에 마운트시키지 않고 보관 가능
ㄴ 필요한 경우에만 연결

 

7) 인스턴스를 생성하며 자동으로 EBS 생성시 "종료시 삭제(Delete on Termination" 기능 활성화 상태
=> 이 기능은 인스턴스가 종료되면 EBS도 삭제되는 기능
=> 기본적으로 루트 볼륨은 해당 기능 활성화되었으나 세컨 볼륨은 비활성화 되있음 
=> AWS 콘솔이나 CLI로 변경 가능

 

1. EBS 수동 생성

- 좌측 메뉴 'Elastic Block Store' - '볼륨' - '볼륨 생성'

클릭하면 확대돼요

 

- 필요한 만큼 볼륨 설정

* 볼륨 유형: 범용 SSD 볼륨은 gp2와 gp3가 있으며 gp3가 기본 옵션

  (gp2, gp3 차이는 아마존 문서 참고 / 최대 성능은 gp3가 좋으며 가격 정책은 상이함)

* 크기(GiB): 드라이브 용량 설정

  (프리티어인 경우 용량을 크게 설정하면 비용 발생)

* 가용 영역: 마운트할 인스턴스가 소속된 가용 영역 선택

 

2. 인스턴스에 EBS 연결

- 좌측 메뉴 'Elastic Block Store' - '볼륨' - 연결한 EBS 선택(사용 가능 상태) - '작업' - '볼륨 연결'

 

- EBS를 연결한 인스턴스 및 디바이스 이름 선택

 

3. EBS 연결 확인

- 연결한 인스턴스 상세 정보 내 '스토리지' 탭에 생성한 EBS 확인됨

 

- 인스턴스 터미널에서 추가된 EBS 확인 가능

  * 생성할 떄 /dev/sds로 명명했으나 내부에선 달라질 수 있음

 

 

EBS 유형(다중 연결 내용 포함)

1) gp2, gp3

- 범용 SSD 볼륨으로 가격과 성능이 좋은 비용 효과적인 가성비 볼륨

- EC2 인스턴스의 부팅 볼륨으로 사용 가능

- 볼륨 크기는 1GiB~16TiB 범위를 가지며 IOPS는 최대 16,000

- gp2는 볼륨 크기만 설정 가능(IOPS, 처리량은 볼륨 크기에 비례하여 자동 설정)

- gp3는 볼륨 크기, IOPS, 처리량 모두 개별적인 설정 가능 

 

2) io1, io2(프로비저닝된 IOPS 볼륨/PIOPS)

- 최고 성능 SSD 볼륨

- 중요 인프라(미션 크리티컬)로 지연 시간이 낮고 대용량 데이터 처리 필요한 경우 사용

  ex) 데이터베이스 워크로드 

- EC2 인스턴스의 부팅 볼륨으로 사용 가능

- 볼륨 크기는 io1/io2 각각 4GB~16TB / 4GB~64TB이며 볼륨당 최대 IOPS는 64,000 / 256,000

  * 최대 IOPS 및 처리량 제한을 실현하려면 볼륨을 Nitro 시스템 EC2 인스턴스에 연결해야 함
- 하나의 볼륨을 여러 인스턴스에 연결하는 다중 연결(읽기,쓰기 등) 가능

  * 다중 연결을 하려면 모든 자원이 동일한 가용 영역에 존재해야함

  * 최대 16개의 인스턴스가 하나의 볼륨으로 다중 연결 가능

  * 데이터 복원력과 안정성을 보장하려면 클러스터링된 파일 시스템을 사용해야 함

 

3) st1

- 저비용 HDD 볼륨

- 잦은 접근과 대용량 데이터 처리(처리량 최적화 HDD)

 

4) sc1

- 가장 저렴한 HDD 볼륨

- 접근 수가 적고 저용량 데이터 처리(묵히는 데이터)

 

EBS 암호화

1) EBS 암호화를 하면 아래 항목이 모두 암호화

  1. 볼륨 내부에 있는 데이터
  2. 볼륨과 인스턴스 사이에서 이동하는 모든 데이터
  3. 볼륨에서 생성된 모든 스냅샷
  4. 그런 스냅샷에서 생성된 모든 볼륨

2) 지연 시간 거의 없음

 

3) KMS에서 암호화 키를 생성하며 AES-256 암호화 표준으로 암호화

 

4) 암호화 되지 않은 볼륨을 암호화하려면 스냅샷을 생성한 뒤 새로 볼륨 or 스냅샷을 만들 떄 암호화를 활성화

* 스냅샷 메뉴에서 '스냅샷에서 볼륨 생성' 이나 '스냅샷 복사' 메뉴를 사용

 


스냅샷

1) 스냅샷은 EBS 볼륨의 특정 시점의 사본(백업)

 

2) 스냅샷을 생성할 떄는 EBS를 인스턴스에서 분리한 뒤에 생성하는 것을 권장

 

3) EBS는 동일한 가용 영역 안에서만 사용 가능하나 스냅샷은 다른 가용 영역으로 복사 가능

(스냅샷을 통해 EBS 데이터를 다른 가용 영역의 인스턴스에 붙일 수 있음)

 

4) 거의 액세스(검색)하지 않는 스냅샷은  '스냅샷 아카이브'로 이동시켜 관리하는 것이 좋음

- '스냅샷 아카이브'에 보관 시 최대 75% 저렴하게 보관 가능

- '스냅샷 아카이브'에 보관된 스냅샷을 복원하는 데 최대 72시간 소요

- '스냅샷 아카이브'에 스냅샷을 보관하는 최소 기간은 90일(그 전에 삭제, 복원해도 90일 요금 발생)

 

5) 스냅샷을 삭제할 떄, 영구 삭제 대신 'EBS 스냅샷 휴지통'에 보관 가능

- 복원하고 싶을 떄 복원할 수 있어 유용

- 'EBS 스냅샷 휴지통'에 보관 기간은 1일 ~ 365일

 


AMI

- AMI는 Amazon Machine Image의 약자로 AWS에서 제공 / 다른 사용자가 만든 이미지 사용 / 직접 제작

 

1) 스냅샷이 인스턴스 내 자료(EBS 볼륨 내 데이터)를 옮기는 거라면 AMI는 인스턴스의 모든 것을 저장

- OS, S/W, 시스템 설정 등

 

2) 동일한 환경, 설정을 가진 똑같은 인스턴스를 배포할 때 유용하게 쓸 수 있음

- AMI 생성 후 다른 리전으로 복사 가능

 

3) AMI 생성 시 무결성 확보를 위해 인스턴스를 중지하고 만드는 것이 좋음

 


 

인스턴스 스토어

- 인스턴스와 물리적으로 연결된 디스크에 위치한 임시 스토리지

 

1) 일반적인 EBS보다 IO 성능이 압도적으로 좋음

 

2) 인스턴스 시작 시에만 인스턴스 스토어를 연결할 수 있으며 인스턴스가 중지(OR 종료)되면 인스턴스 스토어도 종료

* 필요한 경우 EBS에 백업 필수

* 데이터의 장기 보관보다는 버퍼, 캐시 등 임시 컨텐츠 보관에 최적화 

 

 


 

EFS

1) 파일 추가, 삭제에 따라 자동적으로 확장, 축소가 진행

 

2) 다른 가용 영역에 있는 여러 인스턴스에서 마운트 가능

 

3) 일반 EBS보다 가용성이 높고 확장성이 뛰어나나 금액이 비쌈

 

4) NFS 프로토콜 사용하며 윈도우 AMI는 EFS 연결 불가
* 표준 파일 API인 POSIX 파일 시스템 사용

 

5) 암호화 가능

 

'AWS' 카테고리의 다른 글

[AWS] EC2 / 배치그룹 / 최대 절전 중지 방식  (2) 2024.03.27
[AWS] IAM  (0) 2024.03.14
[AWS] MFA 적용  (0) 2024.01.18
[AWS] Elastic IP, ENI  (1) 2023.10.10
[AWS] VPC 및 서브넷 생성  (0) 2023.06.14

+ Recent posts