EBS (Elastic Block Store)
- EC2 인스턴스에 연결하여 사용할 수 있는 네트워크 기반 블록 스토리지
- EC2 인스턴스가 종료되더라도 데이터를 유지할 수 있으며, 용량 및 성능을 필요에 따라 조정 가능
- “네트워크 USB 메모리”와 같은 역할을 함. EC2 인스턴스에서 사용하고 데이터를 유지할 수 있는 가상의 스토리지이다.
- 특징
- 네트워크 드라이브 : 물리적 드라이브가 아닌 네트워크를 통해 인스턴스와 통신하며, 약간의 지연이 있을 수 있다.
- 고정된 AZ : EBS 볼륨은 특정 가용 영역에 고정된다. 다른 가용 영역으로 이동하려면 스냅샷을 생성하여 복사해야함
- 프로비저닝된 용량 : 볼륨의 크기(GB)와 IOPS는 프로비저닝된 용량에 따라 설정되며, 시간에 따라 용량을 늘릴 수 있다.
- 월간 30GB의 무료 스토리지 제공
- Delete on Termination
- EC2 인스턴스가 종료될 때 EBS 볼륨이 삭제되는지 여부 제어 속성
- 기본 : 루트 EBS 볼륨은 인스턴스 종료시 삭제되도록 활성화
- 기타 EBS 볼륨 유형의 경우 ‘종료 시 삭제’ 속성이 기본적으로 비활성화 되어 있음
- 기본 : 루트 EBS 볼륨은 인스턴스 종료시 삭제되도록 활성화
- EC2 인스턴스가 종료될 때 EBS 볼륨이 삭제되는지 여부 제어 속성
- Volume Type
- gp2 / gp3 (SSD):
- 일반적인 SSD 볼륨으로, 가격과 성능 사이에서 균형을 맞춘 제품이다. 다양한 작업 부하에 적합한 전반적인 용도로 사용된다.
- gp3
- 기본 성능: 3,000 IOPS와 125 MiB/s 처리량 제공.
- 성능 확장: IOPS를 최대 16,000까지, 처리량을 최대 1,000 MiB/s까지 독립적으로 확장 가능.
- gp2 볼륨
- IOPS 버스트: 작은 gp2 볼륨은 IOPS가 3,000까지 버스트 가능
- IOPS와 크기 연동: 최대 IOPS는 16,000이며, 3 IOPS/GB의 비율로 제공된다. 5,334GB에서 최대 IOPS에 도달한다.
- io1 / io2 Block Express (SSD):
- 고성능 SSD 볼륨으로, 미션 크리티컬한 애플리케이션에서 낮은 지연시간과 높은 처리량이 요구되는 작업 부하에 적합하다.
- 특히 데이터베이스와 같은 저지연 및 높은 일관성이 필요한 워크로드에 적합하다.
- io1 볼륨
- 크기: 4 GiB ~ 16 TiB
- 최대 PIOPS: EC2 Nitro 인스턴스에서는 64,000, 다른 인스턴스에서는 32,000까지 가능하다.
- io2 Block Express
- 최대 PIOPS: 256,000까지 지원하며, IOPS비율이 1,000:1이다.
- EBS Multi-attach를 지원한다.
- HDD 볼륨 (st1 / sc1)
- st1 (HDD):
- 주로 빈번하게 액세스되는 데이터를 위한 저비용 HDD 볼륨, 대용량 처리 작업에 적합하다.
- 저비용 HDD 볼륨으로 대규모 데이터 처리에 적합하다. (예: 빅데이터, 데이터 웨어하우스, 로그 처리)
- 최대 처리량: 500 MiB/s, 최대 IOPS: 500
- sc1 (HDD):
- 덜 자주 액세스되는 데이터를 위한 가장 저렴한 HDD 볼륨, 비용이 중요한 시나리오에 적합하다.
- 최대 처리량: 250 MiB/s, 최대 IOPS: 250
- st1 (HDD):
- 32,000 이상의 IOP를 얻으려면 EC2 Nitro와 io1 or io2가 필요함
- gp2 / gp3 (SSD):
- EBS Multi-Attach - io1 / io2 family
- 하나의 EBS 볼륨을 동일한 가용 영역(AZ) 내의 여러 EC2 인스턴스에 연결할 수 있게 한다. 이를 통해 각 인스턴스는 해당 고성능 볼륨에 대해 전체 읽기/쓰기 권한을 가질 수 있다.
- 주요 특징
- 다중 EC2 인스턴스 연결: 동일한 EBS 볼륨을 최대 16개의 EC2 인스턴스에 동시에 연결할 수 있다.
- 높은 애플리케이션 가용성: 특히 클러스터링된 리눅스 애플리케이션(예: Teradata)에서 높은 애플리케이션 가용성을 달성하는 데 유용하다.
- 동시 쓰기 작업 관리: 연결된 애플리케이션은 동시 쓰기 작업을 관리해야 한다.
- 사용 사례
- 애플리케이션 고가용성을 요구하는 클러스터링된 애플리케이션에서 사용된다. 예를 들어, 데이터베이스 애플리케이션처럼 한 인스턴스가 중단되더라도 다른 인스턴스가 동일한 데이터를 지속적으로 사용할 수 있다.
- 주의사항:
- 클러스터 인식 파일 시스템을 사용해야 한다. (예: XFS, EX4 등은 적합하지 않음)
EBS Snapshosts
- EBS 볼륨의 특정 시점에 대한 백업
- EBS Snapshot을 이용하여 한 AZ의 EBS 볼륨을 다른 AZ로 전송 가능
- EBS Snapshot Archive
- 스냅샷을 Archive Tier로 이동 - 75% 저렴
- 복원하려면 24 ~ 72시간 기다려야 함
- Recycle Bin
- EBS 스냅샷을 삭제하는 경우 영구 삭제 대신에 휴지통으로 넣을 수 있음 (AMI도 가능)
- 보관 기간은 1일에서 1년사이로 설정 가능
- Fast Snapshot Restore (FSR)
- 스냅샷을 완전 초기화하여 첫 사용에서 지연시간을 없애는 기능이다.
- 스냅샷이 아주 크고 EBS 볼륨 또는 EC2 인스턴트스를 빠르게 초기화해야할 때 유용하다.
- 하지만 매우 비쌈
EBS Encryption
- 암호화되지 않은 EBS 볼륨을 암호화하는 절차
- EBS 스냅샷 생성: 암호화할 EBS 볼륨의 스냅샷을 생성한다.
- EBS 스냅샷 암호화: 생성한 스냅샷을 복사하여 암호화를 적용한다.
- 새 EBS 볼륨 생성: 암호화된 스냅샷에서 새로운 EBS 볼륨을 생성한다. 새로 생성된 볼륨은 자동으로 암호화됨.
- 암호화된 볼륨을 원래 인스턴스에 연결: 마지막으로, 암호화된 볼륨을 원래 EC2 인스턴스에 연결하여 사용한다.
- EBS 암호화의 장점
- 데이터 보호: 암호화된 EBS 볼륨은 저장된 데이터(rest 상태)뿐만 아니라 EC2 인스턴스와 볼륨 간에 전송되는 모든 데이터를 암호화한다.
- 자동 암호화: 암호화된 스냅샷으로부터 생성된 모든 볼륨은 자동으로 암호화된다.
- 투명한 처리: 암호화와 복호화는 사용자 개입 없이 투명하게 처리된다.
- 낮은 지연 시간: 암호화로 인한 성능 저하는 매우 미미하여 애플리케이션에 큰 영향을 주지 않는다.
- KMS 키 사용: AWS KMS(Key Management Service)의 AES-256 암호화를 사용하여 보안을 강화한다.
'Cloud > AWS Study' 카테고리의 다른 글
Scalability (확장성) & High Availability (고가용성) (0) | 2024.09.12 |
---|---|
EC2 인스턴스 스토리지 - AMI, EC2 Instance Store, EFS (1) | 2024.09.12 |
[AWS] Global Infrastructure - Region, Availability Zone, Edge Locations (0) | 2024.05.09 |