AWS

[AWS] S3, 수명주기관리, S3 Glacier, 데이터 암호화

박경태 2024. 4. 21. 20:37

AWS S3 (Amazon Simple Storage Service)

AWS의 클라우드 스토리지 서비스 중 하나로, 데이터를 안전하게 저장하고 웹상에서 쉽게 접근할 수 있도록 해줌.

AWS S3는 대규모 데이터 저장 및 웹 응용 프로그램에 널리 사용되며, 안정성, 확장성 및 비용 효율성을 제공함.

 

AWS S3 주요 특징과 개념

1. 데이터 저장

AWS S3를 사용하여 거의 모든 종류의 데이터를 저장할 수 있음.

텍스트, 이미지, 동영상, 데이터베이스 백업 등과 같은 다양한 유형의 데이터를 포함.

 

2. 강력한 보안

AWS S3는 데이터를 안전하게 저장하기 위해 다양한 보안 기능을 제공함.

데이터 암호화, 접근 제어 목록(ACLs), 버킷 정책, IAM(Identity and Access Management) 정책 등이 포함됨.

 

3. 무한한 확장성

AWS S3는 거의 무제한으로 확장이 가능함.

대용량 데이터 저장 및 처리 요구 사항을 충족시킬 수 있음.

 

4. 버전 관리

AWS S3는 버전 관리 기능을 제공하여 동일한 객체의 여러 버전을 저장하고 관리할 수 있음.

실수로 데이터를 잃어버릴 경우에도 이전 버전을 복원할 수 있음.

 

5. 데이터 전송

AWS S3는 데이터를 전송하기 위한 다양한 방법을 제공함.

AWS SDK를 통한 프로그래밍 방식으로의 업로드, AWS CLI를 통한 업로드, 브라우저를 통한 업로드 등을 포함함.

 

6. 비용 효율적

AWS S3는 사용한 만큼만 비용을 지불하도록 설계됨.

데이터 전송 및 저장 비용에 대해 투명한 요금 체계를 제공함.

 

7. 다양한 데이터 관리 옵션

AWS S3는 데이터 수명 주기 관리, 객체 태그, 스토리지 클래스 등과 같은 다양한 데이터 관리 옵션을 제공하여 비용을 절감하고 데이터를 효율적으로 관리할 수 있음.

 

---

 

AWS S3로 데이터 수명주기 관리 (Data Lifecycle Management in AWS S3)

데이터의 수명 주기에 따라 데이터를 자동으로 관리하고 비용을 절감할 수 있는 기능

데이터 수명 주기 관리를 사용하면 데이터의 저장 클래스를 변경하거나 데이터를 삭제하는 등의 작업을 자동화할 수 있음.

 

데이터 수명주기 관리 단계

1. 수명 주기 정의

AWS Management Console, AWS CLI, AWS SDK를 사용하여 데이터 수명 주기 정책을 정의.

이 정책은 수명 주기 단계와 각 단계에 대한 조치를 지정함.

 

2. 수명 주기 단계

수명 주기 정책에서는 데이터에 대한 여러 단계를 정의함.

일반적인 단계는 다음과 같음.

2.1 현재 버전

데이터의 최신 버전에 대한 정책을 정의함.

2.2 이전 버전

이전 버전의 데이터에 대한 정책을 정의함.

2.3 특정 날짜

특정 날짜 이후에 데이터에 대한 정책을 정의함.

2.4 특정 날짜 후 삭제

특정 날짜 이후에 데이터를 삭제하는 정책을 정의함.

 

3. 조치

각 수명 주기 단계에 대해 수행할 작업을 지정함.

이 작업에는 데이터의 스토리지 클래스 변경, 데이터 삭제 등이 포함될 수 있음.

예를 들어, 데이터 수명 주기 정책을 사용하여 데이터를 30일 동안 Standard 스토리지 클래스에 유지한 다음 이후에는 데이터를 Glacier로 이동하고 1년 후에 삭제할 수 있음.

 

수명 주기 정책의 이점

데이터를 효율적으로 관리하고 비용을 절감할 수 있음.

 

1. 비용 절감

자주 액세스되지 않는 데이터를 비용 효율적인 스토리지 클래스로 이동하여 비용을 절감할 수 있음.

 

2. 자동화

데이터 관리 작업을 자동화하여 운영 부담을 줄일 수 있음.

 

3. 스토리지 최적화

데이터의 수명 주기에 맞게 적절한 스토리지 클래스를 사용하여 스토리지를 최적화할 수 있음.

 

---

 

AWS S3 Glacier

AWS S3 Glacier는 AWS의 저비용 아카이브 스토리지 서비스.

데이터를 장기 보관하고 안전하게 보호하는 데 사용됨.

AWS S3 Glacier는 장기 보존이 필요한 데이터를 안전하게 보관하고 저렴한 비용으로 제공하는 서비스.

백업, 아카이빙, 컴플라이언스 요구 사항 등 다양한 사용 사례에 적합함.

 

AWS S3 Glacier에 대한 주요 특징과 개념

1. 저비용 아카이브 스토리지

AWS S3 Glacier는 매우 저렴한 비용으로 데이터를 장기 보관할 수 있는 서비스임.

데이터를 일반적으로 액세스하지 않는 경우에 이용됨.

 

2. 보안 및 신뢰성

AWS는 S3 Glacier에 엄격한 보안 및 신뢰성을 제공함.

데이터는 암호화되어 저장되며, 여러 지리적 위치에 데이터가 복제되어 내구성과 가용성을 보장함.

 

3. 아카이브 특성

S3 Glacier는 데이터를 아카이브로 관리함.

이는 데이터에 대한 접근이 일반적으로 느리며, 데이터를 복원하는 데 시간이 걸릴 수 있다는 것을 의미함.

 

4. 티어

S3 Glacier는 여러 가지 티어를 제공함.

티어는 데이터에 대한 액세스 속도와 비용을 결정함.

예를 들어, Standard 티어는 일부 데이터를 수분 이내에 복원할 수 있지만 비용이 더 비싸며, Expedited 티어는 더 빠른 복원을 제공하지만 더 높은 비용이 발생함.

 

5. 보존 기간

S3 Glacier는 데이터를 최소한으로 보관하는 것을 원칙으로 함.

데이터의 보존 기간을 지정하여 데이터가 얼마 동안 보관되어야 하는지를 결정할 수 있음.

 

6. 아카이브 전송

데이터를 S3 Glacier로 전송하는 데는 몇가지 방법이 있음.

AWS Management Console, AWS CLI, AWS SDK를 사용하여 데이터를 업로드할 수 있음.

 

7. 라이프사이클 정책

데이터를 S3 Glacier로 자동으로 이동하는 데 사용되는 라이프사이클 정책을 설정할 수 있음.

이를 통해 데이터를 효율적으로 관리하고 비용을 절감할 수 있음.

 

---

 

AWS S3의 데이터 암호화 (Data Encryption in AWS S3)

AWS S3는 데이터를 암호화하여 데이터 보안을 강화함.

AWS S3의 데이터 암호화 기능을 사용하면 데이터를 안전하게 보호하고 규정 준수를 충족시킬 수 있음.

암호화 옵션을 선택하고 키를 관리함으로써 데이터 보안을 더욱 강화할 수 있음.

 

AWS S3의 데이터 암호화에 대한 설명

1. 기본 암호화

AWS S3는 기본적으로 데이터를 저장할 때 서버 측 암호화를 사용함.

이는 데이터가 S3에 저장되기 전에 AWS 측에서 자동으로 암호화되는 것을 의미함.

따라서 데이터는 S3에 저장되는 동안 항상 암호화되어 있음.

 

2. 서버 측 암호화 옵션

2.1 SSE-S3 (Server-Side Encryption with S3-Managed Keys)

AWS S3가 관리하는 키를 사용하여 데이터를 암호화함.

고객은 별도로 키를 관리할 필요가 없으며, AWS가 키 관리를 처리함.

2.2 SSE-KMS (Server-Side Encryption with AWS Key Management Service)

AWS Key Management Service(KMS)를 사용하여 데이터를 암호화함.

이 옵션을 선택하면 고객은 KMS를 사용하여 키를 관리하고 액세스 권한을 제어할 수 있음.

2.3 SSE-C (Server-Side Encrytion with Customer-Provided Keys)

고객이 제공한 키를 사용하여 데이터를 암호화함.

이 옵션을 선택하면 고객은 키를 직접 관리하고 S3에 전달해야 함.

 

3. 클라이언트측 암호화

클라이언트 측 암호화를 사용하여 데이터를 암호화한 후에 S3에 업로드할 수 있음.

이 경우 데이터는 클라이언트 측에서 암호화되므로 암호화된 데이터만 S3에 저장됨.

이를 통해 고객은 데이터에 대한 완전한 제어권을 가질 수 있음.

 

4. 암호화 관리 및 감사

AWS KMS와 같은 서비스를 사용하여 암호화 키를 중앙 집중식으로 관리하고 모니터링 할 수 있음.

AWS CloudTrail을 사용하여 데이터 액세스 및 암호화 관련 이벤트를 로깅하고 감사할 수 있음.