티스토리 뷰

Cloud/Amazon Web Service

[AWS] Amazon S3

Arc Lab. 2020. 2. 15. 15:26

[업데이트 2020.02.19 14:15]

 

1. Amazon S3

1.1 개요
- Amazon Simple Storage Service(Amazon S3)는 업계 최고의 확장성과 데이터 가용성 및 보안과 성능을 제공하는 객체 스토리지 서비스 임.

- Amazon S3는 여러 시스템에 걸쳐 모든 S3 객체의 복사본을 자동으로 생성하고 저장하기 때문에 99.999999999%의 데이터 내구성을 제공함.

 

1.2 Amazon S3 스토리지 클래스

범용

- Amazon S3 Standard: S3 Standard는 자주 액세스하는 데이터를 위해 높은 내구성, 가용성 및 성능을 갖춘 객체 스토리지를 제공합니다. S3 Standard는 짧은 지연 시간과 많은 처리량을 제공하므로 클라우드 애플리케이션, 동적 웹 사이트, 콘텐츠 배포, 모바일 및 게임 애플리케이션, 빅 데이터 분석 등의 다양한 사용 사례에 적합함.

 

알 수 없거나 변화하는 액세스

- Amazon S3 Intelligent-Tiering: 이 스토리지 클래스는 두 개의 액세스 계층에 객체를 저장하여 작동합니다. 한 계층은 빈번한 액세스에 맞게 최적화되고 저렴한 비용의 다른 한 계층은 빈번하지 않은 액세스에 맞게 최적화함. 액세스 패턴 변화를 기반으로 두 개의 액세스 계층 간에 객체를 자동으로 이동함.

 

빈번하지 않은 액세스

- Amazon S3 Standard-Infrequent Access(IA): 자주 액세스하지 않지만 필요할 때 빠르게 액세스해야 하는 데이터에 적합함.

 

- Amazon S3 One Zone-Infrequent Access(IA): 자주 액세스하지 않지만 필요할 때 빠르게 액세스해야 하는 데이터에 적합함. 최소 3개의 가용 영역(AZ)에 데이터를 저장하는 다른 S3 스토리지 클래스와는 달리, S3 One Zone-IA는 단일 AZ에 데이터를 저장하며 비용S3 Standard-IA보다 20% 적게듬. S3 One Zone-IA는 자주 액세스하지 않는 데이터에 대한 저렴한 옵션을 원하지만 S3 Standard 또는 S3 Standard-IA 스토리지와 같은 가용성 및 복원력이 필요 없는 고객에게 적합합니다. 이 서비스는 온프레미스 데이터 또는 쉽게 다시 생성할 수 있는 데이터의 보조 백업 복사본을 저장하는 경우 좋은 선택임.

 

아카이브

- Amazon S3 Glacier: S3 Glacier는 데이터 보관을 위한 안전하고 내구력 있으며 저렴한 스토리지 클래스입니다. 비용을 낮게 유지하면서 동시에 다양한 요구를 지원하기 위해 S3 Glacier는 몇 분에서 몇 시간까지 소요되는 세 가지 검색 옵션을 제공함. S3 Glacier에 객체를 직접 업로드하거나, S3 수명 주기 정책을 사용하여 활성 데이터를 위한 모든 S3 스토리지 클래스(S3 Standard, S3 Intelligent-Tiering, S3 Standard-IA, S3 One Zone-IA)와 S3 Glacier 간에 데이터를 전송할 수 있음.

 

- Amazon S3 Glacier Deep Archive: S3 Glacier Deep Archive는 Amazon S3에서 가장 저렴한 비용의 스토리지 클래스이며 1년에 한두 번 정도 액세스할 수 있는 데이터의 장기 보관 및 디지털 보존을 지원함. 이 서비스는 규제 규정 준수 요건을 충족하기 위해 7-10년 이상 데이터 세트를 보관하는 고객(특히 금융 서비스, 의료, 공공 부문과 같이 엄격하게 규제되는 산업의 고객)을 위해 설계되었음. 자기 테이프 라이브러리의 이상적인 대안임. 데이터를 정기적으로 검색하고 일부 데이터의 경우 몇 분 이내에 사용해야 할 수 있는 아카이브에 이상적임.

 

1.3 Amazon S3 스토리지 관리 및 모니터링

-  S3 배치 작업(Batch Operations)은 저장하는 객체 수가 수천 개든 수십억 개든 상관없이 어떤 규모에서도 Amazon S3의 데이터를 간편하게 관리할 수 있게 도와줌.

- S3 버전 관리 기능을 사용하면 Amazon S3에 저장된 객체의 모든 버전을 손쉽게 보존 및 검색하고 복원할 수 있으므로, 의도하지 않은 사용자 작업이 발생하거나 애플리케이션 오류 시 복구할 수 있습니다. 실수로 삭제되는 사고를 방지하려면 S3 버킷에 대해 Multi-Factor Authentication(MFA) 삭제를 활성화해야 함. 기본적으로 GET 요청은 가장 최근에 저장된 버전을 검색함.

- S3 복제를 통해 S3 CRR(교차 리전 복제) 및 Amazon S3 SRR(동일 리전 복제)이 가능함.

- S3 객체 잠금 기능을 사용하여 WORM(write-once-read-many) 정책을 적용할 수도 있습니다. 이 S3 관리 기능은 고객이 정의한 보존 기간 동안 객체 버전 삭제를 차단함으로써 데이터 보호를 위한 추가 계층으로 또는 규정 준수 의무를 위해 보존 정책을 적용할 수 있음.

- Amazon CloudWatch를 사용하여 AWS 리소스의 운영 상태를 추적하고, 예상 비용이 사용자가 정의한 한도에 도달할 경우 결제 알림을 받도록 구성할 수 있습니다. 또 다른 AWS 모니터링 서비스는 버킷 수준 활동과 객체 수준 활동을 추적하고 보고하는 AWS CloudTrail입니다. S3 리소스에 대해 특정 변경이 이루어질 경우 워크플로, 알림을 트리거하고 AWS Lambda를 호출하도록 S3 이벤트 알림을 구성할 수 있습니다. S3 이벤트 알림은 미디어 파일이 Amazon S3에 업로드될 때 미디어 파일을 자동으로 트랜스코딩하거나, 사용 가능한 데이터 파일을 처리하거나, 객체를 다른 데이터 저장소와 동기화하기 위해 사용할 수 있습니다.

- 최소 스토리지 보관 기간

. STANDARD 없음

. STANDARD_IA 30일

. INTELLIGENT_TIERING 30일

. ONEZONE_IA 30일

. GLACIER 90일

. DEEP_ARCHIVE 180일

. RBS 없음

 

1.4 Amazon S3 액세스 관리 및 보안

- Identity and Access Management(IAM) 정책, 버킷 정책, ACL(액세스 제어 목록) 및 쿼리 문자열 인증의 네 가지 메커니즘을 사용해 Amazon S3 리소스에 대한 액세스를 제어할 수 있음.

- 쿼리 문자열 인증을 사용하면 제한된 시간에만 유효한 Amazon S3 객체의 URL을 생성가능함.

- Access Analyzer for S3는 버킷 액세스 정책을 모니터링하는 기능으로, 정책이 S3 리소스에 대한 의도된 액세스만 제공하도록 보장함.

- Amazon Macie를 사용하여 Amazon S3에 저장된 중요한 데이터를 검색, 분류 및 보호할 수 있습니다. Amazon Macie는 기계 학습 기능을 사용하여 PII(개인 식별 정보) 또는 지적 재산과 같은 민감한 데이터를 인식하고, 이러한 데이터가 어떻게 액세스되고 이동되는지 파악할 수 있는 대시보드 및 알림을 제공합니다. Amazon Macie는 또한, 비정상적인 데이터 액세스 패턴을 모니터링하여 무단 액세스 또는 의도하지 않은 데이터 유출 위험이 감지될 경우 알림을 생성함.

- VPC 엔드포인트를 사용하여 Amazon VPC(Amazon Virtual Private Cloud)에서 S3 리소스에 연결할 수 있음. Amazon S3용 Amazon VPC 엔드포인트는 S3로의 연결만 허용하는 VPC 내 논리적 엔터티입니다. VPC 엔드포인트는 S3로 요청을 라우팅하고 응답을 다시 VPC로 라우팅함.

- Amazon S3 버킷 정책을 사용하여 특정 Amazon VPC 엔드포인트 또는 엔드포인트 세트에서 버킷에 액세스하는 것을 제한할 수 있음.

- 데이터 암호화

. 서버 측 암호화

Amazon S3에서는 데이터 센터의 디스크에 데이터를 쓸 때 객체 레벨에서 데이터를 암호화하고 해당 데이터에 액세스할 때 자동으로 암호 해독합니다. 요청을 인증하기만 하면 액세스 권한을 갖게 되며, 객체의 암호화 여부와 관계없이 액세스 방식에는 차이가 없습니다.

  1) Amazon S3 관리형 키를 사용한 서버 측 암호화(SSE-S3)

  2) AWS Key Management Service에 저장된 고객 마스터 키(CMK)를 사용한 서버 측 암호화(SSE-KMS)

  3) 고객 제공 키를 사용한 서버 측 암호화(SSE-C)

 

. 클라이어트 측 암호화

클라이언트 측 암호화는 Amazon S3로 보내기 전에 데이터를 암호화하는 것을 가리킵니다. 클라이언트 측 암호화를 활성화하기 위한 다음 옵션이 있습니다.

 

1) AWS Key Management Service(AWS KMS)에 저장된 고객 마스터 키(CMK)를 사용합니다.
2) 애플리케이션 내에 저장한 마스터 키를 사용합니다.

 

1.5 Amazon S3 비용

- 같은 리전내에서 Amazon EC2와 Amazon S3 간에 데이터를 전송한 경우 데이터 전송 요금은 청구되지 않음. (예: 미국 동부(버지니아 북부) 리전 내에서의 데이터 전송) 

 

* 참고

https://aws.amazon.com/ko/s3/?nc=sn&loc=0

https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/dev/Welcome.html

https://aws.amazon.com/ko/s3/faqs

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함