本頁說明如何建立啟用階層式命名空間的值區。
必要的角色
如要取得必要權限,以便建立啟用階層式命名空間的值區,請要求管理員授予您專案的儲存空間管理員 (roles/storage.admin
) 身分與存取權管理角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這個預先定義的角色具備 storage.buckets.create
權限,這是建立啟用階層式命名空間的值區時的必要權限。
建立啟用階層命名空間的值區
控制台
- 在 Google Cloud 控制台,前往「Cloud Storage bucket」頁面。
- 按一下「 Create」(建立)。
- 在「建立值區」頁面中,輸入值區資訊,然後按一下「繼續」:
- 在「開始使用」部分執行下列操作:
- 輸入符合值區名稱規定的全域不重複值區名稱。
- 如要啟用階層命名空間,請按一下 展開箭頭,展開「為檔案導向和資料密集型工作負載提供最理想的儲存空間」部分,然後選取「為這個值區啟用階層命名空間」。
注意:您無法在現有值區中啟用階層式命名空間。
- 選用:如要新增值區標籤,請按一下 展開箭頭,展開「標籤」部分,然後按一下 add_box「新增標籤」,並為標籤指定
key
和value
。 - 在「Choose where to store your data」(選擇資料的儲存位置) 專區中執行下列操作:
- 選取「區域」做為位置類型。
- 在「Location」(位置) 清單中,選取要永久儲存值區資料的區域。
- 在「Choose a storage class for your data」(為資料選擇儲存空間級別) 專區中,選取值區的「Set a default class」(設定預設級別)。
注意:右側窗格中的「每月預估費用」面板會根據您所選的儲存空間級別和位置,以及預期的資料大小和作業,估算值區的每月費用。
- 在「選取如何控制物件的存取權」部分,選取值區是否強制執行禁止公開存取,並為「存取權控管」選擇「統一」。
注意:如果專案的機構政策已強制禁止公開存取,「禁止公開存取」切換按鈕會遭到鎖定。
- 在「選擇保護物件資料的方式」部分中,執行下列操作:
- 按一下 [建立]。
如要瞭解如何透過 Google Cloud 控制台取得 Cloud Storage 作業失敗的詳細錯誤資訊,請參閱「疑難排解」一文。
指令列
-
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
:為 bucket 啟用階層命名空間。您無法在現有 bucket 中啟用階層命名空間。
如果要求成功,指令會傳回下列訊息:
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
,即可為 bucket 啟用階層命名空間。您無法在現有 bucket 中啟用階層命名空間。uniformBucketLevelAccess.enabled
設為TRUE
,為 bucket 啟用統一值區層級存取權。
- 使用
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
是包含 bucket 設定的 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