2017-11-08 16 views
0

Blockquote 저는 Amazon S3를 처음 사용합니다. 파이썬 스크립트를 사용하여 하나 이상의 버켓을 만들려고하는데, 아래 오류가 발생합니다.CEPH 클러스터에서 Amazon S3를 사용하는 버킷 둘 이상이 오류 코드 503으로 실패합니다.

Traceback (most recent call last): 
 
    File "PythonS3.py", line 8, in <module> 
 
    bucket2 = conn.create_bucket('my-new-bucket2') 
 
    File "/home/vivekanand/.local/lib/python2.7/site-packages/boto/s3/connection.py", line 619, in create_bucket 
 
    data=data) 
 
    File "/home/vivekanand/.local/lib/python2.7/site-packages/boto/s3/connection.py", line 671, in make_request 
 
    retry_handler=retry_handler 
 
    File "/home/vivekanand/.local/lib/python2.7/site-packages/boto/connection.py", line 1071, in make_request 
 
    retry_handler=retry_handler) 
 
    File "/home/vivekanand/.local/lib/python2.7/site-packages/boto/connection.py", line 1028, in _mexe 
 
    raise BotoServerError(response.status, response.reason, body) 
 
boto.exception.BotoServerError: BotoServerError: 503 Slow Down 
 
<?xml version="1.0" encoding="UTF-8"?><Error><Code>SlowDown</Code></Error>

한 통이 성공적으로 생성됩니다 : 아래

import boto 
 
import boto.s3.connection 
 
access_key = 'xxx' 
 
secret_key = 'xxxxxxx==' 
 

 
conn = boto.connect_s3(aws_access_key_id = access_key,aws_secret_access_key = secret_key,host = '127.0.0.1',port = 8000,is_secure=False,    calling_format = boto.s3.connection.OrdinaryCallingFormat(),) 
 
bucket = conn.create_bucket('my-new-bucket') 
 
bucket2 = conn.create_bucket('my-new-bucket2') 
 
bucket3 = conn.create_bucket('my-new-bucket3')

는 오류 메시지입니다. 그러나 두 번째 버킷 버킷 생성은 오류 코드 503과 함께 실패합니다.

답변

1

Amazon에서 버킷 작성 작업을 조절하고 있습니다. 아마존은 빠른 속도로 연속해서 버킷 하나를 생성하기를 원하지 않습니다. 만들 수있는 버킷 수 (100 개)로 제한됩니다. Amazon에서 버킷 생성 작업을 조절하는 이유를 알지 못합니다. 아마도 저장소를 설정하기 위해 내부적으로 비용이 많이 드는 작업 일 수 있습니다.

+0

답변 해 주셔서 감사합니다. 그래, 나는 같은 것을 알아 냈다. 필자의 경우이 사용자 ID에 대한 최대 허용 버킷 생성 요청은 시간당 1이었다. 그것이 내가이 오류를 얻은 이유입니다. –

+0

OP가 클라이언트로 boto와 함께 정품이 아닌 S3를 에뮬레이트하는 ceph를 사용하고있는 것처럼 들립니다. S3의 경우 모든 지역에서 모든 버킷의 존재 및 위치를 알기 때문에 버킷 생성은 예상 한대로 비용이 많이 드는 작업입니다. [* "중앙 집중식 글로벌 리소스 공간에 대해 버킷 작업이 수행되므로 응용 프로그램의 고 가용성 코드 경로에서 버킷을 만들거나 삭제하는 것은 적절하지 않습니다. 별도의 초기화 또는 설정 루틴에서 버킷을 만들거나 삭제하는 것이 좋습니다 자주 사용하지 않는 것이 좋습니다. "* (http://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html) –