このページでは、バケットのデフォルトのストレージ クラスを変更する方法について説明します。オブジェクトをバケットにアップロードするときにオブジェクトのストレージ クラスを指定しないと、バケットのデフォルトのストレージ クラスが割り当てられます。ストレージ クラスの詳細については、ストレージ クラスをご覧ください。
必要な権限
コンソール
Google Cloud Console を使用してこのガイドを完了するには、適切な IAM 権限が必要です。アクセスするバケットを作成していない場合は、そのプロジェクトのオーナーから必要な権限を持つロールを付与してもらう必要があります。
特定のアクションに必要な権限の一覧については、Google Cloud Console に適用される IAM 権限をご覧ください。
関連するロールのリストについては、Cloud Storage のロールをご覧ください。また、特定の制限された権限を持つカスタムロールを作成することもできます。
コマンドライン
コマンドライン ユーティリティを使用してこのガイドを完了するには、適切な IAM 権限が必要です。アクセスするバケットを作成していない場合は、そのプロジェクトのオーナーから必要な権限を持つロールを付与してもらう必要があります。
特定の操作に必要な権限の一覧については、gsutil コマンドの IAM 権限をご覧ください。
関連するロールのリストについては、Cloud Storage のロールをご覧ください。また、特定の制限された権限を持つカスタムロールを作成することもできます。
クライアント ライブラリ
Cloud Storage クライアント ライブラリを使用してこのガイドを完了するには、適切な IAM 権限が必要です。アクセスするバケットを作成していない場合は、そのプロジェクトのオーナーから必要な権限を持つロールを付与してもらう必要があります。
特に断りのない限り、クライアント ライブラリのリクエストは JSON API を介して行われ、JSON メソッドの IAM 権限に記載されている権限が必要です。クライアント ライブラリを使用してリクエストを行うときに呼び出される JSON API メソッドを確認するには、元のリクエストをログに記録します。
関連する IAM ロールのリストについては、Cloud Storage のロールをご覧ください。また、特定の制限された権限を持つカスタムロールを作成することもできます。
REST API
JSON API
JSON API を使用してこのガイドを完了するには、適切な IAM 権限が付与されている必要があります。アクセスするバケットを作成していない場合は、そのプロジェクトのオーナーから必要な権限を持つロールを付与してもらう必要があります。
特定のアクションに必要な権限の一覧については、JSON メソッドの IAM 権限をご覧ください。
関連するロールのリストについては、Cloud Storage のロールをご覧ください。また、特定の制限された権限を持つカスタムロールを作成することもできます。
バケットのデフォルト ストレージ クラスを変更する
コンソール
- Google Cloud コンソールで、Cloud Storage の [バケット] ページに移動します。
バケットリストで、変更するバケットを探して、[その他の操作] メニュー(
)をクリックします。
[デフォルトのストレージ クラスを編集] をクリックします。
上に重なったウィンドウで、バケットに新しいデフォルトのストレージ クラスを選択します。
[保存] をクリックします。
失敗した Cloud Storage オペレーションの詳細なエラー情報を Google Cloud コンソールで確認する方法については、トラブルシューティングをご覧ください。
コマンドライン
gcloud
gcloud storage buckets update
コマンドを使用し、--default-storage-class
フラグを指定します。
gcloud storage buckets update gs://BUCKET_NAME --default-storage-class=STORAGE_CLASS
ここで
BUCKET_NAME
は、関連するバケットの名前です。例:my-bucket
STORAGE_CLASS
は、バケットに追加する新しいストレージ クラスです。例:nearline
次の例のようなレスポンスになります。
Setting default storage class to "nearline" for bucket gs://my-bucket
gsutil
gsutil defstorageclass set
コマンドを使用します。
gsutil defstorageclass set STORAGE_CLASS gs://BUCKET_NAME
ここで
STORAGE_CLASS
は、バケットに追加する新しいストレージ クラスです。例:nearline
BUCKET_NAME
は、関連するバケットの名前です。例:my-bucket
。
次の例のようなレスポンスになります。
Setting default storage class to "nearline" for bucket gs://my-bucket
クライアント ライブラリ
C++
詳細については、Cloud Storage C++ API のリファレンス ドキュメントをご覧ください。
C#
詳細については、Cloud Storage C# API のリファレンス ドキュメントをご覧ください。
Go
詳細については、Cloud Storage Go API のリファレンス ドキュメントをご覧ください。
Java
詳細については、Cloud Storage Java API のリファレンス ドキュメントをご覧ください。
Node.js
詳細については、Cloud Storage Node.js API のリファレンス ドキュメントをご覧ください。
PHP
詳細については、Cloud Storage PHP API のリファレンス ドキュメントをご覧ください。
Python
詳細については、Cloud Storage Python API のリファレンス ドキュメントをご覧ください。
Ruby
詳細については、Cloud Storage Ruby API のリファレンス ドキュメントをご覧ください。
REST API
JSON API
- OAuth 2.0 Playground から認証アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を構成します。手順については、API 認証をご覧ください。
次の情報が含まれる JSON ファイルを作成します。
{ "storageClass": "STORAGE_CLASS" }
ここで、
STORAGE_CLASS
は、バケットに追加する新しいストレージ クラスです。例:nearline
cURL
を使用して JSON API を呼び出し、PATCH
Bucket リクエストを行います。curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=storageClass"
ここで
JSON_FILE_NAME
は、手順 2 で作成した JSON ファイルのパスです。OAUTH2_TOKEN
は、手順 1 で生成したアクセス トークンです。BUCKET_NAME
は、関連するバケットの名前です。例:my-bucket
。
XML API
- OAuth 2.0 Playground から認証アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を構成します。手順については、API 認証をご覧ください。
次の情報が含まれる XML ファイルを作成します。
<StorageClass>STORAGE_CLASS</StorageClass>
ここで、
STORAGE_CLASS
は、バケットに追加する新しいストレージ クラス名です。例:nearline
cURL
を使用して XML API を呼び出し、PUT
Bucket リクエストを行います。curl -X PUT --data-binary @XML_FILE_NAME \ -H "Authorization: Bearer OAUTH2_TOKEN" \ "https://storage.googleapis.com/BUCKET_NAME?storageClass"
ここで
XML_FILE_NAME
は、手順 2 で作成した XML ファイルのパスです。OAUTH2_TOKEN
は、手順 1 で生成したアクセス トークンです。BUCKET_NAME
は、関連するバケットの名前です。例:my-bucket
。
次のステップ
- バケットを移動または名前を変更する。
- オブジェクトをアップロードする。
- オブジェクトのストレージ クラスを変更する。
- オブジェクト ライフサイクルを管理する。
- Autoclass を使用した自動ストレージ クラス管理について学習する。