해당 포스트는 Amazon Web Services Korea youtube 강의를 듣고 작성되었습니다.
S3 → Stands for Simple Storage Solution
- 사용자가 파일을 업로드해서 첨부되는 서비스라고 가정했을 시, 사용자가 파일을 서버로 전송하면 미들웨어(프로그래밍 언어)가 s3의 api를 통해 전송해주고 그 전송한것을 사용자에게 보여주는 원리
- 확장성 + 데이터 가용성 + 보안 + 성능을 제공하는 오브젝트 스토리지 서비스
- API, AWS SDK, CLI, S3 콘솔, AWS 또는 3rd 파티 도구로 접근함
- 광범위한 비용 효율적 스토리지 클래스
- 타의 추종을 허가하지 않는 보안, 규정 준수, 감사 기능도 갖고있음
- 쉬운 데이터 관리와 액세스 제어도 함
- 분석을 위한 쿼리 인 플레이스 서비스도 갖고있음
- 오브젝트 자체에 메타데이터와 실 데이터가 같이 있고, 디렉터리 구조가 아닌 하나의 URL로 온전하게 표현되는 특징을 갖고있음
S3 오브젝트 복제
- Single Region Replication : 같은 리전에서 오브젝트 복제가 가능하다
- Cross Region Replication : 서로 다른 리전간의 오브젝트가 복제가 가능하다
- 기간을 설정해서 서로 다른 버킷으로 오브젝트가 복제가 가능함
- SLA(Service-Level Agreement)를 만족하고 정책 기반으로 오브젝트 복제가 가능함
👉🏽 S3의 멀티 복제 대상 기능을 통해 동일한 리전 내의 여러 버킷 혹은 다른 리전에 있는 버킷 등으로 데이터를 복제할 수 있다. 이를 통해 다른 스토리지 클래스로 개체를 복제해 비용을 절감하고, 데이터 백업 계획을 유연하게 세울수 있다.
Amazon S3 Storage Lens
👉🏽 조직 전반에서 사용중인 스토리지에 대해 대략적으로 제공하는 분석 솔루션도 제공중
how to setup bucket
- 버킷 설정하기
- CORS (ajax 통신시 웹페이지를 다운로드 해주는 서버와 다른 도메인의 서버와 데이터를 ajax를 통해 연동시켜줄 때 보안 제약 사항에 따라 데이터를 통신할 수 없음. 이 데이터를 제공하는 쪽에서 cors를 설정해주면 이 설정한것에 따라 브라우저는 작동함. 다른 브라우저라고 할지라도) 그런 정책을 기술하는 곳이 cors editor임.
- website tap → S3를 운영할 때 정적인 데이터를 올리는 곳. 프로그래밍 적으로 생산하는 곳이 아닌 html 단독적으로 사용할 때 이 탭에 업로드 할 수 있음. JSP를 사용한 html과 같은 경우에는 EC2 서비스를 사용하여야함 S3는 정적!!! index document 에 html 파일 업로드 해두어야함.
- notification → 데이터 유실 관리 아마존에서
- Lifecycle rule → 버킷안에 저장되어있는 객체들의 라이프사이클을 지정하는 곳. 객체별로 관리도 가능하다.
- Time period format에서 days from the creation date는 각각의 객체가 생성된것 부터 실시하는거고 date는 특정 날짜로부터 통째로 라이프사이클을 생성하는 것
- transition 은 저장 / expiration은 삭제 (날짜 기준)