Autoclass を使用する (original) (raw)
このページでは、Cloud Storage のバケットに設定されている Autoclass 機能の有効化、無効化、ステータス確認を行う方法について説明します。
必要なロール
バケットで Autoclass を設定および管理するために必要な権限を取得するには、バケットに対するストレージ管理者(roles/storage.admin)IAM ロールを付与するよう管理者に依頼してください。この事前定義ロールには、バケットで Autoclass を設定および管理するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
storage.buckets.getstorage.buckets.list- この権限は、 Google Cloud コンソールを使用してこのページのタスクを実行する場合にのみ必要です。
storage.buckets.update
カスタムロールを使用して、これらの権限を取得することもできます。
バケットに対するロールの付与については、バケットでの IAM ポリシーの設定と管理をご覧ください。
バケットに Autoclass を設定する
バケットに Autoclass を設定するには、次の手順を完了します。
コンソール
- Google Cloud コンソールで Cloud Storage の [バケット] ページに移動します。
[バケット] に移動 - バケットのリストで、目的のバケットの名前をクリックします。
- [バケットの詳細] ページで、[構成] タブをクリックします。
- [デフォルトのストレージ クラス] の編集アイコン をクリックします。
- オーバーレイ ウィンドウで、[Autoclass] を選択して Autoclass を有効にします。Autoclass を無効にするには、[デフォルトのクラスを設定する] を選択して、バケットのデフォルトのストレージ クラスを選択します。
- [確認] をクリックします。
- Autoclass が有効になっているバケットのターミナル ストレージ クラスを切り替えるには、[含まれるクラス] の [編集] アイコン()をクリックして、表示されるオーバーレイ ウィンドウで [確認] をクリックします。
コマンドライン
適切なフラグを指定して、gcloud storage buckets update コマンドを使用します。
gcloud storage buckets update gs://BUCKET_NAME --default-storage-class=DEFAULT_CLASS AUTOCLASS_FLAG
ここで
BUCKET_NAMEは、関連するバケットの名前です。例:my-bucketDEFAULT_CLASSは、バケットのストレージ クラス メタデータを設定します。Autoclass を有効にする場合、STANDARDが唯一の有効な値であり、バケットで現在別のストレージ クラスを使用している場合は必須です。AUTOCLASS_FLAGは、次のいずれかです。--enable-autoclass: Autoclass を有効にします。--no-enable-autoclass: Autoclass を無効にします。--autoclass-terminal-storage-class=CLASS: Autoclass のターミナル ストレージ クラスを設定します。CLASS は、NEARLINEまたはARCHIVEのいずれかになります。Autoclass が無効になっているバケットでこのフラグを使用する場合は、コマンドに--enable-autoclassフラグも含めます。
正常に終了すると、レスポンスは次の例のようになります。
Updating gs://my-bucket/... Completed 1
クライアント ライブラリ
REST API
JSON API
- gcloud CLI のインストールと初期化を行います。これにより、
Authorizationヘッダーのアクセス トークンを生成できます。 - 次の情報が含まれる JSON ファイルを作成します。
{
"storageClass": "DEFAULT_CLASS",
"autoclass": {
"enabled": BOOLEAN,
"terminalStorageClass":TERMINAL_CLASS
}
}
ここでDEFAULT_CLASSは、バケットのストレージ クラス メタデータを設定します。Autoclass を有効にする場合、STANDARDが唯一の有効な値であり、バケットで現在別のストレージ クラスを使用している場合は必須です。BOOLEANがtrueの場合、Autoclass は有効になります。falseの場合は無効になります。TERMINAL_CLASSは、Autoclass が有効な場合に使用するターミナル ストレージ クラスです。
- cURL を使用して JSON API を呼び出し、PATCH Bucket リクエストを行います。
curl -X PATCH --data-binary @JSON_FILE_NAME \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=autoclass"
各変数の意味は次のとおりです。JSON_FILE_NAMEは、手順 2 で作成した JSON ファイルのパスです。BUCKET_NAMEは、関連するバケットの名前です。たとえばmy-bucketです。
XML API
この機能は XML API では管理できません。代わりにGoogle Cloud コンソールか別のツールを使用してください。
バケットの Autoclass のステータスを表示する
個々のバケットの Autoclass のステータスを表示するには:
コンソール
- Google Cloud コンソールで Cloud Storage の [バケット] ページに移動します。
[バケット] に移動 - ステータスを確認するバケットの名前をクリックします。
- [構成] タブをクリックします。
- [デフォルトのストレージ クラス] フィールドに Autoclass のステータスが表示されます。
Autoclass が有効になっている場合、フィールドには「Autoclass で管理」と表示され、[含まれるクラス] フィールドには、オブジェクトが移動できるストレージ クラスが表示されます。
コマンドライン
gcloud storage buckets describe コマンドを使用し、--format フラグを指定します。
gcloud storage buckets describe gs://BUCKET_NAME --format="default(autoclass)"
ここで、BUCKET_NAME はステータスを表示するバケットの名前です。たとえば my-bucket です。
正常に終了すると、レスポンスは次の例のようになります。
autoclass: enabled: true terminalStorageClass: ARCHIVE terminalStorageClassUpdateTime: '2023-02-10T16:11:02.384000+00:00' toggleTime: '2022-11-09T16:01:40.775000+00:00'
クライアント ライブラリ
REST API
JSON API
- gcloud CLI のインストールと初期化を行います。これにより、
Authorizationヘッダーのアクセス トークンを生成できます。 - cURL を使用して、
autoclassフィールドを含む GET Bucket リクエストで JSON API を呼び出します。
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=autoclass"BUCKET_NAMEは、該当するバケットの名前です。例:my-bucket
バケットで Autoclass が有効になっている場合、レスポンスは次のようになります。
{
"autoclass": {
"enabled": "BOOLEAN",
"toggleTime": "DATETIME",
"terminalStorageClass": "STORAGE_CLASS",
"terminalStorageClassUpdateTime": "DATETIME"
},
}
XML API
この機能は XML API では管理できません。代わりにGoogle Cloud コンソールか別のツールを使用してください。
次のステップ
- Autoclass の詳細を確認する。
- オブジェクトのライフサイクル管理について学習する。ライフサイクルの管理では、指定した条件を満たしたときに、オブジェクトのストレージ クラスが自動的に変更されます。