本頁說明如何建立 Google Distributed Cloud (GDC) 離線儲存空間 WORM 值區。
事前準備
儲存空間值區是範圍僅限特定專案的資源。專案會做為容器,將值區分組,並透過 Management API 伺服器管理這些值區。如要在此頁面執行作業,您必須建立新專案,或選取具備足夠權限的現有專案。
必要的 IAM 角色
請與 IAM 專案管理員聯絡,要求在專案命名空間中取得下列角色:
- 專案值區管理員 (
project-bucket-admin):建立、更新及刪除儲存空間值區。 - 專案值區物件檢視者 (
project-bucket-object-viewer):查看及檢查儲存空間值區和物件的詳細資料。
詳情請參閱「授予 bucket 存取權」。
準備環境
如要對管理 API 伺服器或全域 API 伺服器執行指令,請按照下列步驟操作:
- 如果沒有區域管理 API 伺服器的 kubeconfig 檔案,請登入並產生該檔案。
- 如果是雙區域值區,請執行下列操作:
- 請與基礎架構營運商 (IO) 確認,是否已為配對區域建立
BucketLocationConfig自訂資源。 - 產生全域 API 伺服器的 kubeconfig 檔案。
- 請與基礎架構營運商 (IO) 確認,是否已為配對區域建立
建立 WORM bucket
WORM 值區可確保物件不會遭到覆寫,並保留至少一段時間。稽核記錄是 WORM bucket 的用途範例。
如要建立 WORM bucket,請按照下列步驟操作:
建立 bucket 時,請設定保留期限。保留期限會定義每個物件版本遭到鎖定,無法刪除或修改的天數。這項保留期限與儲存空間級別的最短儲存時間不同 (例如
Standard儲存空間級別的最短儲存時間為 30 天)。舉例來說,下列 bucket 會將保留期限設為 365 天。如要超出保留政策限制,請與基礎架構營運商 (IO) 聯絡。apiVersion: object.gdc.goog/v1 kind: Bucket metadata: name: foo-logging-bucket namespace: foo-service spec: description: "Audit logs for foo" storageClass: Standard bucketPolicy: lockingPolicy: defaultObjectRetentionDays: 365將
project-bucket-object-viewer角色授予所有需要唯讀存取權的使用者:apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: namespace: foo-service name: object-readonly-access roleRef: kind: Role name: project-bucket-object-viewer apiGroup: rbac.authorization.k8s.io subjects: - kind: ServiceAccount namespace: foo-service name: foo-log-processor - kind: User name: bob@example.com apiGroup: rbac.authorization.k8s.io將
project-bucket-object-admin角色授予需要將內容寫入值區的使用者:apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: namespace: foo-service name: object-write-access roleRef: kind: Role name: project-bucket-object-admin apiGroup: rbac.authorization.k8s.io subjects: - kind: ServiceAccount namespace: foo-service name: foo-service-account