3.4. S3 개체 작업
개발자는 Ceph Object Gateway를 통해 Amazon S3 API(애플리케이션 프로그래밍 인터페이스)를 사용하여 오브젝트 작업을 수행할 수 있습니다.
다음 표에는 함수의 지원 상태와 함께 오브젝트에 대한 Amazon S3 기능 작업이 나열되어 있습니다.
기능 | 상태 |
---|---|
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
지원됨 | |
멀티 테넌시 | 지원됨 |
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- RESTful 클라이언트입니다.
3.4.1. S3 버킷에서 오브젝트 가져오기
버킷에서 오브젝트를 검색합니다.
구문
GET /BUCKET/OBJECT HTTP/1.1
versionId
하위 리소스를 추가하여 특정 버전의 오브젝트를 검색합니다.
구문
GET /BUCKET/OBJECT?versionId=VERSION_ID HTTP/1.1
요청 헤더
partNumber
- 설명
-
읽을 개체의 일부입니다. 이렇게 하면 지정된 부분에 대해 범위가 지정된
GET
요청이 활성화됩니다. 이 요청을 사용하면 오브젝트의 일부만 다운로드하는 데 유용합니다. - 유효한 값
- 1에서 10,000 사이의 양의 정수입니다.
- 필수 항목
- 없음
범위
- 설명
검색할 개체의 범위입니다.
참고GET 요청당 여러 데이터 범위가 지원되지 않습니다.
- 유효한 값
- Range:bytes=beginbyte-endbyte
- 필수 항목
- 없음
if-modified-since
- 설명
- 타임스탬프 이후 수정된 경우에만 가져옵니다.
- 유효한 값
- Timestamp
- 필수 항목
- 없음
if-unmodified-since
- 설명
- 타임스탬프 이후 수정되지 않은 경우에만 가져옵니다.
- 유효한 값
- Timestamp
- 필수 항목
- 없음
if-match
- 설명
- ETag 오브젝트가 ETag와 일치하는 경우에만 가져옵니다.
- 유효한 값
- 엔터티 태그
- 필수 항목
- 없음
if-none-match
- 설명
- ETag 오브젝트가 ETag와 일치하는 경우에만 가져옵니다.
- 유효한 값
- 엔터티 태그
- 필수 항목
- 없음
요청 헤더가 있는 Sytnax
GET /BUCKET/OBJECT?partNumber=PARTNUMBER&versionId=VersionId HTTP/1.1 Host: Bucket.s3.amazonaws.com If-Match: IfMatch If-Modified-Since: IfModifiedSince If-None-Match: IfNoneMatch If-Unmodified-Since: IfUnmodifiedSince Range: Range
응답 헤더
content-Range
- 설명
- 데이터 범위(data range)는 헤더 필드가 요청에 지정된 경우에만 반환됩니다.
x-amz-version-id
- 설명
- 버전 ID 또는 null을 반환합니다.
3.4.2. S3 개체에 대한 정보 가져오기
개체에 대한 정보를 반환합니다. 이 요청은 Get Object 요청과 동일한 헤더 정보를 반환하지만 오브젝트 데이터 페이로드가 아닌 메타데이터만 포함합니다.
현재 버전의 오브젝트를 검색합니다.
구문
HEAD /BUCKET/OBJECT HTTP/1.1
versionId
하위 리소스를 추가하여 특정 버전에 대한 정보를 검색합니다.
구문
HEAD /BUCKET/OBJECT?versionId=VERSION_ID HTTP/1.1
요청 헤더
범위
- 설명
- 검색할 개체의 범위입니다.
- 유효한 값
- Range:bytes=beginbyte-endbyte
- 필수 항목
- 없음
if-modified-since
- 설명
- 타임스탬프 이후 수정된 경우에만 가져옵니다.
- 유효한 값
- Timestamp
- 필수 항목
- 없음
if-match
- 설명
- ETag 오브젝트가 ETag와 일치하는 경우에만 가져옵니다.
- 유효한 값
- 엔터티 태그
- 필수 항목
- 없음
if-none-match
- 설명
- ETag 오브젝트가 ETag와 일치하는 경우에만 가져옵니다.
- 유효한 값
- 엔터티 태그
- 필수 항목
- 없음
응답 헤더
x-amz-version-id
- 설명
- 버전 ID 또는 null을 반환합니다.
3.4.3. S3 put 개체 잠금
put 오브젝트 잠금 API는 선택한 버킷에 잠금 구성을 배치합니다. 오브젝트 잠금을 사용하면WORM( Write-once-read-many) 모델을 사용하여 오브젝트를 저장할 수 있습니다. 개체 잠금을 사용하면 고정 시간 또는 무기한 오브젝트를 삭제하거나 덮어쓰지 않도록 합니다. 개체 잠금 구성에 지정된 규칙은 기본적으로 선택한 버킷에 배치된 모든 새 오브젝트에 적용됩니다.
버킷을 생성할 때 개체 잠금을 활성화하지 못하면 작업이 실패합니다.
구문
PUT /BUCKET?object-lock HTTP/1.1
예제
PUT /testbucket?object-lock HTTP/1.1
요청 엔티티
ObjectLockConfiguration
- 설명
- 요청에 대한 컨테이너입니다.
- 유형
- 컨테이너
- 필수 항목
- 제공됨
ObjectLockEnabled
- 설명
- 이 버킷에 개체 잠금 구성이 활성화되어 있는지 여부를 나타냅니다.
- 유형
- 문자열
- 필수 항목
- 제공됨
Rule
- 설명
- 지정된 버킷에 대한 개체 잠금 규칙입니다.
- 유형
- 컨테이너
- 필수 항목
- 없음
DefaultRetention
- 설명
- 지정된 버킷에 배치된 새 오브젝트에 적용되는 기본 보존 기간입니다.
- 유형
- 컨테이너
- 필수 항목
- 없음
mode
- 설명
- 기본 개체 잠금 모드입니다. 유효한 값: GOVERNANCE/COMPLIANCE.
- 유형
- 컨테이너
- 필수 항목
- 제공됨
days
- 설명
- 기본 보존 기간에 지정된 일 수입니다.
- 유형
- 정수
- 필수 항목
- 없음
년
- 설명
- 기본 보존 기간에 지정된 연도 수입니다.
- 유형
- 정수
- 필수 항목
- 없음
HTTP 응답
400
- 상태 코드
-
MalformedXML
- 설명
- XML 형식이 올바르지 않습니다.
409
- 상태 코드
-
InvalidBucketState
- 설명
- 버킷 오브젝트 잠금이 활성화되지 않습니다.
추가 리소스
- 이 API 호출에 대한 자세한 내용은 S3 API 를 참조하십시오.
3.4.4. S3 get 개체 잠금
get 오브젝트 잠금 API는 버킷에 대한 잠금 구성을 검색합니다.
구문
GET /BUCKET?object-lock HTTP/1.1
예제
GET /testbucket?object-lock HTTP/1.1
응답 엔티티
ObjectLockConfiguration
- 설명
- 요청에 대한 컨테이너입니다.
- 유형
- 컨테이너
- 필수 항목
- 제공됨
ObjectLockEnabled
- 설명
- 이 버킷에 개체 잠금 구성이 활성화되어 있는지 여부를 나타냅니다.
- 유형
- 문자열
- 필수 항목
- 제공됨
Rule
- 설명
- 지정된 버킷에 대한 개체 잠금 규칙이 있습니다.
- 유형
- 컨테이너
- 필수 항목
- 없음
DefaultRetention
- 설명
- 지정된 버킷에 배치된 새 오브젝트에 적용되는 기본 보존 기간입니다.
- 유형
- 컨테이너
- 필수 항목
- 없음
mode
- 설명
- 기본 개체 잠금 모드입니다. 유효한 값: GOVERNANCE/COMPLIANCE.
- 유형
- 컨테이너
- 필수 항목
- 제공됨
days
- 설명
- 기본 보존 기간에 지정된 일 수입니다.
- 유형
- 정수
- 필수 항목
- 없음
년
- 설명
- 기본 보존 기간에 지정된 연도 수입니다.
- 유형
- 정수
- 필수 항목
- 없음
추가 리소스
- 이 API 호출에 대한 자세한 내용은 S3 API 를 참조하십시오.
3.4.5. S3 put object legal hold
put 개체 legal hold API는 선택한 오브젝트에 법적 유지 구성을 적용합니다. 적법한 유지로 오브젝트 버전을 덮어쓰거나 삭제할 수 없습니다. 법적 유지에는 관련 보관 기간이 없으며 명시적으로 삭제할 때까지 그대로 유지됩니다.
구문
PUT /BUCKET/OBJECT?legal-hold&versionId= HTTP/1.1
예제
PUT /testbucket/testobject?legal-hold&versionId= HTTP/1.1
versionId
하위 리소스는 특정 버전의 오브젝트를 검색합니다.
요청 엔티티
LegalHold
- 설명
- 요청에 대한 컨테이너입니다.
- 유형
- 컨테이너
- 필수 항목
- 제공됨
상태
- 설명
- 지정된 개체에 법적 보유가 있는지 여부를 나타냅니다.Indicates whether the specified object has a legal hold in place. 유효한 값: ON/OFF
- 유형
- 문자열
- 필수 항목
- 제공됨
추가 리소스
- 이 API 호출에 대한 자세한 내용은 S3 API 를 참조하십시오.
3.4.6. S3 개체의 법적 유지를 가져옵니다.
get object legal hold API는 오브젝트의 현재 법적 유지 상태를 검색합니다.
구문
GET /BUCKET/OBJECT?legal-hold&versionId= HTTP/1.1
예제
GET /testbucket/testobject?legal-hold&versionId= HTTP/1.1
versionId
하위 리소스는 특정 버전의 오브젝트를 검색합니다.
응답 엔티티
LegalHold
- 설명
- 요청에 대한 컨테이너입니다.
- 유형
- 컨테이너
- 필수 항목
- 제공됨
상태
- 설명
- 지정된 개체에 법적 보유가 있는지 여부를 나타냅니다.Indicates whether the specified object has a legal hold in place. 유효한 값: ON/OFF
- 유형
- 문자열
- 필수 항목
- 제공됨
추가 리소스
- 이 API 호출에 대한 자세한 내용은 S3 API 를 참조하십시오.
3.4.7. S3 put 오브젝트 보존
put 오브젝트 보존 API는 오브젝트 보존 구성을 오브젝트에 배치합니다. 보존 기간은 고정된 기간 동안 오브젝트 버전을 보호합니다. 거버넌스 모드와 규정 준수 모드의 두 가지 모드가 있습니다. 이 두 가지 보존 모드는 오브젝트에 다른 수준의 보호가 적용됩니다.
이 기간 동안 오브젝트는 WORM 보호( Write-once-read-many
)이며 덮어쓰거나 삭제할 수 없습니다.
구문
PUT /BUCKET/OBJECT?retention&versionId= HTTP/1.1
예제
PUT /testbucket/testobject?retention&versionId= HTTP/1.1
versionId
하위 리소스는 특정 버전의 오브젝트를 검색합니다.
요청 엔티티
보존
- 설명
- 요청에 대한 컨테이너입니다.
- 유형
- 컨테이너
- 필수 항목
- 제공됨
mode
- 설명
- 지정된 오브젝트의 보존 모드입니다. 유효한 값: GOVERNANCE/COMPLIANCE
- 유형
- 문자열
- 필수 항목
- 제공됨
RetainUntilDate
- 설명
- 보존 날짜. 형식: 2020-01-05T00:00:00.000Z
- 유형
- Timestamp
- 필수 항목
- 제공됨
추가 리소스
- 이 API 호출에 대한 자세한 내용은 S3 API 를 참조하십시오.
3.4.8. S3 get 오브젝트 보존
get 오브젝트 보존 API는 오브젝트에서 오브젝트 보존 구성을 검색합니다.
구문
GET /BUCKET/OBJECT?retention&versionId= HTTP/1.1
예제
GET /testbucket/testobject?retention&versionId= HTTP/1.1
versionId
하위 리소스는 특정 버전의 오브젝트를 검색합니다.
응답 엔티티
보존
- 설명
- 요청에 대한 컨테이너입니다.
- 유형
- 컨테이너
- 필수 항목
- 제공됨
mode
- 설명
- 지정된 오브젝트의 보존 모드입니다. 유효한 값: GOVERNANCE/COMPLIANCE
- 유형
- 문자열
- 필수 항목
- 제공됨
RetainUntilDate
- 설명
- 보존 날짜. 형식: 2020-01-05T00:00:00.000Z
- 유형
- Timestamp
- 필수 항목
- 제공됨
추가 리소스
- 이 API 호출에 대한 자세한 내용은 S3 API 를 참조하십시오.
3.4.9. S3 put 오브젝트 태깅
put 오브젝트 태그 지정 API는 태그를 오브젝트와 연결합니다. 태그는 키-값 쌍입니다. 다른 버전의 태그를 배치하려면 versionId
쿼리 매개변수를 사용합니다. s3:PutObjectTagging
작업을 수행할 수 있는 권한이 있어야 합니다. 기본적으로 버킷 소유자는 이 권한을 가지며 이 권한을 다른 사용자에게 부여할 수 있습니다.
구문
PUT /BUCKET/OBJECT?tagging&versionId= HTTP/1.1
예제
PUT /testbucket/testobject?tagging&versionId= HTTP/1.1
요청 엔티티
태그 지정
- 설명
- 요청에 대한 컨테이너입니다.
- 유형
- 컨테이너
- 필수 항목
- 제공됨
TagSet
- 설명
- 태그 세트 컬렉션입니다.
- 유형
- 문자열
- 필수 항목
- 제공됨
추가 리소스
- 이 API 호출에 대한 자세한 내용은 S3 API 를 참조하십시오.
3.4.10. S3 오브젝트 태그 가져오기
get 오브젝트 태그 API는 오브젝트 태그를 반환합니다. 기본적으로 GET
작업은 현재 오브젝트 버전에 대한 정보를 반환합니다.
버전된 버킷의 경우 버킷에 여러 버전의 오브젝트가 있을 수 있습니다. 다른 버전의 태그를 검색하려면 요청에 versionId
쿼리 매개변수를 추가합니다.
구문
GET /BUCKET/OBJECT?tagging&versionId= HTTP/1.1
예제
GET /testbucket/testobject?tagging&versionId= HTTP/1.1
추가 리소스
- 이 API 호출에 대한 자세한 내용은 S3 API 를 참조하십시오.
3.4.11. S3 삭제 오브젝트 태그
delete 오브젝트 태그 지정 API는 지정된 오브젝트에서 전체 태그 세트를 제거합니다. 이 작업을 사용하려면 s3:DeleteObjectTagging
작업을 수행할 수 있는 권한이 있어야 합니다.
특정 오브젝트 버전의 태그를 삭제하려면 요청에 versionId
쿼리 매개변수를 추가합니다.
구문
DELETE /BUCKET/OBJECT?tagging&versionId= HTTP/1.1
예제
DELETE /testbucket/testobject?tagging&versionId= HTTP/1.1
추가 리소스
- 이 API 호출에 대한 자세한 내용은 S3 API 를 참조하십시오.
3.4.12. S3 버킷에 오브젝트 추가
오브젝트를 버킷에 추가합니다. 이 작업을 수행하려면 버킷에 대한 쓰기 권한이 있어야 합니다.
구문
PUT /BUCKET/OBJECT HTTP/1.1
요청 헤더
content-md5
- 설명
- 메시지의 base64로 인코딩된 MD-5 해시입니다.
- 유효한 값
- 문자열입니다. 기본값 또는 제약 조건이 없습니다.
- 필수 항목
- 없음
content-type
- 설명
- 표준 MIME 유형.
- 유효한 값
-
모든 MIME 유형. 기본값:
binary/octet-stream
. - 필수 항목
- 없음
x-amz-meta-<…>*
- 설명
- 사용자 메타데이터입니다. 오브젝트와 함께 저장됩니다.
- 유효한 값
- 최대 8kb의 문자열입니다. 기본값 없음.
- 필수 항목
- 없음
x-amz-acl
- 설명
- A Canned ACL입니다.
- 유효한 값
-
private
,public-read
,public-read-write
,authenticated-read
- 필수 항목
- 없음
응답 헤더
x-amz-version-id
- 설명
- 버전 ID 또는 null을 반환합니다.
3.4.13. S3 오브젝트 삭제
개체를 제거합니다. 포함된 버킷에 WRITE 권한이 설정되어 있어야 합니다.
오브젝트를 삭제합니다. 오브젝트 버전 관리의 경우 마커를 생성합니다.
구문
DELETE /BUCKET/OBJECT HTTP/1.1
버전 지정 시 오브젝트를 삭제하려면 versionId
하위 리소스 및 삭제할 오브젝트 버전을 지정해야 합니다.
DELETE /BUCKET/OBJECT?versionId=VERSION_ID HTTP/1.1
3.4.14. S3 여러 오브젝트 삭제
이 API 호출은 버킷에서 여러 오브젝트를 삭제합니다.
구문
POST /BUCKET/OBJECT?delete HTTP/1.1
3.4.15. S3 오브젝트의 ACL(액세스 제어 목록)을 가져옵니다.
현재 오브젝트 버전에 대한 ACL을 반환합니다.
구문
GET /BUCKET/OBJECT?acl HTTP/1.1
versionId
하위 리소스를 추가하여 특정 버전에 대한 ACL을 검색합니다.
구문
GET /BUCKET/OBJECT?versionId=VERSION_ID&acl HTTP/1.1
응답 헤더
x-amz-version-id
- 설명
- 버전 ID 또는 null을 반환합니다.
응답 엔티티
AccessControlPolicy
- 설명
- 응답을 위한 컨테이너입니다.
- 유형
- 컨테이너
AccessControlList
- 설명
- ACL 정보에 대한 컨테이너입니다.
- 유형
- 컨테이너
소유자
- 설명
-
버킷 소유자의
ID
및DisplayName
에 대한 컨테이너입니다. - 유형
- 컨테이너
ID
- 설명
- 버킷 소유자의 ID입니다.
- 유형
- 문자열
DisplayName
- 설명
- 버킷 소유자의 표시 이름입니다.
- 유형
- 문자열
grant
- 설명
-
Grantee
및Permission
을 위한 컨테이너입니다. - 유형
- 컨테이너
grantee
- 설명
-
권한 부여를 수신하는 사용자의
DisplayName
및ID
에 대한 컨테이너입니다. - 유형
- 컨테이너
권한
- 설명
-
grantee 버킷에 부여된
권한
입니다. - 유형
- 문자열
3.4.16. S3 오브젝트의 ACL(액세스 제어 목록) 설정
현재 오브젝트 버전에 대한 오브젝트 ACL을 설정합니다.
구문
PUT /BUCKET/OBJECT?acl
요청 엔티티
AccessControlPolicy
- 설명
- 응답을 위한 컨테이너입니다.
- 유형
- 컨테이너
AccessControlList
- 설명
- ACL 정보에 대한 컨테이너입니다.
- 유형
- 컨테이너
소유자
- 설명
-
버킷 소유자의
ID
및DisplayName
에 대한 컨테이너입니다. - 유형
- 컨테이너
ID
- 설명
- 버킷 소유자의 ID입니다.
- 유형
- 문자열
DisplayName
- 설명
- 버킷 소유자의 표시 이름입니다.
- 유형
- 문자열
grant
- 설명
-
Grantee
및Permission
을 위한 컨테이너입니다. - 유형
- 컨테이너
grantee
- 설명
-
권한 부여를 수신하는 사용자의
DisplayName
및ID
에 대한 컨테이너입니다. - 유형
- 컨테이너
권한
- 설명
-
grantee 버킷에 부여된
권한
입니다. - 유형
- 문자열
3.4.17. S3 개체 복사
오브젝트를 복사하려면 PUT
를 사용하여 대상 버킷과 오브젝트 이름을 지정합니다.
구문
PUT /DEST_BUCKET/DEST_OBJECT HTTP/1.1 x-amz-copy-source: SOURCE_BUCKET/SOURCE_OBJECT
요청 헤더
x-amz-copy-source
- 설명
- 소스 버킷 이름 + 오브젝트 이름입니다.
- 유효한 값
-
버킷 /오브젝트
- 필수 항목
- 제공됨
x-amz-acl
- 설명
- A Canned ACL입니다.
- 유효한 값
-
private
,public-read
,public-read-write
,authenticated-read
- 필수 항목
- 없음
x-amz-copy-if-modified-since
- 설명
- 타임스탬프 이후 수정된 경우에만 복사합니다.
- 유효한 값
- Timestamp
- 필수 항목
- 없음
x-amz-copy-if-unmodified-since
- 설명
- 타임스탬프 이후 수정되지 않은 경우에만 복사됩니다.
- 유효한 값
- Timestamp
- 필수 항목
- 없음
x-amz-copy-if-match
- 설명
- ETag 오브젝트가 ETag와 일치하는 경우에만 복사합니다.
- 유효한 값
- 엔터티 태그
- 필수 항목
- 없음
x-amz-copy-if-none-match
- 설명
- ETag 오브젝트가 ETag와 일치하는 경우에만 복사합니다.
- 유효한 값
- 엔터티 태그
- 필수 항목
- 없음
응답 엔티티
CopyObjectResult
- 설명
- 응답 요소에 대한 컨테이너입니다.
- 유형
- 컨테이너
LastModified
- 설명
- 소스 오브젝트의 마지막으로 수정된 날짜입니다.
- 유형
- 날짜
etag
- 설명
- 새 오브젝트의 ETag입니다.
- 유형
- 문자열
3.4.18. S3 HTML 양식을 사용하여 버킷에 오브젝트 추가
HTML 양식을 사용하여 버킷에 오브젝트를 추가합니다. 이 작업을 수행하려면 버킷에 대한 쓰기 권한이 있어야 합니다.
구문
POST /BUCKET/OBJECT HTTP/1.1
3.4.19. S3 요청에 대한 결정 옵션
실제 요청을 특정 origin, HTTP 메서드 및 헤더로 보낼 수 있는지 확인하는 사전 요청입니다.
구문
OPTIONS /OBJECT HTTP/1.1
3.4.20. S3에서 멀티 파트 업로드 시작
멀티 파트 업로드 프로세스를 시작합니다. UploadId
를 반환하며, 추가 부분을 추가할 때 지정할 수 있으며, 파트를 나열하며, 다중 파트 업로드를 완료 또는 포기할 수 있습니다.
구문
POST /BUCKET/OBJECT?uploads
요청 헤더
content-md5
- 설명
- 메시지의 base64로 인코딩된 MD-5 해시입니다.
- 유효한 값
- 문자열입니다. 기본값 또는 제약 조건이 없습니다.
- 필수 항목
- 없음
content-type
- 설명
- 표준 MIME 유형.
- 유효한 값
-
모든 MIME 유형. 기본값:
binary/octet-stream
- 필수 항목
- 없음
x-amz-meta-<…>
- 설명
- 사용자 메타데이터입니다. 오브젝트와 함께 저장됩니다.
- 유효한 값
- 최대 8kb의 문자열입니다. 기본값 없음.
- 필수 항목
- 없음
x-amz-acl
- 설명
- A Canned ACL입니다.
- 유효한 값
-
private
,public-read
,public-read-write
,authenticated-read
- 필수 항목
- 없음
응답 엔티티
InitiatedMultipartUploadsResult
- 설명
- 결과에 대한 컨테이너입니다.
- 유형
- 컨테이너
bucket
- 설명
- 오브젝트 콘텐츠를 수신할 버킷입니다.
- 유형
- 문자열
키
- 설명
-
키 요청 매개변수로 지정된
키
(있는 경우)입니다. - 유형
- 문자열
UploadId
- 설명
-
다중 파트 업로드를 식별하는
upload-id
요청 매개변수로 지정된 ID입니다(있는 경우). - 유형
- 문자열
3.4.21. S3 다중 파트 업로드에 추가
다중 파트 업로드에 부분을 추가합니다.
multi-part 업로드에 부분을 추가하려면 uploadId
하위 소스 및 업로드 ID를 지정합니다.
구문
PUT /BUCKET/OBJECT?partNumber=&uploadId=UPLOAD_ID HTTP/1.1
다음 HTTP 응답이 반환될 수 있습니다.
HTTP 응답
404
- 상태 코드
-
NoSuchUpload
- 설명
- 지정된 upload-id가 이 오브젝트에서 시작된 업로드와 일치하지 않습니다.
3.4.22. S3 다중 파트 업로드의 일부 목록
uploadId
하위 리소스와 업로드 ID를 지정하여 다중 파트 업로드의 일부를 나열합니다.
구문
GET /BUCKET/OBJECT?uploadId=UPLOAD_ID HTTP/1.1
응답 엔티티
InitiatedMultipartUploadsResult
- 설명
- 결과에 대한 컨테이너입니다.
- 유형
- 컨테이너
bucket
- 설명
- 오브젝트 콘텐츠를 수신할 버킷입니다.
- 유형
- 문자열
키
- 설명
-
키 요청 매개변수로 지정된
키
(있는 경우)입니다. - 유형
- 문자열
UploadId
- 설명
-
다중 파트 업로드를 식별하는
upload-id
요청 매개변수로 지정된 ID입니다(있는 경우). - 유형
- 문자열
이니시에이터
- 설명
-
업로드를 시작한 사용자의
ID
및DisplayName
을 포함합니다. - 유형
- 컨테이너
ID
- 설명
- 이니시에이터의 ID입니다.
- 유형
- 문자열
DisplayName
- 설명
- 이니시에이터의 표시 이름입니다.
- 유형
- 문자열
소유자
- 설명
-
업로드된 오브젝트를 소유한 사용자의
ID
및DisplayName
에 대한 컨테이너입니다. - 유형
- 컨테이너
StorageClass
- 설명
-
결과 오브젝트를 저장하는 데 사용되는 메서드입니다.
STANDARD
또는REDUCED_REDUNDANCY
- 유형
- 문자열
PartNumberMarker
- 설명
-
IsTruncated
가true
인 경우 후속 요청에 사용할 부분 마커입니다. 목록의 우선 순위를 지정합니다. - 유형
- 문자열
NextPartNumberMarker
- 설명
-
IsTruncated
가true
인 경우 후속 요청에 사용할 다음 부분 마커입니다. 목록의 끝입니다. - 유형
- 문자열
IsTruncated
- 설명
-
true
인 경우 오브젝트의 업로드 콘텐츠의 하위 집합만 반환되었습니다. - 유형
- 부울
part
- 설명
-
Key
,Part
,InitiatorOwner
,StorageClass
,Initiated
요소의 컨테이너입니다. - 유형
- 컨테이너
Partnumber
- 설명
-
Key
,Part
,InitiatorOwner
,StorageClass
,Initiated
요소의 컨테이너입니다. - 유형
- 정수
ETag
- 설명
- 해당 부분의 엔터티 태그입니다.
- 유형
- 문자열
크기
- 설명
- 업로드된 부분의 크기입니다.
- 유형
- 정수
3.4.23. S3 업로드된 부분 조립
어셈블링은 부분을 업로드하고 새 오브젝트를 생성하여 다중 파트 업로드를 완료합니다.
다중 파트 업로드를 완료하려면 uploadId
하위 리소스 및 업로드 ID를 지정합니다.
구문
POST /BUCKET/OBJECT?uploadId=UPLOAD_ID HTTP/1.1
요청 엔티티
CompleteMultipartUpload
- 설명
- 하나 이상의 부분으로 구성된 컨테이너입니다.
- 유형
- 컨테이너
- 필수 항목
- 제공됨
part
- 설명
-
PartNumber
및ETag
에 대한 컨테이너입니다. - 유형
- 컨테이너
- 필수 항목
- 제공됨
Partnumber
- 설명
- 부분 식별자입니다.
- 유형
- 정수
- 필수 항목
- 제공됨
ETag
- 설명
- 해당 부분의 엔터티 태그입니다.
- 유형
- 문자열
- 필수 항목
- 제공됨
응답 엔티티
CompleteMultipartUploadResult
- 설명
- 응답을 위한 컨테이너입니다.
- 유형
- 컨테이너
위치
- 설명
- 새 오브젝트의 리소스 식별자(path)입니다.
- 유형
- URI
bucket
- 설명
- 새 오브젝트가 포함된 버킷의 이름입니다.
- 유형
- 문자열
키
- 설명
- 오브젝트의 키입니다.
- 유형
- 문자열
ETag
- 설명
- 새 오브젝트의 엔터티 태그입니다.
- 유형
- 문자열
3.4.24. S3 다중 파트 업로드 복사
기존 개체의 데이터를 데이터 소스로 복사하여 일부를 업로드합니다.
multi-part 업로드 복사를 수행하려면 uploadId
하위 리소스 및 업로드 ID를 지정합니다.
구문
PUT /BUCKET/OBJECT?partNumber=PartNumber&uploadId=UPLOAD_ID HTTP/1.1 Host: cname.domain.com Authorization: AWS ACCESS_KEY:HASH_OF_HEADER_AND_SECRET
요청 헤더
x-amz-copy-source
- 설명
- 소스 버킷 이름과 오브젝트 이름입니다.
- 유효한 값
- BUCKET/OBJECT
- 필수 항목
- 제공됨
x-amz-copy-source-range
- 설명
- 소스 오브젝트에서 복사할 바이트 범위입니다.
- 유효한 값
-
범위:
bytes=first-last
. 첫 번째 및 마지막은 복사할 0 기반 바이트 오프셋입니다. 예를 들어bytes=0-9
는 소스의 처음 10바이트를 복사하려고 함을 나타냅니다. - 필수 항목
- 없음
응답 엔티티
CopyPartResult
- 설명
- 모든 응답 요소에 대한 컨테이너입니다.
- 유형
- 컨테이너
ETag
- 설명
- 새 부분의 ETag를 반환합니다.
- 유형
- 문자열
LastModified
- 설명
- 부분이 마지막으로 수정된 날짜를 반환합니다.
- 유형
- 문자열
추가 리소스
- 이 기능에 대한 자세한 내용은 Amazon S3 사이트를 참조하십시오.
3.4.25. S3 다중 파트 업로드 중단
다중 파트 업로드를 중단합니다.
다중 파트 업로드를 중단하려면 uploadId
하위 리소스 및 업로드 ID를 지정합니다.
구문
DELETE /BUCKET/OBJECT?uploadId=UPLOAD_ID HTTP/1.1
3.4.26. S3ECDHE 상호 운용성
HDFS(HDFS) 액세스가 필요한 데이터 분석 애플리케이션의 경우 Apache S3A 커넥터를 통해 Ceph Object Gateway에 액세스할 수 있습니다. S3A 커넥터는 데이터를 Ceph Object Gateway에 저장하는 동안 HDFS 파일 시스템의 HDFS 파일 시스템으로 S3 호환 개체 스토리지를 애플리케이션에 읽고 쓰는 오픈 소스 도구입니다.
Ceph Object Gateway는ECDHE 2.7.3과 함께 제공되는 S3A 커넥터와 완벽하게 호환됩니다.
추가 리소스
- 멀티 테넌시에 대한 자세한 내용은 Red Hat Ceph Storage Object Gateway 가이드를 참조하십시오.