このページでは、Google Distributed Cloud(GDC)エアギャップ ストレージ バケットとの間でオブジェクトをアップロードおよびダウンロードする方法について説明します。
始める前に
プロジェクト名前空間は、Management API サーバーのバケット リソースを管理します。バケットとオブジェクトを操作するには、プロジェクトが必要です。
また、次の操作を行うには、適切なバケット権限が必要です。バケットへのアクセス権を付与するをご覧ください。
オブジェクトの命名ガイドライン
オブジェクトに名前を付ける際は、次のガイドラインを使用してください。
- オブジェクトに名前を付けるときは、UTF-8 文字を使用します。
- 1 ~ 55 文字の範囲で指定します。
- 個人を特定できる情報(PII)は含めないでください。
オブジェクトをストレージ バケットにアップロードする
コンソール
- ナビゲーション メニューで、[オブジェクト ストレージ] をクリックします。
- オブジェクトをアップロードするバケットの名前をクリックします。
- 省略可: オブジェクトを保存するフォルダを作成する場合は、[フォルダを作成] をクリックしてフォルダ名を入力し、[作成] をクリックします。
- [ファイルをアップロード] を直接クリックするか、作成したフォルダに移動して [ファイルをアップロード] をクリックします。
- 目的のファイルを選択して [開く] をクリックします。
- アップロードが成功したことを示す確認メッセージが表示されるまで待ちます。
CLI
オブジェクトをアップロードするには、次のコマンドを実行します。
gdcloud storage cp LOCAL_PATH s3://REMOTE_PATH
gdcloud storage cp s3://FULLY_QUALIFIED_SOURCE_BUCKET_NAME s3://FULLY_QUALIFIED_DESTINATION_BUCKET_NAME
gdcloud storage mv s3://FULLY_QUALIFIED_SOURCE_BUCKET_NAME s3://FULLY_QUALIFIED_DESTINATION_BUCKET_NAME
次のコマンドには、FULLY_QUALIFIED_BUCKET_NAME が必要です。バケット構成を表示するセクションの GET コマンドまたは DESCRIBE コマンドを使用して、完全修飾バケット名を取得します。
次のコマンドは、ローカル ディレクトリからバケットにすべてのテキスト ファイルをアップロードします。
gdcloud storage cp *.txt s3://FULLY_QUALIFIED_BUCKET_NAME
次のコマンドは、ローカル ディレクトリからバケットに複数のファイルをアップロードします。
gdcloud storage cp abc1.txt abc2.txt s3://FULLY_QUALIFIED_BUCKET_NAME
フォルダをバケットにアップロードするには、--recursive オプションを使用してディレクトリ ツリー全体をコピーします。次のコマンドは、ディレクトリ ツリー dir をアップロードします。
gdcloud storage cp DIRECTORY_NAME s3://FULLY_QUALIFIED_BUCKET_NAME --recursive
サイズの大きなオブジェクトの場合はマルチパート アップロードを実行します。アップロードするファイルが 15 MB を超える場合は、マルチパート アップロードが自動的に使用されます。 この場合、ファイルは複数の部分に分割され、各部分のサイズは 15 MB になります。最後の部分は小さくなります。各部分は個別にアップロードされ、転送が完了すると宛先で再構成されます。
1 つの部分のアップロードが失敗した場合でも、すでにアップロードされている他の部分に影響を与えることなく、アップロードを再開できます。
マルチパート アップロードに関連するオプションは 2 つあります。
--disable-multipart: すべてのファイルのマルチパート アップロードを無効にします。--multipart-chunk-size-mb=SIZE: マルチパート アップロードの各チャンクのサイズを設定します。
SIZE より大きいファイルは、自動的に マルチスレッド マルチパートとしてアップロードされます。小さいファイルは、従来の方法でアップロードされます。SIZE はメガバイト単位です。デフォルトのチャンクサイズは 15 MB です。許容される最小チャンクサイズは 5 MB、最大チャンクサイズは 5 GB です。
ストレージ バケットからオブジェクトをダウンロードする
コンソール
- ナビゲーション メニューで、[オブジェクト ストレージ] をクリックします。
- オブジェクトを含むバケットの名前をクリックします。
- ダウンロードするオブジェクトの名前の横にあるチェックボックスをオンにします。
- [ダウンロード] をクリックします。
CLI
バケットからオブジェクトを取得するには:
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/OBJECT LOCAL_FILE_TO_SAVE
バケットから現在のディレクトリにすべてのテキスト ファイルをダウンロードするには:
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/*.txt .
バケットから現在のディレクトリにテキスト ファイル abc.txt をダウンロードするには:
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt .
ファイルの古いバージョンをダウンロードするには、まずファイルのすべてのバージョンを一覧表示します。
gdcloud storage ls s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt --all-versions
出力例:
s3://my-bucket/abc.txt#OEQxNTk4MUEtMzEzRS0xMUVFLTk2N0UtQkM4MjAwQkJENjND
s3://my-bucket/abc.txt#ODgzNEYzQ0MtMzEzRS0xMUVFLTk2NEItMjI1MTAwQkJENjND
s3://my-bucket/abc.txt#ODNCNDEzNzgtMzEzRS0xMUVFLTlDOUMtQzRDOTAwQjg3RTg3
次に、バケットから現在のディレクトリにテキスト ファイル abc.txt の特定のバージョンをダウンロードします。
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt#OEQxNTk4MUEtMzEzRS0xMUVFLTk2N0UtQkM4MjAwQkJENjND .
カスタム AEADKey を使用する
カスタマイズを強化するには、独自の AEADKey を作成し、バケット内のオブジェクトを暗号化するときに直接使用します。これにより、デフォルトをバイパスして、暗号鍵を完全に制御できます。鍵を作成するに沿って新しい AEADKey を作成し、使用するバケットと同じ Namespace にあることを確認します。リクエストを送信するときは、HEADER が x-amz-server-side-encryption: SSE-KMS と x-amz-server-side-encryption-aws-kms-key-id: NAMESPACE_NAME/AEADKey_NAME で構成されていることを確認してください。