遷移 Google Cloud 專案是中繼資料作業,會變更專案在資源階層中的位置。本頁面將概述遷移作業的運作方式、專案移至新機構後會維持不變的事項,以及會發生的變化。
資源階層中的專案
專案資源是 Google Cloud機構資源中的基礎層級機構實體。專案是在機構資源下建立,可放在資料夾或機構資源本身底下,形成資源階層。
您可能需要因收購、法規要求或業務單位分離等因素,在機構資源之間遷移專案。您可以使用 Resource Manager API 遷移這些專案;如有需要,API 也可讓您復原遷移作業,將專案移回階層中的原始位置。
遷移情境
專案位置會決定您要採取哪種做法:
- 將專案從一個機構遷移至另一個機構資源。
- 將獨立專案 (未在機構中建立) 遷移至機構資源的階層。
瞭解專案的目前狀態
開始前,請先判斷專案是否與機構資源相關聯。這會決定您要採用「機構對機構」路徑,還是「無機構」路徑。
如果您沒有專案父項機構資源的 resourcemanager.organizations.get 權限,專案可能不會在Google Cloud 控制台的實際機構中如預期顯示。這可能會導致專案看起來未與任何機構資源建立關聯。
如要判斷專案是否與機構資源建立關聯,請執行下列指令:
gcloud
gcloud projects describe PROJECT_ID
將 PROJECT_ID 替換為要遷移的專案 ID。
如果輸出內容包含 parent 欄位,表示專案已屬於某個機構階層。
如果缺少或空白的 parent 欄位,表示專案是獨立專案,沒有任何機構資源。
請根據專案狀態,按照相關指南操作:
- 如要遷移未與任何機構建立關聯的專案,請參閱遷移未與機構資源建立關聯的專案。
- 如要將專案從一個機構遷移至另一個機構資源,請參閱「在機構資源之間遷移專案」。
遷移作業的運作方式
專案遷移並非資料移轉。您的服務、資料庫和虛擬機器 (VM) 執行個體會維持運作,不會發生停機情形。而是更新專案的父項資源。由於 Google Cloud 採用階層式沿用模型,專案附加至新的父項後,資安態勢就會立即變更。
| 功能 | 狀態 | 影響 |
|---|---|---|
| 專案 ID 和編號 | 維持不變 | API 金鑰、服務名稱和硬式編碼 ID 不會變更。 |
| 資料和資源 | 維持不變 | VM、儲存空間 bucket 和資料庫仍會保持連線。 |
| 直接 IAM 角色 | 維持不變 | 直接在專案中授予的角色會隨專案一併移動。 |
| 繼承的 IAM 角色 | 變更 | 在來源機構或資料夾層級授予的角色會遺失。 |
| 機構政策 | 變更 | 來源限制會由目的地限制取代。 |
| 配額 | 變更 | 系統會遺失繼承的機構層級配額,但專案層級配額會保留。 |
| 帳單帳戶 | 維持不變 | 專案仍會連結至原始帳單帳戶。 |
配額影響
如果您在特定資源層級定義配額,遷移後會套用下列項目:
- 專案層級定義的配額不會受到影響。
- 在機構資源層級定義的配額不會轉移。機構會失去所有沿用的配額。
如要判斷機構資源適用的配額,請參閱下列頁面:
範例
$ gcloud alpha services quota list --service=compute.googleapis.com --consumer=projects/workloadyee --filter="metric: compute.googleapis.com/cpus"
...
- defaultLimit: '600'
dimensions:
region: us-central1
effectiveLimit: '650'
...
重要考量事項
開始遷移前,請先檢查下列高風險區域,避免服務中斷:
配額限制:如果目標機構的配額限制低於來源機構,專案抵達後可能會超過配額。
共用 VPC:您無法遷移附加至共用 VPC 的專案。您必須先將專案從來源 Shared VPC 分離,才能遷移專案。
自訂角色:如果專案依賴在機構層級定義的自訂 IAM 角色,這些角色不會存在於目的地。請先在目標機構單位中重新建立這些群組,再進行遷移。
遷移藍圖
請參考下列藍圖,瞭解專案遷移程序: