AWS에서의 저장소(storage)는 데이터를 저장하는 공간으로 타입에 따라 종류가 다양하다. 저장 단위에 따라, 사용 빈도에 따라서 저장소의 타입을 선택할 수 있다.
Amazon Elastic Block Store의 약자로 고속의 하드디스크(SSD)에 붙여서 주로 사용한다. 특정 bite단위로 블록들이 모이여잇는 형태로 제공되며, 수정 시 block단위로 해당 블록부분만 수정하면 된다.
핵심 기능
개별 storage volume을 생성하여 EC2 instance에 attach시킬 수 있게 해준다.
특징
- block단위로 저장한다.
- volume은 AZ 내에서 자동으로 복제되어서 운영된다.
- EC2 instance에 부팅 볼륨으로 사용된다. (부팅 SSD)
- Snapshots : snapshot 형태로 저장되어 백업이 가능하다. (스케줄링 또는 수동)
- Encryption : 암호화를 지원한다. (암호화에 대해 추가적 과금X)
- Elasticity : 볼륨 사이즈 변경이 가능하다. (EC2 instance에 붙여서 사용 중이더라도 가능)
데스크탑을 세팅한 후에 SSD를 붙이는 것과 가상머신을 세팅한 후에 EBS을 붙이는 것과 같은 의미를 가진다.
EBS는 특정 용량만큼의 block을 할당하여 볼륨화시켜준다. 볼륨을 마치 하드디스크와 같이 EC2 instance에 붙일 수 있다. volume의 타입을 SSD와 HDD로 크게 나눌 수 있다. SSD(Solid State Drives)는 General purpose타입과 Provisioned IOPS타입으로 나눌 수 잇으며, SSD General Purpose타입을 기본적으로 생성한다. HDD(Hard Disk Drives)는 Throughput-Optimized타입과 Cold타입으로 나눌 수 있으며, SSD타입들의 비해서 가격이 저렴하지만 부팅용도의 볼륨을 사용할 수 없다는 특징을 가진다.
| General Purpose | Provisioned IOPS | Throughput-Optimized | Cold |
|---|---|---|---|
| 기본적으로 많이 사용됨 | 고성능의 DBMS 필요의 경우 | 빅데이터 | 단순 저장하고자 할 때 |
| 부팅볼륨 O | 부팅볼륨 X | 부팅볼륨 X |
Persistent Storage
EC2 instance가 종료되어도 volume은 사라지지 않고 남아있다.
General purpose
volume은 포멧되지 않는 block디바이스인 것처럼 사용된다.
High performance
High reliability
중복을 허용한 체로 volume을 생성하기 때문에 데이터 소실의 위험이 적다.
Designed for resiliency
연간 단위로 실패할 확률이 0.1%나 1%로 매우 적다.
Variable size
1GB - 16TB의 volume size를 제공한다.
Easy to use
생성, attach, 백업, restore, 삭제가 쉽다.
EBS Volumes
모든 타입의 볼륨은 한달 단위로 과금이 발생한다.
EBS IOPS
몇 GB를 provision했는지에 따라 월 단위로 과금이 발생한다.
볼륨의 엑세스(읽기, 쓰기)의 요청 수만큼 과금이 발생한다.
provision한 GB뿐만 아니라 초당 IOPS만큼이 곱해져서 과금이 반영된다.
EBS Snapshots
S3에 snapshot이라는 오브젝트 형태로 만들어지기 때문에 생성된 만큼 S3에 보관되는 만큼 과금이 발생한다.
EBS Data transfer
inbound는 무료로 과금이 발생하지 않는다. (AWS 내로 들어오는 것)
outbound는 과금이 발생한다. ( AWS에서 바깥으로 나가는 것)
S3나 EBS가 속한 Region을 넘어서는 것 -> 과금 O
Region 내에 여러개 EC2 instance와 S3 storage가 다른 EC2 instanece에서 접근(동일 Region 내에서 벌어지는 것) -> 과금 X
다른 Region의 S3에 접근하는 것 -> 과금 O
Amazon Simple Storage Service의 약자로 모든 것을 관리해주는 저장소이다. object단위(객체)로 저장되며, 수정 시 아예 object를 모두 지우고 다시 교체해야 한다.
비용 고려 요소
저장소 클래스 타입
(가용성:연간 중단되는 확률),(S-IA가격 저렴,반응 낮음)
저장용량의 총량
오브젝트 개수와 사이즈
접근
GET(아웃바운드)에 대해서 과금
데이터 전송
리전 밖으로는 과금
Amazon S3는 동일한 리전 내 여러 가용 영역에서 모든 객체를 복제하는 것을 통해 데이터의 내구성과 가용성을 높일 수 있습니다.
Amazon Elastic File System의 약자로 거대한 저장소를 마련해서 다양한 머신들을 네트워크를 통해서 파일 시스템이 내 가상 머신에 연결되어 있는 것처럼 동시 작업을 진행한다. AWS에서의 네트워크 파일 시스템(NFS)라고 할 수 있다.
네트워크를 통해서 연결되는 파일 저장소이다.
목표) 매우매우 큰 용량과 짧은 대기 시간(low latency)
AZ마다 마운트 타겟을 설정한다.
마운트 타겟: 네트워크 인터페이스가 물려 있는 형태, AZ 내부에서 요청하고 응답하는 것을 맡아서 처리한다.
EFS의 리소스 = file system
file system은 마운트 타겟과 태그로 이뤄짐
Amazon Simple Storage Service Glacier이며 cold storage로 잘 접근하지는 않지만, 데이터를 버리지 않고, 저장은 하고 싶은 경우에 저렴한 가격으로 이용할 수 있는 서비스이다. (온프레미스 환경에서 수행할 경우, 데이터가 늘어나면 저장소 장치를 계속 붙여야 하지만 S3 Glacier를 사용하면 파일을 버리지 않고 저장이 가능하며 비용적으로도 저렴하다.
보안을 위해서 암호화된 프로토콜을 사용한다.(SSL(인증장치), TLS(데이터 암호화))
S3 glacier 사용
S3 와 S3 Glacier 비교
데이터 볼륨 : 둘 다 제한 없음
평균 대기시간(average latency) : 빠름(ms) | 분/시간
아이템 사이즈 : 작음 | 큼
GB당 비용 : 높음 | 낮음
응답 : PUT, COPY, POST, LIST, and GET | UPLOAD and retrieval
암호화 : 둘다 private key로 데이터 자체 암호화 가능
• Amazon S3 Glacier는 보안, 내구성 및 매우 저렴한 비용을 위해 설계된 데이터 보관 서비스입니다.
• Amazon S3 Glacier 가격은 지역을 기준으로 합니다.
• 매우 경제적인 설계로 장기 보관에 적합합니다.
• 이 서비스는 물체에 119초의 내구성을 제공하도록 설계되었습니다.
(문제)
✔️ 참
❌ 거짓
정답 : S3는 Word 문서, 사진 등과 같은 ‘플랫’ 파일 저장에 적합한 객체 스토리지입니다.
풀이 : Amazon Simple Storage Service (Amazon S3)는 Microsoft Word 문서, 사진 등과 같은 일반적인 파일 형식들을 효율적으로 저장하고 관리할 수 있는 서비스입니다.
Amazon S3는 __ 모든 객체를 복제합니다
****❌가용 영역 내 열 볼륨에서
✔️동일한 리전 내 여러 가용 영역에서
❌높은 내구성을 위해 여러 리전에서
❌여러 S3 버킷에서
정답 : S3는 동일한 리전 내 여러 가용 영역에서 모든 객체를 복제합니다.
풀이 : Amazon S3는 동일한 리전 내 여러 가용 영역에서 모든 객체를 복제하는 것을 통해 데이터의 내구성과 가용성을 높일 수 있습니다.
✔️S3-Standard Access
❌AWS Storage Gateway
✔️S3-Infrequent Access
✔️Simple Storgae Serive Glacier
❌S3-Reduced Redundancy Storage
❌Amazon Dynamo DB
정답 : Glacier, S3 Infrequent Access 및 S3 Standard Access를 S3 객체 수명 주기 정책에 대한 스토리지 클래스로 사용할 수 있습니다.
풀이 : S3 객체 수명 주기 정책에 대한 스토리지 클래스로는 Glacier, S3 Infrequent Access 및 S3 Standard Access를 사용할 수 있습니다. 이러한 스토리지 클래스는 데이터의 액세스 요구에 따라 비용과 성능을 조정할 수 있도록 도와줍니다.
✔️모든 AWS 계정에서 전 세계적으로
❌리전 내에서
❌모든 AWS 계정에서
❌AWS 계정 내에서
정답 : S3 버킷 이름은 모든 AWS 계정에서 전 세계적으로 고유해야 합니다.
풀이 : S3 버킷 이름은 모든 AWS 계정에서 전 세계적으로 고유해야 합니다. 즉, 동일한 이름의 버킷은 AWS 전역에서 중복될 수 없습니다. 이는 S3의 전반적인 구성과 관리를 원활하게 유지하기 위한 필수 조건입니다.
❌AWS 내에서만 사용할 수 있는 간단하고 확장 가능하며 탄력적인 파일 스토리지를 제공합니다.
✔️여러 가상 머신이 동시에 액세스할 수 있는 Amazon EC2 인스턴스용 스토리지를 구현합니다.
❌강력한 CDN을 호스팅하여 동적, 정적 및 스트리밍 콘텐츠가 포함된 전체 웹사이트를 제공합니다.
❌사용자 관련 콘텐츠를 생성합니다.
정답 :EFS를 사용하여 여러 가상 머신이 동시에 액세스할 수 있는 EC2 인스턴스용 스토리지를 구현할 수 있습니다.
풀이 : Amazon Elastic File System (Amazon EFS)은 여러 가상 머신이 동시에 액세스할 수 있는 Amazon EC2 인스턴스용 스토리지를 구현할 수 있습니다. 이를 통해 여러 EC2 인스턴스 간에 파일을 공유하고 데이터 일관성을 유지할 수 있으며, 확장성과 탄력성이 높은 파일 스토리지 솔루션을 제공합니다.
❌객체 수준 스토리지가 필요할 때
✔️신속한 액세스와 장기적인 지속성이 필요할 때
✔️암호화 솔루션이 필요할 때
❌EC2 인스턴스가 아닌 서로 다른 가용 영역에서 저장해야 할 때
정답 : Amazon EBS는 데이터에 대한 신속한 액세스와 장기간 지속성이 요구되고 암호화 솔루션이 필요한 경우에 권장됩니다.
풀이 : Amazon Elastic Block Store (EBS)는 데이터에 대한 신속한 액세스와 장기간 지속성이 필요하며, 암호화 솔루션이 필요한 경우에 권장됩니다. EBS는 EC2 인스턴스와 함께 사용되어 블록 레벨의 스토리지를 제공하며, 높은 성능과 데이터의 안전성을 보장합니다. 암호화 기능은 데이터 보안을 강화하기 위해 사용될 수 있습니다.
❌참
✔️거짓
정답 : 기본적으로 S3에 저장되는 모든 데이터는 공개적으로 볼 수 없습니다.
풀이 : 기본적으로 Amazon S3에 저장된 모든 데이터는 공개적으로 볼 수 없습니다. S3는 기본적으로 데이터의 비공개성을 보장하며, 데이터 액세스 권한을 명시적으로 설정해야만 다른 사람이 데이터에 액세스할 수 있습니다. 액세스 제어 및 권한 설정을 통해 데이터의 보안과 프라이버시를 유지할 수 있습니다.
❌아카이브에 액세스할 수 있거나 액세스할 수 없는 사용자를 결정하는 규칙
❌객체(사진, 동영상, 파일 또는 문서)
✔️아카이브를 저장할 수 있는 컨테이너
❌Glacier에 저장된 콘텐츠에 액세스할 수 있는 사용자를 식별하는 정책
정답 : Amazon Glacier의 볼트는 아카이브를 저장하기 위한 컨테이너입니다.
풀이 : Amazon S3 Glacier의 볼트는 아카이브를 저장하기 위한 컨테이너입니다. 볼트는 Glacier 서비스 내에서 아카이브를 구성하고 저장하는 단위로 사용됩니다. 각 볼트는 일련의 아카이브를 포함하며, 데이터의 장기 보존 및 보안에 사용됩니다. 볼트는 Glacier에서 아카이브에 대한 액세스와 관련된 작업을 처리하는 중요한 개념입니다.