티스토리 뷰

Amazon S3(Simple Strorage Service)는

확장성이 뛰어나며 무한대로 저장 가능하고 사용한 만큼만 비용을 지불하는 스토리지 서비스입니다.

주요 특징은 아래와 같습니다.

- 객체 기반의 무제한 파일 저장 스토리지
- URL을 통해 손쉽게 파일 공유 기능 제공
- 정적 웹 사이트 호스팅 서비스 제공

이번에는 S3 를 활용하여 데이터를 클라우드에 업로드, 다운로드, 공개하는 실습을 진행하겠습니다.

 

우선 S3 서비스에 진입합니다.

 

이제 S3 서비스를 이용해 파일을 온라인에 보관하고 인터넷상에서 누구나 접속가능하게 할 수 있습니다.

그렇게 하기 위해서는 우선 파일을 담을 그릇을 만들어야 하는데 이를 버킷(bucket) 이라고 부릅니다.

 

새 버킷을 만듭시다.

 

버킷명은 AWS 내에서 고유한 값으로 구분됩니다. 각자 버킷명을 지정해줍시다.

객체소유권 항목의 ACL은 비활성화로 적용합니다.

 

ACL이 비활성화되면 버킷 소유자는 버킷의 모든 객체를 소유하고 액세스 관리 정책을 사용하여 해당 객체에 대한 액세스를 독점적으로 관리합니다. Amazon S3의 최신 사용 사례 대다수는 더 이상 ACL을 사용할 필요가 없습니다. 각 객체에 대한 액세스를 개별적으로 제어해야 하는 특정 상황을 제외하고는 ACL을 비활성화된 상태로 유지하는 것이 좋습니다. ACL을 비활성화하면 누가 객체를 버킷에 업로드했는지에 관계없이 버킷 소유자가 버킷의 모든 객체에 대한 액세스를 제어할 수 있습니다.

 

원할한 퍼블릭 접근을 위해 ACL 활성화를 선택을 체크해줍니다.

 

기본적으로 새 버킷, 액세스 포인트 및 객체는 퍼블릭 액세스를 허용하지 않습니다. 그러나 사용자는 퍼블릭 액세스를 허용하도록 버킷 정책, 액세스 포인트 정책 또는 객체 권한을 수정할 수 있습니다. S3 퍼블릭 액세스 차단 설정은 이러한 정책 및 권한을 무시하므로 이러한 리소스에 대한 퍼블릭 액세스를 제한할 수 있습니다.

 

Amazon S3 퍼블릭 액세스 차단은 네 가지 설정을 제공합니다. 각각의 설정은 독립적이며 어떤 조합으로든 사용할 수 있습니다. 각 설정은 액세스 포인트, 버킷 또는 전체 AWS 계정에 적용할 수 있습니다. 액세스 포인트, 버킷 또는 계정에 대한 퍼블릭 액세스 차단 설정이 다른 경우 Amazon S3에서는 액세스 포인트, 버킷 및 계정 설정의 가장 제한적인 조합을 적용합니다.

 

[참고] 액세스 포인트, 버킷 및 AWS 계정에 대해서만 퍼블릭 액세스 차단 설정을 사용할 수 있습니다. Amazon S3는 객체별로 퍼블릭 액세스 차단 설정을 지원하지 않습니다. 계정에 퍼블릭 액세스 차단 설정을 적용하면 해당 설정은 전 세계 모든 AWS 리전에 적용됩니다. 설정이 모든 리전에서 즉시 또는 동시에 적용되지는 않지만 결국 모든 리전으로 전파됩니다.

 

아무튼 우리는 퍼블릭 엑세스를 위해 4가지 설정을 모두 해제합니다.

버킷 버전 관리는 파일을 버전별로 관리해서 특정 버전으로 복구할 수 있게 해주는 기능입니다.

버전 관리를 포함하여 그외 세부 설정은 변경하지 않고 버킷 만들기를 실행해줍니다.

 

originalchoi-bucket-everyone 버킷이 생성된 것을 확인할 수 있습니다.

 

버킷명을 클릭해서 세부 정보로 진입합니다.

 

제 PC 에 간단한 문구가 적힌 hello.txt 파일을 생성했습니다.

 

이 파일을 드래그 & 드랍을 통해서 업로드 할 수 있습니다.

 

 

대상 url  s3://originalchoi-bucket-everyone 에

hello.txt 가 반영된 것을 확인했으면 업로드 버튼을 눌러서 작업을 완료합니다.

 

 

이제 hello.txt 파일이 버킷에 저장이 되었고 AWS 에서 안전하게 해당 객체를 보관하고 이용할 수 있습니다.

 

여기서 안전하다는 의미는 가용성이 매우 뛰어나다는 뜻입니다. AWS 는 S3 를 통한 파일 이용에 99.999999999% 수준의 내구성을 가지고 있어 장애와 오류, 위협에 강하다고 보장하는데 이는 파일 하나가 4개 이상의 가용 영역(Availability Zone, AZ)에 자동으로 복제되어 보존되기 때문입니다.

 

* 리전(Region) :  AWS가 전 세계에서 데이터 센터를 클러스터링하는 물리적 위치를 리전이라고 합니다. 논리적 데이터 센터의 각 그룹을 가용 영역이라고 합니다. 각 AWS 리전은 지리적 영역 내에서 격리되고 물리적으로 분리된 최소 3개의 AZ로 구성됩니다. 

 

* 가용영역(AZ) : AZ(가용 영역)는 AWS 리전의 중복 전력, 네트워킹 및 연결이 제공되는 하나 이상의 개별 데이터 센터로 구성됩니다. AZ를 사용하면 단일 데이터 센터를 사용하는 것보다 더 높은 가용성, 내결함성 및 확장성을 갖춘 프로덕션 애플리케이션과 데이터베이스를 운영할 수 있습니다. AZ는 다른 모든 AZ와 수 킬로미터에 상당하는 유의미한 거리를 두고 물리적으로 분리되어 있습니다. 다만 모든 AZ는 서로 100km(60마일) 이내의 거리에 위치합니다.

 

S3 그 외에도 단순 파일 저장 외에도 접근관리, 웹 서버 연동, 쿼리 집계 지원, 간편한 확장 및 축소 등 기존의 물리적 디스크 활용을 넘어선 다양한 기능을 제공해줍니다.

 

 

hello.txt 를 업로드했으니 해당 객체에 진입해서 상세 설정을 확인해봅시다.

 

객체에서 제공되는 객체 URL 을 복사해서 웹브라우저를 통해 접속해 봅니다.

AccessDenied 메세지와 함께 접근이 불가함을 확인할 수 있습니다.

 

하지만 AWS 웹에 접속한 채로 다운로드는 가능합니다.

 

S3 에 파일을 업로드했다고 해서 퍼블릭 엑세스가 기본권한은 아닙니다.

 

중요한건 S3 에 버킷을 생성하고 업로드, 파일 보관, 객체를 다운로드하는데는 비용이 발생한다는 점입니다.

즉 퍼블릭 엑세스가 무조건 좋은 것은 아니기에

기본으로 퍼블릭 차단을 하고 객체 또는 권한 소유자를 구분하여 추가로 엑세스 허용을 해주는 게 기본 정책입니다.

 

이제 객체 권한설정을 통해서 퍼블릭 액세스를 부여해주도록 하겠습니다.

 

버킷에서 객체를 선택해서 ACL 을 사용한 퍼블릭 설정이 가능합니다.

(만약 이 항목이 비활성화 되어 있다면 버킷 설정 - 객체 소유권 - ACL 비활성화를 ACL 활성화로 조정하면 됩니다)

 

해당 객체에 대해 퍼블릭 설정을 적용하고

 

객체 권한을 살펴보면 퍼블릭 액세스 그룹에 대해 읽기 권한이 부여된 것을 확인할 수 있습니다.

 

이제 아까의 url 을 통해서 다시 접속하면 외부에서 해당 객체로 접근이 가능한 것을 확인할 수 있습니다.

객체 속성의 엑세스 제어 목폭 편집 항목에서 발생하는 주의 메세지는

모든 사용자 그룹에게 쓰기 권한 부여를 권장하지 않는다는 내용입니다.

기존 파일의 덮어쓰기, 예상치 못한 비용 문제 등이 발생할 수 있기 때문입니다.

 

현재 수업 샘플 단계에서는 주의항목에 확인 체크를 해줘도, 해주지 안아도 작동하는 데는 영향이 없습니다.

 

 

프리티어 수준의 S3 에서 제공하는 무료 요금정책은 그림과 같습니다.

학습하시는데 참고하면 되겠습니다.

 

 


 

 

[AWS S3 특징]

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

 

Amazon S3란 무엇인가요? - Amazon Simple Storage Service

Amazon S3란 무엇인가요? Amazon Simple Storage Service(Amazon S3)는 업계 최고의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스입니다. 모든 규모와 업종의 고객은 Amazon S3를 사용하

docs.aws.amazon.com

 

[AWS Bucket 사용법]

https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/creating-buckets-s3.html

 

Amazon S3 버킷 생성, 구성 및 작업 - Amazon Simple Storage Service

이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오.

docs.aws.amazon.com

[AWS 버킷 퍼블릭 엑세스 차단 상세 설명]

https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/access-control-block-public-access.html

 

Amazon S3 스토리지에 대한 퍼블릭 액세스 차단 - Amazon Simple Storage Service

Amazon S3 스토리지에 대한 퍼블릭 액세스 차단 Amazon S3 퍼블릭 액세스 차단 기능은 액세스 포인트, 버킷 및 계정에 대한 설정을 제공하여 Amazon S3 리소스에 대한 퍼블릭 액세스를 관리하는 데 도움

docs.aws.amazon.com

 

728x90
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
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
글 보관함