管理舊版網路
我們不建議使用舊版網路,且已無法再建立舊版網路。因為舊版網路不支援許多新推出的 Google Cloud功能。請改用虛擬私有雲 (VPC) 網路。如要進一步瞭解如何取代舊版網路,請參閱「取代舊版網路」。
本頁說明如何修改 Google Cloud 舊版網路。只有在現有設定含有舊版網路的情況下,才需要參閱這個頁面。
限制
舊版網路不支援下列 Google Cloud 功能。如要使用這些功能,您必須改用虛擬私有雲網路。
您可以使用「將單一地區轉換為虛擬私有雲網路」功能,將單一地區的舊版網路轉換為虛擬私有雲端網路。如果您有多地區的舊版網路,必須先將資源遷移至單一地區,才能使用轉換工具。
建立舊版網路
您無法再建立舊版網路。
如果您嘗試建立舊版網路,系統會顯示以下錯誤:
Creation of legacy mode networks is deprecated. Please create a subnet mode network instead by removing the IPv4Range field and adding the autoCreateSubnetworks field to your network insert request.
將 VM 遷移至新網路
您可以將虛擬機器 (VM) 執行個體從舊有網路遷移至虛擬私有雲網路。如需操作說明,請參閱在網路之間遷移 VM。
刪除舊版網路
對於舊版網路,只有在沒有任何資源使用網路中的情況下,您才能明確刪除網路。
如要刪除網路:
gcloud compute networks delete LEGACY_NETWORK_NAME
更改下列內容:
LEGACY_NETWORK_NAME
:您要刪除的舊版網路名稱。
將單一區域的舊版網路轉換為虛擬私有雲網路
您可以使用單一地區轉換工具,將舊版網路轉換為同個專案中的自訂模式虛擬私有雲網路。舊版網路中的所有資源都必須位於單一區域。詳情請參閱「單一地區轉換詳細資料」。
單一地區轉換工具的限制
轉換開始後就無法取消。
所有資源都必須位於單一區域,您才能將舊版網路轉換為虛擬私有雲網路。如果您在多個區域中都有資源,轉換作業就會失敗,且系統不會採取任何行動。 Google Cloud 您必須手動將資源移至單一區域,或從遷移區域以外的區域移除資源。舉例來說,您無法將資源逐區轉換為多個虛擬私人雲端網路。
在轉換期間,網路會持續傳送流量,且不會中斷通訊。不過,網路資源的變更受到限制。網路資源可以刪除,但在轉換完成前,系統會封鎖特定刪除作業。轉換期間無法建立網路資源。
您無法將已轉換的虛擬私有雲網路還原為舊版網路。
如果舊版網路包含 Google Kubernetes Engine 叢集,您必須在轉換舊版網路後升級 GKE 叢集,確保元件運作正常。詳情請參閱轉換含有 GKE 叢集的舊版網路。
準備轉換舊版網路
建議在網路上的使用者活動較少時執行轉換。
如要使用轉換,舊版網路中的所有資源都必須位於同一個區域。如果您在多個區域中都有資源,請決定要使用的區域,然後將執行個體移至該區域。其他不在該區域的資源必須手動移動或刪除。
請確認網路 CIDR 範圍中的最後兩個內部 IP 位址未使用。這些 IP 位址是虛擬私有雲網路子網路中的不可用位址。
舉例來說,如果網路的 IP 位址範圍為
10.240.0.0/16
,請確認10.240.255.254
和10.240.255.255
未指派給任何資源。手動擴充任何執行個體群組,以滿足轉換期間的任何預期需求,並停用自動配置器。
如果在轉換期間啟用自動配置器,且自動配置器嘗試建立新執行個體,您可能會看到錯誤。
如果舊版網路包含 GKE 叢集,請參閱「轉換包含 GKE 叢集的舊版網路」。
轉換舊版網路
使用這項工具將舊版網路轉換為虛擬私有雲網路不會中斷網路流量,您的資源會繼續正常運作。如果網路轉換作業因任何原因失敗,系統會自動回復網路轉換。如果發生錯誤,請參閱「疑難排解」一節瞭解解決方法。
將舊版網路轉換為虛擬私有雲網路。
轉換是一項長時間執行的作業。所需時間取決於網路上的資源數量。轉換網路至少需要七分鐘才能完成。大型網路每 1,000 個 VM 可能需要 20 分鐘以上。轉換期間,您無法變更網路。
gcloud
gcloud beta compute networks update LEGACY_NETWORK_NAME \ --switch-to-custom-subnet-mode
更改下列內容:
LEGACY_NETWORK_NAME
:您要轉換的舊版聯播網名稱。
API
POST https://www.googleapis.com/compute/beta/projects/PROJECT_ID/global/networks/LEGACY_NETWORK_NAME/switchToCustomMode
更改下列內容:
PROJECT_ID
:包含要轉換的舊版聯播網的專案。LEGACY_NETWORK_NAME
:您要轉換的舊版聯播網名稱。
您可以使用
globalOperations.get
方法或globalOperations.wait
方法監控作業狀態。作業完成後,請檢查網路的子網路模式是否為
CUSTOM
。列出網路,查看其子網路模式:
gcloud compute networks list
如果先前停用任何自動配置器,請重新啟用自動配置器。
在虛擬私有雲網路中,在您要建立新資源的地區新增子網路。
重新建立轉換中未包含的任何資源。
轉換含有 GKE 叢集的舊版網路
如果舊版網路包含 GKE 叢集,則必須在轉換作業完成後升級 GKE 叢集,確保元件運作正常。
使用 GKE 網路轉換指令碼升級網路、叢集和節點集區。
如果您將舊版網路轉換為 VPC 網路,但未使用指令碼,可以使用指令碼進行必要的叢集和節點集區升級作業。
在單一區域轉換後更新資源
舊版網路沒有子網路,因此用於在舊版網路上建立或修改資源的任何指令碼或指令,都不會指定子網路。虛擬私有雲網路確實包含子網路,因此管理虛擬私有雲網路中資源的指令碼和指令通常需要您指定子網路。
不過,為確保用於管理舊版網路的指令碼和指令在轉換為 VPC 網路後仍可正常運作,請遵守下列規定:
如果您執行 gcloud CLI 指令或提出 API 要求,並指定與舊版聯播網轉換時使用的相同區域,子網路就會自動設為在轉換作業期間建立的子網路。
如果您執行 gcloud CLI 指令或提出 API 要求,並指定不同的區域 (與舊版網路在轉換時使用的區域不同),則必須指定子網路。
排解單一區域轉換問題
轉換嘗試:無法轉換位於多個區域的 VM 網路
當您嘗試轉換我的網路時,會收到以下錯誤訊息:
ERROR: (gcloud.compute.networks.switchToCustomMode) ResponseError: code=400, message=Only single-region legacy networks are supported. This network has at least one resource in us-central1 and at least one resource in asia-east1.
解決方案:只有在所有這些資源都位於單一區域時,才能將網路模式從舊版轉換為自訂模式:
- 執行個體 (包括已停止的執行個體)
- 執行個體群組
- 代管執行個體群組
- 轉寄規則
- routers
如要繼續,請將所有資源遷移至單一區域,或在轉換前將資源刪除。
轉換嘗試:因超出速率限制而無法轉換網路
當您嘗試轉換我的網路時,會收到以下錯誤訊息:
Error 403: Rate Limit Exceeded, rateLimitExceeded
解決方案:轉換作業有並行作業的全域配額。如果看到這則錯誤訊息,請稍候五分鐘,然後再試一次。
轉換期間:無法在切換模式的網路中建立 VM
嘗試建立、刪除或更新 VM 時,會收到以下錯誤訊息:
ERROR: (gcloud.compute.instances.create) ResponseError: code=400, message="Resource not ready".
解決方案:切換網路模式會鎖定網路,因此在作業完成前,無法在網路中建立新的 VM。轉換完成後,您可以建立、刪除及更新 VM。
轉換後:無法指定子網路就建立資源
嘗試在網路上建立新資源時,會收到以下錯誤訊息:
gERROR: (gcloud.compute.instances.create) ResponseError: code=400, message=Subnetwork should be specified for custom subnetmode network.
解決方法:更新資源建立指令碼,指定資源的子網路。
轉換後:無法刪除子網路
嘗試刪除已轉換的網路,或在轉換作業期間建立的子網路時,會收到以下錯誤訊息:
ERROR: (gcloud.compute.networks.subnets.delete) Could not fetch resource: - Cannot delete subnetwork created during legacy network to custom-mode conversion for a day. Please try again tomorrow.
解決方法:請等待一天,然後再嘗試刪除網路或子網路。
手動遷移至虛擬私有雲網路
如果無法進行單一區域轉換,您可以在虛擬私人雲端網路中重新建立舊版網路中的所有資源。目前沒有自動化解決方案可將舊版網路中的多個區域轉換為虛擬私人雲端網路。
建立自訂模式 VPC 網路,然後在您使用的每個區域中新增子網路。
在舊版網路中,記錄現有資源的詳細資料。您需要這項資訊,才能在 VPC 網路中重新建立這些項目。
為協助您開始使用,以下列出一些您可能需要重新建立的常見資源。
使用您記錄的相同設定重新建立資源。部分資源 (例如 VM 執行個體) 需要額外的規劃和步驟才能重建。如需部分範例,請參閱「特殊注意事項」一節。
盡可能先重新建立資源,再移除現有資源。這樣一來,您就可以在移除現有資源之前,先測試及驗證新資源是否正常運作。您可能無法重新建立所有資源,因為您可能會超出配額,或無法重複使用現有的命名慣例。
刪除舊資源和舊網路。
手動遷移的特別注意事項
單純重建資源可能會導致服務中斷。為避免服務中斷,您可能需要在遷移前採取額外行動。舉例來說,您可能需要複製服務的基礎架構,才能將流量從舊網路重新導向至新網路。或者,您可能需要為現有的 VM 執行個體建立快照,以便保留資料並將資料移至新的執行個體。
以下是遷移前可能需要規劃的情況:
- 如果您使用臨時外部 IP 位址,且想繼續使用,請將該位址推送至保留的靜態 IP 位址。
- 如果您需要移動 VM 執行個體,可以手動重新建立,或是使用 Google Cloud 從現有執行個體建立類似的執行個體。如果您建立類似的執行個體, Google Cloud 不會複製現有資料,但您可以使用快照和開機磁碟來執行此操作。
- 如果您有負載平衡服務,且想讓該服務持續運作,請在虛擬私有雲網路中新增重複的後端。您可以先開始將流量導向虛擬私有雲網路中的後端,再移除舊版網路中的後端。
後續步驟
- 如要進一步瞭解路徑,請參閱「路徑」。
- 如要瞭解防火牆規則,請參閱「虛擬私有雲防火牆規則」。