메뉴
Amazon Simple Storage Service
개발자 안내서 (API Version 2006-03-01)

버킷 규제 및 제한

버킷은 해당 버킷을 AWS 계정의 소유입니다. 기본적으로 AWS 계정 각각에 대해 최대 100개의 버킷을 만들 수 있습니다. 추가로 버킷이 필요할 경우 서비스 한도 향상을 제출하여 버킷 한도를 늘릴 수 있습니다. 버킷 한도를 늘리는 방법은 AWS 일반 참조AWS Service Limits를 참조하십시오.

버킷 소유권은 양도할 수 없지만 버킷이 비어 있을 경우 삭제할 수는 있습니다. 버킷을 삭제하면 해당 이름을 다시 사용할 수 있지만, 다양한 이유로 인해 사용이 불가능할 수 있습니다. 예를 들어 다른 계정이 해당 이름으로 버킷을 만들었을 수 있습니다. 또한 다시 이름을 사용할 수 있기까지 시간이 걸릴 수 있습니다. 따라서 같은 버킷 이름을 사용하려 한다면 버킷을 삭제하지 마십시오.

버킷에 저장할 수 있는 객체 수에는 제한이 없으며, 버킷 수가 많든 적든 성능에는 차이가 없습니다. 모든 객체를 하나의 버킷에 저장하거나, 여러 버킷에 저장할 수 있습니다.

버킷 내에 다른 버킷을 만들 수는 없습니다.

Amazon S3의 고가용성 설계는 get, put, list, delete 작업에 중점을 두고 있습니다. 버킷 작업은 중앙의 전역 리소스 공간에 영향을 주기 때문에 애플리케이션의 고가용성 코드 경로에 버킷을 만들거나 삭제하는 것은 좋지 않습니다. 자주 실행하지 않는 별도의 초기화 루틴이나 설정 루틴에서 버킷을 만들거나 삭제하는 것이 좋습니다.

참고

애플리케이션에서 자동으로 버킷을 생성할 경우, 이름 충돌 가능성이 낮은 버킷 이름 지정 체계를 선택합니다. 버킷 이름이 이미 사용 중이면 애플리케이션 로직에서 다른 버킷 이름을 선택합니다.

버킷 이름 지정 규칙

모든 버킷 이름은 DNS 이름 지정 규칙을 준수하는 것이 좋습니다. 이러한 규칙은 미국 동부(버지니아 북부) 리전을 제외한 모든 리전에서 적용됩니다.

참고

AWS Management Console을 사용할 경우, 버킷 이름은 모든 리전에서 DNS를 준수해야 합니다.

DNS를 준수하는 버킷 이름을 통해 고객은 새 기능을 활용하고 운영 향상의 혜택을 얻을 수 있으며, 버킷에 대해 가상 호스팅 방식의 액세스를 지원할 수 있습니다. 현재 미국 동부(버지니아 북부) 리전에서는 DNS를 준수하지 않는 버킷 이름 지정을 허용하지만, 앞으로 몇 달 내에 DNS를 준수하는 버킷 이름 지정 규칙으로 전환할 것입니다. 따라서 Amazon S3 버킷에 대해 하나의 일관적인 이름 지정 방식이 사용될 것입니다. DNS를 준수하는 버킷 이름에 대한 규칙은 다음과 같습니다.

  • 버킷 이름은 3자 이상, 63자 이하여야 합니다.

  • 버킷 이름은 한 개 이상으로 구성된 일련의 레이블이어야 합니다. 각 레이블은 마침표(.)로 구분합니다. 버킷 이름은 소문자, 숫자, 하이픈(-)을 포함할 수 있습니다. 각 레이블은 소문자나 숫자로 시작하고 끝나야 합니다.

  • 버킷 이름은 IP 주소 형식(예: 192.168.5.4)을 사용하지 않습니다.

  • SSL과 함께 가상 호스팅 방식의 버킷을 사용할 경우, SSL 와일드카드 인증서는 마침표를 포함하지 않는 버킷에만 매핑됩니다. 이 문제를 해결하려면 HTTP를 사용하거나, 인증서 확인 로직을 직접 작성합니다. 버킷 이름에는 마침표(".")를 사용하지 않는 것이 좋습니다.

다음은 잘못된 버킷 이름의 예입니다.

잘못된 버킷 이름 의견
.myawsbucket 버킷 이름은 마침표(.)로 시작할 수 없습니다.
myawsbucket. 버킷 이름은 마침표(.)로 끝날 수 없습니다.
my..examplebucket 레이블 사이에는 마침표 한 개만 사용합니다.

DNS를 준수하지 않은 버킷 이름의 문제점

현재 미국 동부(버지니아 북부) 리전은 버킷 이름 지정에 유연한 기준을 적용하며 따라서 DNS를 준수하지 않은 버킷 이름이 사용될 수 있습니다. 예를 들어 MyAWSBucket은 대문자를 포함하고 있지만 유효한 버킷 이름입니다. 이 버킷에 가상 호스팅 방식의 요청(http://MyAWSBucket.s3.amazonaws.com/yourobject)을 사용하여 액세스할 경우, URL은 MyAWSBucket 버킷이 아닌 myawsbucket 버킷으로 변환됩니다. 이에 대한 응답으로 Amazon S3는 "버킷을 찾을 수 없음(bucket not found)"이라는 오류를 반환합니다.

이러한 문제를 방지하기 위해 버킷을 생성하는 리전에 상관없이 항상 DNS 호환 버킷 이름을 사용하는 것이 모범 사례입니다. 버킷에 대한 가상 호스팅 방식의 액세스에 대한 자세한 내용은 버킷의 가상 호스팅을 참조하십시오.

Amazon S3 Transfer Acceleration에 사용되는 버킷의 이름은 DNS를 따라야 하며 마침표(".")를 포함할 수 없습니다. Transfer Acceleration에 대한 자세한 내용은 Amazon S3 Transfer Acceleration 단원을 참조하십시오.

미국 동부(버지니아 북부) 리전의 버킷 이름에 대한 규칙에서는 최대 255자의 버킷 이름을 허용하며, 버킷 이름에 대문자, 소문자, 숫자, 마침표(.), 하이픈(-), 밑줄(_)을 조합하여 사용할 수 있습니다.

이 페이지에서: