プロジェクト内のストレージ オブジェクトをアップロードおよびダウンロードする

このページでは、Google Distributed Cloud(GDC)のエアギャップ ストレージ バケットにオブジェクトをアップロードおよびダウンロードする方法について説明します。

始める前に

プロジェクト名前空間は、Management API サーバーのバケット リソースを管理します。バケットとオブジェクトを操作するには、プロジェクトが必要です。

次のオペレーションを実行するには、適切なバケット権限も必要です。バケットへのアクセス権を付与するをご覧ください。

オブジェクトの命名ガイドライン

オブジェクトの名前を付ける際は、次のガイドラインに従ってください。

  • オブジェクトの命名には UTF-8 文字を使用します。
  • 個人を特定できる情報(PII)は含めないでください。

ストレージ バケットにオブジェクトをアップロードする

コンソール

  1. ナビゲーション メニューで、[オブジェクト ストレージ] をクリックします。
  2. オブジェクトをアップロードするバケットの名前をクリックします。
  3. 省略可: オブジェクトを保存するフォルダを作成する場合は、[フォルダを作成] をクリック > フォルダ名を入力 > [作成] をクリックします。
  4. [ファイルをアップロード] を直接クリックするか、先ほど作成したフォルダに移動して [ファイルをアップロード] をクリックします。
  5. 目的のファイルを選択して [開く] をクリックします。
  6. アップロードが完了したことを示す確認メッセージが表示されるまで待ちます。

CLI

オブジェクトをアップロードするには、次のコマンドを実行します。

gdcloud storage cp LOCAL_PATH s3://REMOTE_PATH
gdcloud storage cp s3://REMOTE_SOURCE_PATH s3://REMOTE_MOVE_DESTINATION_PATH
gdcloud storage mv s3://REMOTE_SOURCE_PATH s3://REMOTE_MOVE_DESTINATION_PATH

次のコマンドには 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 dir 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 です。

ストレージ バケットからオブジェクトをダウンロードする

コンソール

  1. ナビゲーション メニューで、[オブジェクト ストレージ] をクリックします。
  2. オブジェクトを含むバケットの名前をクリックします。
  3. ダウンロードするオブジェクトの名前の横にあるチェックボックスをオンにします。
  4. [ダウンロード] をクリックします。

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 にあることを確認します。リクエストを送信するたびに、HEADERx-amz-server-side-encryption: SSE-KMSx-amz-server-side-encryption-aws-kms-key-id: NAMESPACE_NAME/AEADKey_NAME で構成されていることを確認します。