Cloud Interconnect 的最佳做法

規劃及設定 Cloud Interconnect 時,請遵循下列最佳做法。

處理 Google Cloud 專案

如果您的網路架構支援,請按照本節建議設定 Cloud Interconnect 專案。

在獨立專案中佈建實體 Cloud Interconnect 連線

在一個專案中佈建 Cloud Interconnect 的實體連線 (連接埠),但在其他專案中佈建 VLAN 連結。其他專案必須與包含實體連線的專案位於同一個 Google Cloud 機構。

透過 Cloud Router 將實體連線連至某個地區的 VLAN 連結,不一定要與實體連線位於同一專案。詳情請參閱「在其他專案中使用連線」。

這樣一來,您就能更輕鬆地完成下列設定步驟:

  • 您可以將個別的內部帳單帳戶與包含實體連線的專案建立關聯。
  • 您可以在包含實體連線的專案中,設定 Identity and Access Management (IAM) 角色和權限。
  • 如要刪除或更新非實體連線的資源,不會影響實體連線。

在共用虛擬私有雲主專案中設定 VLAN 連結

在共用虛擬私有雲網路中,請在主專案中設定所有 VLAN 連結,而非實體 Cloud Interconnect 連線 (連接埠)。如要進一步瞭解如何將附件連線至共用虛擬私有雲網路,請參閱「連線至多個虛擬私有雲網路的選項」。

建立容量充足的備援 Cloud Interconnect 連線

本節說明建立備援 Cloud Interconnect 連線的最佳做法,確保在容錯移轉情境中具備足夠容量。遵循這些做法可確保不會因預定維護或硬體故障等事件而導致停機。

如果容量平均分配在邊緣可用性網域之間,Cloud Interconnect 連線可為高達 50% 的網路流量提供保護。確保在發生故障或進行預定維護時,有足夠的容量。如果 Cloud Interconnect 的容量使用率超過 50%,連線可能會在網路壅塞期間受到節流。舉例來說,如果您打算在內部部署網路和 Google Cloud之間傳送 100 Gbps 的受保護流量,請務必佈建容量至少 200 Gbps 的備援 Cloud Interconnect 連線。

您可以根據下列任一建議拓撲建立 Cloud Interconnect 連線:

根據這些拓撲建立 Cloud Interconnect 連線時,您會在一個或多個都會區建立連線配對。在單一都會區內,您可以在不同的邊緣可用性網域中放置 Cloud Interconnect 連線。

建議您使用連線群組建立備援連線。詳情請參閱復原能力和服務等級協議選項

確保每個邊緣可用性網域的容量充足

如果都會區的其中一個邊緣可用性網域發生停機或維護作業,流量會容錯移轉至其他邊緣可用性網域。

如要避免單一邊緣可用性網域發生故障時封包遺失,請按照下列指引操作:

容量類型 指引
Cloud Interconnect 連線容量 請確保每個邊緣可用性網域都有足夠的連線容量,可處理所有實際工作負載流量。
VLAN 連結容量

請確保每個邊緣可用性網域都有足夠的 VLAN 連結容量,可承載目標虛擬私有雲網路的所有正式版流量。

Cloud Interconnect 連線上的虛擬私有雲流量會透過 VLAN 連結傳輸,這些連結會將連線連結至虛擬私有雲網路。即使每個邊緣可用性網域都有足夠的連線容量,也必須有足夠的 VLAN 連結容量。

VLAN 連結容量和多個虛擬私有雲網路

如果您使用 Cloud Interconnect 連線存取多個虛擬私有雲 (VPC) 網路,請從每個虛擬私有雲網路建立 VLAN 連結,連至每個 Cloud Interconnect 連線。請確保每個虛擬私有雲網路都有足夠的 VLAN 連結容量,可在發生容錯移轉時,承載該虛擬私有雲網路的所有正式環境流量。

假設您有下列虛擬私有雲網路和工作負載:

  • vpc-1 從內部部署網路接收的總流量為 2 Gbps。
  • vpc-2 也會從內部部署網路接收 2 Gbps 的總流量。

下表說明每個虛擬私有雲網路在每個邊緣可用性網域中,需要具備的最低連結容量:

邊緣可用性網域 連線容量 連結容量
EDGE_DOMAIN_1 1 x 10 Gbps 2 個 1 Gbps 至 vpc-1
2 個 1 Gbps 至 vpc-2
EDGE_DOMAIN_2 1 x 10 Gbps 2 個 1 Gbps 至 vpc-1
2 個 1 Gbps 至 vpc-2

透過 Cloud Interconnect 連線新增 VLAN 連結時,設定的連結容量可能會超過連線總容量。雖然這項設定有效,但實際流量不得超過連線總容量。請確認工作負載產生的流量不會超過連線容量。

使用作用中/作用中 VLAN 連結

設定備援 VLAN 連結的方法有兩種:

  • 主動/主動設定,可將流量分配到 VLAN 連結。
  • 主動/被動設定,一次只使用一個 VLAN 連結。

建議您使用「作用中-作用中」設定,因為這樣在正常運作期間,就能輕鬆判斷所有 VLAN 連結是否正常運作。使用「作用中-作用中」設定時,請監控用量模式,確保發生故障時有足夠的容量。

在主動/被動設定中,VLAN 連結可能會設定錯誤,但您並未察覺。如果您使用這項設定,請務必先測試容錯移轉,再新增正式環境流量。

瞭解區域之間的容錯移轉

如 Cloud Router 總覽中的「動態轉送模式的影響」一節所述,離開區域的網路流量會優先使用指標最低的路徑。在一般使用情況下,這表示輸出流量會透過最近的 Google Cloud 區域離開,該區域必須有任何有效的 VLAN 連結,而本機區域就是最近的區域。

正式版等級應用程式的拓撲為例,假設您有一個 VPC 網路,其中包含下列項目:

  • 兩個區域中的 VLAN 連結
  • 已啟用全域動態轉送

即使本地區域的連結過載,流量仍會優先從該區域的 VLAN 連結輸出。只有在本地區域的所有 VLAN 連結都停止運作時,流量才會流向其他區域。也就是說,拓撲中的四個 Cloud Interconnect 連線都必須有足夠的 VLAN 連結容量,才能傳輸所有實際工作環境流量。

情境

本節說明設定 Cloud Interconnect 資源的情境。此外,本文也會說明每種設定在正常運作和容錯移轉期間如何處理工作負載。每個情境都包含與備援和容量最佳做法相關的建議。

情境 1:容量充足

在這個情境中,您會在兩個不同的邊緣可用性網域中佈建兩個專屬互連網路連線,如下表所示:

邊緣可用性網域 連線容量 連結容量 附件區域
EDGE_DOMAIN_1 1 x 10 Gbps 1 x 10 Gbps ATTACHMENT_REGION_1
EDGE_DOMAIN_2 1 x 10 Gbps 1 x 10 Gbps ATTACHMENT_REGION_1

下表說明這項設定在正常運作和容錯移轉期間,如何處理工作負載:

資源 說明
工作負載大小 ATTACHMENT_REGION_1 與內部部署網路之間的總流量為 10 Gbps。
正常運作期間的容量

容量充足

ATTACHMENT_REGION_1 到地端部署網路的容量為 20 Gbps。10 Gbps 工作負載順利執行。

容錯移轉期間的容量

容量充足:即使其中一條 Cloud Interconnect 連線中斷,仍有足夠容量。

舉例來說,如果 EDGE_DOMAIN_1 中的連線失敗,則可用容量為 EDGE_DOMAIN_2 中的連線。這個單一 Cloud Interconnect 連線的容量為 10 Gbps。您在該互連網路建立的 10 Gbps 連結頻寬,足以傳輸實際工作負載。

如果工作負載增加到超過 10 Gbps 的流量,就會超出連結容量,您可能會遇到封包遺失的問題。

建議 佈建 Cloud Interconnect 連線和 VLAN 連結容量,確保每個邊緣可用性網域都有足夠的容量,可處理所有實際工作環境的工作負載。

情境 2:容錯移轉期間容量不足

在這個情境中,您會在兩個不同的邊緣可用性網域中佈建兩個專屬互連網路連線,如下表所示:

邊緣可用性網域 連線容量 連結容量 附件區域
EDGE_DOMAIN_1 1 x 100 Gbps 100 Gbps (2 個 50 Gbps) ATTACHMENT_REGION_1
EDGE_DOMAIN_2 1 x 100 Gbps 100 Gbps (2 個 50 Gbps) ATTACHMENT_REGION_1

下表說明這項設定在正常運作和容錯移轉期間,如何處理工作負載:

資源 說明
工作負載大小 ATTACHMENT_REGION_1 與內部部署網路之間的總流量為 150 Gbps。
正常運作期間的容量

容量充足

ATTACHMENT_REGION_1 到地端部署網路的容量為 200 Gbps。您的 150 Gbps 工作負載已順利執行。

容錯移轉期間的容量

如果任一 Cloud Interconnect 連線中斷,就會容量不足

如果其中一個 Cloud Interconnect 連線因維護而中斷,整個 150 Gbps 的工作負載會嘗試容錯移轉至單一 100 Gbps 連線。這超過連線容量,因此會發生擁塞和封包遺失的情況。

建議 為確保在發生故障事件時仍可正常運作,請確認每個連線的合併流量不會超過單一邊緣可用性網域的總容量。在這種情況下,您需要至少 200 Gbps 的連線容量,以及每個邊緣可用區 3 個 50 Gbps 的連結容量,才能在容錯移轉期間擁有足夠的容量。

情境 3:VLAN 連結不平衡

在此情境中,您會在兩個不同的邊緣可用性網域中佈建兩個專屬互連網路連線,如下表所示。您最初在 EDGE_DOMAIN_1 中佈建 1 個 10 Gbps 的連結容量。後來,您發現工作負載已增加至 20 Gbps,因此您只在 EDGE_DOMAIN_1 中將連結頻寬更新為 2 個 10 Gbps。

邊緣可用性網域 連線容量 連結容量 附件區域
EDGE_DOMAIN_1 1 x 100 Gbps 1 個 10 Gbps (初始佈建)
2 個 10 Gbps (稍後更新)
ATTACHMENT_REGION_1
EDGE_DOMAIN_2 1 x 100 Gbps 1 x 10 Gbps ATTACHMENT_REGION_1

下表說明這項設定在正常運作和容錯移轉期間,如何處理工作負載:

資源 說明
工作負載大小 ATTACHMENT_REGION_1 與內部部署網路之間的總流量為 20 Gbps。
正常運作期間的容量

容量充足

ATTACHMENT_REGION_1 到地端部署網路的容量為 30 Gbps。20 Gbps 工作負載順利執行。

容錯移轉期間的容量

如果 EDGE_DOMAIN_2 中的 Cloud Interconnect 連線中斷,容量充足
如果 EDGE_DOMAIN_1 中的 Cloud Interconnect 連線中斷,則為「容量不足」

如果 EDGE_DOMAIN_2 中的 Cloud Interconnect 連線中斷,剩餘連線仍有 20 Gbps 的連結容量,因此工作負載可順利執行。

不過,如果 Cloud Interconnect 連線在 EDGE_DOMAIN_1 中斷,剩餘連線的連結容量只有 10 Gbps,您會遇到壅塞和封包遺失問題。

建議 請確認都會區中兩個邊緣可用性網域的容量相同,這適用於 Cloud Interconnect 連線和 VLAN 連結。在這種情況下,您需要在每個邊緣可用性網域中,至少有 2 個 10 Gbps 的連結容量,才能確保其中一個 Cloud Interconnect 連線中斷時,仍有足夠的容量。

所有 VLAN 連結都使用相同的 MTU

建議您為連線至相同虛擬私有雲網路的所有 VLAN 連結使用相同的 MTU,將虛擬私有雲網路的 MTU 設為相同值。雖然建議您這麼做,但您不一定要讓 VLAN 連結 MTU 與 VPC 網路 MTU 相符。不過,如果您執行下列任一操作,可能會發生封包遺失的情況,尤其是 TCP 以外的通訊協定:

  • 為連線至相同虛擬私有雲網路的 VLAN 連結使用不同的 VLAN 連結 MTU。
  • 設定 VLAN 連結的 MTU,小於包含 VLAN 連結的虛擬私有雲網路 MTU。

如需通訊協定如何處理不相符的 MTU 的一般資訊,請參閱虛擬私有雲 MTU 文件中的「不相符的 MTU、MSS 鉗制、路徑 MTU 探索」。

透過 VLAN 連結傳送的封包會依下列方式處理:

情況 行為
TCP SYN 和 SYN-ACK 封包 Google Cloud 會執行 MSS 鉗制,變更 MSS,讓封包符合 VLAN 連結 MTU。舉例來說,如果 VLAN 連結的 MTU 為 1,500 位元組,MSS 鉗制會使用 1,460 位元組的最大區段大小。
IP 封包 (包括 VLAN 連結的 MTU) Google Cloud 不會變更封包,但 SYN 和 SYN-ACK 封包除外,如第一列所述。
IP 封包的 MTU 檢查
  • Google Cloud 資源透過 VLAN 連結傳送的封包 MTU,會受到 VLAN 連結 MTU 的限制。舉例來說,當 VM 執行個體將封包傳送至可透過動態路徑抵達的目的地時,如果封包超過 VLAN 連結的 MTU,系統就會捨棄封包。VLAN 連結的下一個躍點為:
    • Google Cloud 會捨棄封包,並傳送「需要分段」(IPv4 上的 ICMP) 或「封包過大」(ICMPv6) 訊息,無論「不分段」(DF) 位元是否開啟。
    • 您必須設定允許輸入的 VPC 防火牆規則 防火牆政策中的規則,允許來自符合原始封包目的地的來源的 ICMP (適用於 IPv4) 或 ICMPv6 (適用於 IPv6)。
    • 內部直通式網路負載平衡器和內部通訊協定轉送的轉送規則必須使用 L3_DEFAULT 通訊協定,才能處理路徑 MTU 探索 (PMTUD) 的 ICMP,以及原始封包使用的通訊協定。
  • Cloud Interconnect 不會對從內部部署網路收到的封包強制執行 VLAN 連結 MTU。而是由 Google Cloud 對接收封包的 Google Cloud 資源強制執行 MTU:
    • 如果接收封包的資源是 VM 執行個體, Google Cloud 會強制執行接收 VM 網路介面所用 VPC 網路的 MTU,就像接收 VM 收到VPC 網路內路由傳送的封包一樣。
    • 透過 VLAN 連結從內部部署環境傳送至 Google API 和服務的封包,會以與從 VM 執行個體傳送至 Google API 和服務的封包相同方式處理。詳情請參閱「與 Google API 和服務通訊」。
透過採用 Cloud Interconnect 的高可用性 VPN 傳送的封包 採用 Cloud Interconnect 的高可用性 VPN 使用 1440 位元組的閘道 MTU,且酬載 MTU 較小,視使用的密碼而定。詳情請參閱 Cloud VPN 說明文件中的最大傳輸單元 (MTU) 注意事項

後續步驟