このページでは、階層型名前空間を有効にしてバケットを作成する方法について説明します。
バケットの作成
このセクションでは、階層型名前空間が有効な状態でバケットを作成する方法について説明します。
コンソール
- Google Cloud コンソールで、Cloud Storage の [バケット] ページに移動します。
- [ 作成] をクリックします。
- [バケットの作成] ページでバケット情報を入力し、[続行] をクリックします。
- [始める] セクションで、次の操作を行います。
- バケット名の要件を満たし、グローバルに一意のバケット名を入力します。
- 階層型名前空間を有効にするには、 展開矢印をクリックして [Optimize for file oriented and data-intensive workloads] セクションを開き、[Enable Hierarchical namespace on this bucket] を選択します。
注: 既存のバケットで階層名前空間を有効にすることはできません。
- 省略可: バケットラベルを追加するには、 展開矢印をクリックして [ラベル] セクションを開き、[add_box ラベルを追加] をクリックして、ラベルの
key
とvalue
を指定します。 - [データの保存場所の選択] セクションで、次の操作を行います。
- [ロケーション タイプ] で [リージョン] を選択します。
- [ロケーション] リストで、バケットデータが永続的に保存されるリージョンを選択します。
- [データのストレージ クラスを選択する] セクションで、バケットのデフォルト クラスを設定するを選択します。
注: 右側の [毎月の費用の見積もり] パネルでは、選択したストレージ クラスとロケーション、予想されるデータサイズとオペレーションに基づいてバケットの毎月のコストを見積もります。
- [オブジェクトへのアクセスを制御する方法を選択する] セクションで、バケットに公開アクセスの防止を適用するかどうかを選択し、[アクセス制御] で [均一] を選択します。
注: プロジェクトの組織のポリシーによって公開アクセスの防止がすでに適用されている場合、[公開アクセスの防止] の切り替えはロックされています。
- [オブジェクト データを保護する方法を選択する] セクションで、次の操作を行います。
- 省略可: カスタム削除(復元可能)ポリシー、オブジェクトのバージョニング、保持ポリシーの構成など、データ保護方法を選択します。
- データの暗号化方法を選択するには、[データ暗号化] というラベルの付いた 展開矢印をクリックします。
- [作成] をクリックします。
失敗した Cloud Storage オペレーションの詳細なエラー情報を Google Cloud コンソールで確認する方法については、トラブルシューティングをご覧ください。
コマンドライン
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
開発環境で、
gcloud storage buckets create
コマンドを実行します。gcloud storage buckets create gs://BUCKET_NAME --location=BUCKET_LOCATION --uniform-bucket-level-access --enable-hierarchical-namespace
ここで
BUCKET_NAME
は、バケットに付ける名前で、命名要件の対象となります。例:my-bucket
。BUCKET_LOCATION
は、バケットのロケーションです。例:us-east1
。--uniform-bucket-level-access
: バケットの均一なバケットレベルのアクセスを有効にします。
--enable-hierarchical-namespace
: バケットの階層型名前空間を有効にします。既存のバケットで階層型名前空間を有効にすることはできません。
リクエストが成功すると、コマンドから次のメッセージが返されます。
Creating gs://BUCKET_NAME/...
次のフラグを設定すると、バケットの作成をより細かくコントロールできます。
--project
: バケットが関連付けられるプロジェクト ID またはプロジェクト番号を指定します。例:my-project
。--default-storage-class
: バケットのデフォルトのストレージ クラスを指定します。例:STANDARD
。
Google Cloud CLI を使用してバケットを作成するオプションの完全なリストについては、
buckets create
オプションをご覧ください。例:
gcloud storage buckets create gs://BUCKET_NAME --project=PROJECT_ID --default-storage-class=STORAGE_CLASS --location=BUCKET_LOCATION --uniform-bucket-level-access
クライアント ライブラリ
C++
詳細については、Cloud Storage C++ API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
C#
詳細については、Cloud Storage C# API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Go
詳細については、Cloud Storage Go API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Java
詳細については、Cloud Storage Java API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Node.js
詳細については、Cloud Storage Node.js API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
PHP
詳細については、Cloud Storage PHP API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Python
詳細については、Cloud Storage Python API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Ruby
詳細については、Cloud Storage Ruby API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
REST API
JSON API
gcloud CLI のインストールと初期化を行います。これにより、
Authorization
ヘッダーのアクセス トークンを生成できます。- バケットの設定を含む JSON ファイルを作成します。この設定には、バケットの
name
を含める必要があります。設定の一覧については、 Buckets: Insert のドキュメントをご覧ください。一般的な設定は次のとおりです。 BUCKET_NAME
は、バケットに付ける名前で、命名要件の対象となります。例:my-bucket
BUCKET_LOCATION
は、バケットのオブジェクト データを保存するロケーションです。例:US-EAST1
STORAGE_CLASS
はバケットのデフォルトのストレージ クラスです。例:STANDARD
hierarchicalNamespace.enabled
がTRUE
に設定され、バケットで階層型名前空間が有効になります。既存のバケットで階層名前空間を有効にすることはできません。uniformBucketLevelAccess.enabled
はTRUE
に設定され、バケットの均一なバケットレベルのアクセスが有効になっています。
cURL
を使用して JSON API を呼び出します。curl -X POST --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?project=PROJECT_IDENTIFIER"
ここで
JSON_FILE_NAME
は、バケット設定を含む JSON ファイルの名前です。PROJECT_IDENTIFIER
は、バケットが関連付けられているプロジェクトの ID または番号です。例:my-project
{ "name": "BUCKET_NAME", "location": "BUCKET_LOCATION", "storageClass": "STORAGE_CLASS", "hierarchicalNamespace": { "enabled": "BOOLEAN" }, "iamConfiguration": { "uniformBucketLevelAccess": { "enabled": true }, }, }
ここで
次のステップ
使ってみる
Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Cloud Storage のパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
Cloud Storage を無料で試す