StorageGRID での S3 CreateMultipartUpload リクエストヘッダーとオプション
CreateMultipartUpload(以前は「マルチパートアップロードの開始」と呼ばれていました)操作は、オブジェクトのマルチパートアップロードを開始し、アップロードIDを返します。
`x-amz-storage-class`リクエストヘッダーはサポートされています。 `x-amz-storage-class`に送信された値は、取り込み中に StorageGRID がオブジェクトデータを保護する方法に影響しますが、StorageGRID システムにオブジェクトの永続的なコピーがいくつ保存されるか(ILM によって決定)には影響しません。
取り込まれたオブジェクトに一致する ILM ルールが Strict "取り込みオプション"を使用する場合、 `x-amz-storage-class`ヘッダーは効果がありません。
以下の値を `x-amz-storage-class`に使用できます:
-
STANDARD(デフォルト)-
デュアルコミット:ILMルールでデュアルコミット取り込みオプションが指定されている場合、オブジェクトが取り込まれるとすぐに、そのオブジェクトの2番目のコピーが作成され、別のストレージノードに配布されます(デュアルコミット)。ILMを評価する際、StorageGRIDはこれらの最初の暫定コピーがルールに定められた配置指示を満たしているかどうかを判定します。満たしていない場合は、別の場所に新しいオブジェクトのコピーを作成する必要があり、最初の暫定コピーを削除する必要が生じる場合があります。
-
バランス:ILM ルールでバランスオプションが指定されており、StorageGRID がルールで指定されたすべてのコピーをすぐに作成できない場合、StorageGRID は異なるストレージノード上に2つの暫定コピーを作成します。
StorageGRID がILM ルールで指定されたすべてのオブジェクトコピーを即座に作成できる場合(同期配置)、 `x-amz-storage-class`ヘッダーは効果がありません。
-
-
REDUCED_REDUNDANCY-
デュアルコミット:ILM ルールでデュアルコミットオプションが指定されている場合、StorageGRID はオブジェクトが取り込まれる際に単一の中間コピーを作成します(シングルコミット)。
-
バランス:ILM ルールでバランス オプションが指定されている場合、StorageGRID はシステムがルールで指定されたすべてのコピーをすぐに作成できない場合にのみ、一時的なコピーを 1 つ作成します。StorageGRID が同期配置を実行できる場合、このヘッダーは効果がありません。 `REDUCED_REDUNDANCY`オプションは、オブジェクトに一致する ILM ルールが単一の複製コピーを作成する場合に最適です。この場合、 `REDUCED_REDUNDANCY`を使用することで、取り込み操作ごとに不要なオブジェクトコピーの作成と削除をなくすことができます。
`REDUCED_REDUNDANCY`オプションの使用は、その他の状況では推奨されません。 `REDUCED_REDUNDANCY`取り込み時のオブジェクトデータ損失のリスクを高めます。たとえば、ILM評価が行われる前に障害が発生したストレージノードに単一のコピーが最初に保存された場合、データが失われる可能性があります。
-
|
|
一定期間にわたって複製コピーが1つしかない場合、データが永久に失われるリスクがあります。オブジェクトの複製コピーが1つしか存在しない場合、ストレージノードが故障したり重大なエラーが発生したりすると、そのオブジェクトは失われます。アップグレードなどのメンテナンス手順中は、一時的にオブジェクトへのアクセスができなくなる場合もあります。 |
指定する `REDUCED_REDUNDANCY`は、オブジェクトが最初に取り込まれたときに作成されるコピーの数にのみ影響します。これは、アクティブな ILM ポリシーによってオブジェクトが評価されるときに作成されるオブジェクトのコピーの数には影響せず、StorageGRID システムでより低いレベルの冗長性でデータが保存されることもありません。
|
|
S3オブジェクトロックが有効になっているバケットにオブジェクトを取り込む場合、 `REDUCED_REDUNDANCY`オプションは無視されます。レガシー準拠バケットにオブジェクトを取り込む場合、 `REDUCED_REDUNDANCY`オプションはエラーを返します。StorageGRIDは、コンプライアンス要件を満たすため、常に二重コミットによるデータ取り込みを実行します。 |
サポートされているリクエストヘッダー
以下のリクエストヘッダーがサポートされています:
-
Content-Type -
x-amz-checksum-algorithm現在、 `x-amz-checksum-algorithm`のSHA256値のみがサポートされています。
-
`x-amz-meta-`続いて、ユーザー定義のメタデータを含む名前と値のペア
ユーザー定義メタデータの名前と値のペアを指定する場合は、次の一般的な形式を使用してください。
x-amz-meta-_name_: `value`
ILM ルールの参照時間として ユーザー定義の作成時間 オプションを使用する場合は、オブジェクトが作成された日時を記録するメタデータの名前として `creation-time`を使用する必要があります。例:
x-amz-meta-creation-time: 1443399726
`creation-time`の値は、1970年1月1日からの秒数として評価されます。
`creation-time`をユーザー定義メタデータとして追加することは、レガシーコンプライアンスが有効になっているバケットにオブジェクトを追加する場合には許可されません。エラーが返されます。 -
S3オブジェクトロックリクエストヘッダー:
-
x-amz-object-lock-mode -
x-amz-object-lock-retain-until-date -
x-amz-object-lock-legal-holdこれらのヘッダーなしでリクエストが行われた場合、バケットのデフォルトの保持設定を使用して、オブジェクトバージョンの保持期限が計算されます。
-
-
SSEリクエストヘッダー:
-
x-amz-server-side-encryption -
x-amz-server-side-encryption-customer-key-MD5 -
x-amz-server-side-encryption-customer-key -
x-amz-server-side-encryption-customer-algorithm
StorageGRID が UTF-8 文字を処理する方法については、"PutObject"を参照してください。 -
サーバー側暗号化のためのリクエストヘッダー
サーバー側暗号化を使用してマルチパートオブジェクトを暗号化するには、以下のリクエストヘッダーを使用できます。SSEオプションとSSE-Cオプションは相互に排他的です。
-
SSE: StorageGRID が管理する一意のキーでオブジェクトを暗号化する場合は、CreateMultipartUpload リクエストで次のヘッダーを使用してください。このヘッダーは、UploadPart リクエストには指定しないでください。
-
x-amz-server-side-encryption
-
-
SSE-C: 提供および管理する固有のキーでオブジェクトを暗号化する場合は、CreateMultipartUploadリクエスト(およびその後の各UploadPartリクエスト)でこれら3つのヘッダーをすべて使用します。
-
x-amz-server-side-encryption-customer-algorithm: `AES256`を指定します。 -
x-amz-server-side-encryption-customer-key:新しいオブジェクトの暗号化キーを指定してください。 -
x-amz-server-side-encryption-customer-key-MD5:新しいオブジェクトの暗号化キーのMD5ダイジェストを指定します。
-
|
|
ご提供いただいた暗号化キーは一切保存されません。暗号化キーを紛失した場合、対応するオブジェクトも失われます。オブジェクトデータを保護するために顧客提供のキーを使用する前に、"サーバー側暗号化を使用する"に関する考慮事項を確認してください。 |
サポートされていないリクエストヘッダー
以下のリクエストヘッダーはサポートされていません:
-
x-amz-website-redirect-location`x-amz-website-redirect-location`ヘッダーは `XNotImplemented`を返します。
バージョン管理
マルチパートアップロードは、アップロードの開始、アップロードの一覧表示、パートのアップロード、アップロードされたパートの組み立て、およびアップロードの完了という、それぞれ独立した操作で構成されます。オブジェクトは、CompleteMultipartUpload操作が実行されると作成されます(該当する場合はバージョン管理されます)。