EBS?
- EBS 볼륨은 Elastic Block Store의 줄임말
- EC2 인스턴스가 실행 중인 동안 연결 가능한 네트워크 드라이브
- EBS 볼륨을 사용하면 인스턴스가 종료된 후에도 데이터를 지속할 수 있음
- 특정 가용 영역에서만 사용 가능함, EBS 볼륨의 가용 영역을 사용하려는 EC2 인스턴스와 맞춰줘야 함
EBS는 네트워크 USB 스틱이라고 생각하면 됨
USB 스틱처럼 한 컴퓨터에서 꺼내, 다른 컴퓨터에 꽂는 그런 장치
실제로 물리적 연결은 없지만, 네트워크를 통해 연결되는 거임
사용하는 목적
인스턴스를 재생성하고 이전 EBS 볼륨을 마운트 하면 데이터를 다시 받을 수 있음
EBS 볼륨 어떻게 정의 되는가?
크기, 처리량, IOPS(초당 I/O 작업 수)
EBS Volume 유형
- gp2 / gp3 (SSD) : 범용 SSD 볼륨, 다양한 워크로드에 대해 가격과 성능의 절충안이 되어줌
- 짧은 지연 시간을 자랑하며, 효율적인 비용의 스토리지
- 시스템 부팅 볼륨에서 가상 데스크톱, 개발, 테스트 환경에서 사용할 수 있음
- 크기는 1GB ~ 16TB까지 다양함
- gp3 :
- 최신 세대의 볼륨으로 기본 성능으로 3,000 IOPS와 초당 125MB 처리량을 제공함
- 각각 IOPS는 최대 16,000 처리량은 1,000MB/s까지 증가시킬 수 있음
- IOPS와 처리량이 연결되어 있지 않음(독자적으로 설정 가능)
- gp2:
- 좀 더 오래된 버전으로 볼륨이 더 작음, 최대 3,000 IOPS
- 볼륨과 IOPS가 연결되어 있어서 IOPS가 증가할 때면 같이 늘어남
- 즉, 볼륨의 GB 수를 늘릴 때에 5,334GB라고 한다면, 3배 더 증가한 16,000 IOPS가 됨
- io1 /io2 (SSD) : 최고 성능 SSD 볼륨, 지연 시간이 낮고 대용량의 워크로드에 사용
- st1 (HDD) : 저비용의 HDD 볼륨, 잦은 접근과 처리량이 많은 워크로드에 사용
- sc1 (HDD) : 가장 비용이 적게 드는 HDD 볼륨, 접근 빈도가 낮은 워크로드를 위해 설계됨
EC2 인스턴스에는 gp2/gp3와 io1/io2만이 부팅 볼륨으로 사용될 수 있음 → 루트 OS가 실행될 위치에 해당
EBS Volume 특징
- 네트워크 드라이브로 물리적 드라이브가 아님
- 인스턴스와 EBS 볼륨이 서로 통신을 하기 위해서는 네트워크를 필요로 함
- 네트워크가 사용되기 때문에 컴퓨터가 다른 서버에 도달할 때, 지연이 생길 수 있음
- EBS 볼륨은 네트워크 드라이브로 EC2 인스턴스에서 분리될 수 있으며, 매우 빠르게 다른 인스턴스에 연결될 수 있음
- EBS 볼륨은 특정한 가용 영역에 고정되어 있음
- us-east-1a에 생성된 볼륨은 us-east-1b로 연결이 불가능함
- 스냅샷을 이용하면, 다른 가용 영역으로도 볼륨을 옮길 수 있음
- 볼륨이기 때문에 용량을 미리 결정해야 함
- 원하는 양의 GB 및 IOPS(단위 초당 전송 수)를 미리 지정해야 함
- 해당 프로비저닝된 용량에 따라 요금이 청구됨
- 더 좋은 성능이나 큰 사이즈가 필요하면, 이후에 용량을 늘릴 수도 있음
- EBS 볼륨을 생성한 후 EC2 인스턴스에 연결하지 않아도 됨
- 꼭 연결될 필요가 없고, 필요한 경우에만 연결이 가능함
- EC2 인스턴스에서 EBS 볼륨을 생성하는 경우 종료 시 삭제하는 속성이 있음
- 기본적으로 루트 EBS 볼륨은 인스턴스 종료와 함께 삭제되도록 설정이 되어 있음
- 인스턴스가 종료될 때 루트 볼륨을 유지하고자 하는 경우, 데이터를 저장하고자 하는 등의 경우에는 루트 볼륨의 종료 시 삭제 속성을 비활성화하면 됨
EC2 인스턴스 생성 시 EBS 볼륨 구성
EC2 > 인스턴스 시작 > 아래로 스크롤 하다보면 스토리지 구성
오른쪽에 고급 누르기
볼륨 크기, 유형, IOPS, 종료 시 삭제 옵션을 지정할 수 있음
참고 자료
'Cloud > Amazon Cloud' 카테고리의 다른 글
[AMI] Amazon Machine Image 란? (0) | 2024.02.19 |
---|---|
[EBS] AWS EBS Snapshost(스냅샷)이란? (0) | 2024.02.15 |
[Budgets] AWS Budgets을 사용하여 예산 생성하기 (0) | 2024.02.13 |
[IAM] AWS IAM 사용자 콘솔에서 결제 정보 확인하는 방법 (0) | 2024.02.13 |
[IAM] AWS IAM 사용자 생성 (4) | 2024.02.13 |