Google Distributed Cloud (GDC) 實體隔離方案的物件儲存庫,可讓您在專案範圍的 bucket 之間,移轉及擷取檔案、目錄和版本化資料。您可以透過 GDC 控制台或 gdcloud CLI 執行單一檔案或多部分作業,並使用自訂AEADKey加密保護物件。
事前準備
Storage bucket 是特定專案範圍內的資源。專案就像容器,可將 bucket 分組,並透過 Management API 伺服器管理。您必須先建立新專案,或選取具備足夠權限的現有專案,才能執行這個頁面的作業。
必要的 IAM 角色
請與 IAM 專案管理員聯絡,要求在專案命名空間中取得下列角色:
- 專案 bucket 管理員 (
project-bucket-admin):建立、更新及刪除儲存空間 bucket。 - 專案 bucket 物件檢視者 (
project-bucket-object-viewer):查看及檢查儲存空間 bucket 和物件的詳細資料。
詳情請參閱「授予 bucket 存取權」。
準備環境
如要對管理 API 伺服器或全域 API 伺服器執行指令,請按照下列步驟操作:
- 如果您沒有可用於可用區管理 API 伺服器的 kubeconfig 檔案,請登入並產生該檔案。
- 如果是雙可用區 bucket,請按照下列步驟操作:
- 請向基礎架構運作人員 (IO) 確認,已為配對可用區建立
BucketLocationConfig自訂資源。 - 產生全域 API 伺服器的 kubeconfig 檔案。
- 請向基礎架構運作人員 (IO) 確認,已為配對可用區建立
物件命名指南
請按照下列規範為物件命名:
- 命名物件時,請使用 UTF-8 字元。
- 長度介於 1 至 55 個字元之間。
- 請勿加入任何個人識別資訊 (PII)。
將物件上傳至 Storage bucket
控制台
- 在導覽選單中,按一下「Object Storage」(物件儲存空間)。
- 按一下要上傳物件的 bucket 名稱。
- 選用:如要建立資料夾來儲存物件,請按一下「建立資料夾」 > 輸入資料夾名稱 > 按一下「建立」。
- 直接點選「上傳檔案」,或前往剛建立的資料夾,然後點選「上傳檔案」。
- 選取所需檔案,然後按一下「開啟」。
- 等待系統顯示上傳成功的確認訊息。
gdcloud
如要上傳物件,請執行下列指令:
gdcloud storage cp LOCAL_PATH s3://REMOTE_PATH
gdcloud storage cp s3://FULLY_QUALIFIED_SOURCE_BUCKET_NAME s3://FULLY_QUALIFIED_DESTINATION_BUCKET_NAME
gdcloud storage mv s3://FULLY_QUALIFIED_SOURCE_BUCKET_NAME s3://FULLY_QUALIFIED_DESTINATION_BUCKET_NAME
下列指令需要 FULLY_QUALIFIED_BUCKET_NAME。使用「查看 bucket 設定」部分的 GET 或 DESCRIBE 指令,取得完整的 bucket 名稱。
下列指令會將本機目錄中的所有文字檔上傳至 bucket:
gdcloud storage cp *.txt s3://FULLY_QUALIFIED_BUCKET_NAME
下列指令會將本機目錄中的多個檔案上傳至 bucket:
gdcloud storage cp abc1.txt abc2.txt s3://FULLY_QUALIFIED_BUCKET_NAME
如要將資料夾上傳至 bucket,請使用 --recursive 選項複製整個目錄樹狀結構。下列指令會上傳目錄樹狀結構 dir:
gdcloud storage cp DIRECTORY_NAME s3://FULLY_QUALIFIED_BUCKET_NAME --recursive
對大型物件執行多部分上傳,或在要上傳的檔案大於 15 MB 時,自動使用多部分上傳。在這種情況下,檔案會分割成多個部分,每個部分的大小為 15 MB。最後一部分較小。每個部分會分別上傳,並在傳輸完成後於目的地重新建構。
如果某個部分上傳失敗,您可以重新上傳,不會影響其他已上傳的部分。
與多部分上傳相關的選項有兩個:
--disable-multipart:停用所有檔案的多部分上傳功能。--multipart-chunk-size-mb=SIZE:設定多部分上傳作業中每個區塊的大小。
大於 SIZE 的檔案會自動以多執行緒多部分上傳。較小的檔案則使用傳統方法上傳。SIZE 的單位為 MB。預設區塊大小為 15 MB。區塊大小下限為 5 MB,上限為 5 GB。
從儲存空間 bucket 下載物件
控制台
- 在導覽選單中,按一下「Object Storage」(物件儲存空間)。
- 按一下物件所在 bucket 的名稱。
- 找出要下載的物件,然後選取名稱旁的核取方塊。
- 點選 [下載]。
gdcloud
如要從 bucket 取得物件,請按照下列步驟操作:
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/OBJECT LOCAL_FILE_TO_SAVE
如要將 bucket 中的所有文字檔下載到目前目錄,請執行下列指令:
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/*.txt .
如要將文字檔案 abc.txt 從 bucket 下載到目前的目錄,請執行下列指令:
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
接著,從 bucket 下載特定版本的文字檔案 abc.txt 到目前的目錄:
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt#OEQxNTk4MUEtMzEzRS0xMUVFLTk2N0UtQkM4MjAwQkJENjND .
使用自訂 AEADKey
如要進一步自訂,您可以建立自己的 AEADKey,並在加密 bucket 中的物件時直接使用。這樣一來,您就能完全控管加密金鑰,不必使用預設金鑰。按照「建立金鑰」一節的說明建立新的 AEADKey,並確認該金鑰與要使用的 bucket 位於相同的 Namespace。接著,每次傳送要求時,請務必將 HEADER 設為 x-amz-server-side-encryption: SSE-KMS 和 x-amz-server-side-encryption-aws-kms-key-id: NAMESPACE_NAME/AEADKey_NAME