Cloud Interconnect 的最佳做法

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

使用 Google Cloud 專案

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

在其他專案中佈建實體 Cloud Interconnect 連線

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

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

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

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

在 Shared VPC 主專案中設定 VLAN 連結

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

建立備援 Cloud Interconnect 連線,並提供足夠的容量

本節介紹建立備援 Cloud Interconnect 連線的最佳做法,這些連線在預定連線維護期間,或邊緣供應可用區 (EAD) 和主機代管機房組合發生非預期故障時,可為 VLAN 連結提供充足的容量。

您必須根據下列其中一種拓撲設定 Cloud Interconnect 連線和 VLAN 連結:

無論選擇哪種拓撲,您的 Cloud Interconnect 連線都必須位於都會區或各都會區的 EAD 和主機代管機房組合中。

在每個都會區內,部署一對主機代管機房和邊緣可用性網域組合的 Cloud Interconnect 連線,並在兩者之間平均分配頻寬。都會區中所有 Cloud Interconnect 連線的總頻寬,應至少是 VLAN 連結所需頻寬的兩倍。這樣一來,每個都會區都有足夠的 Cloud Interconnect 連線,可因應都會區內單一主機代管機房和邊緣可用性網域組合的問題。

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

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

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

容量類型 指引
Cloud Interconnect 連線容量 請確保每個邊緣可用性網域都有足夠的連線容量,可處理所有正式版流量。
VLAN 連結容量

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

Cloud Interconnect 連線上的 VPC 流量會透過 VLAN 連結傳輸,這些連結會將連線連結至 VPC 網路。即使每個邊緣可用區都有足夠的連線容量,也必須有足夠的 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 x 1 Gbps 至 vpc-1
2 x 1 Gbps 至 vpc-2
EDGE_DOMAIN_2 1 x 10 Gbps 2 x 1 Gbps 至 vpc-1
2 x 1 Gbps 至 vpc-2

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

使用作用中-作用中 VLAN 連結

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

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

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

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

瞭解區域之間的容錯移轉

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

請參考以下範例,其中包含適用於正式環境應用程式的拓撲,以及具有下列項目的虛擬私有雲網路:

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

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

情境

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

情境 1:容量充足

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

邊緣可用性網域 連線容量 連結容量 附件區域
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:容錯移轉期間容量不足

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

邊緣可用性網域 連線容量 連結容量 附件區域
EDGE_DOMAIN_1 1 x 100 Gbps 100 Gbps (2 x 50 Gbps) ATTACHMENT_REGION_1
EDGE_DOMAIN_2 1 x 100 Gbps 100 Gbps (2 x 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 連結不平衡

在此情境中,您會在兩個不同的邊緣可用性網域中佈建兩個 Dedicated Interconnect 連線,如下表所示。您最初在 EDGE_DOMAIN_1 中佈建 1 x 10 Gbps 的連結容量。稍後,您發現工作負載已成長至 20 Gbps,因此只更新 EDGE_DOMAIN_1 中的附件容量,改為 2 x 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 連線中斷,則容量不足。

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

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

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

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

建議您為連線至相同虛擬私有雲網路的所有 VLAN 連結使用相同的 MTU,並將虛擬私有雲網路的 MTU 設為相同的值。雖然建議您這麼做,但您不一定要讓 VLAN 連結 MTU 和虛擬私有雲網路 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
  • 資源透過 VLAN 連結傳送封包時,封包的 MTU 會受到 VLAN 連結的 MTU 限制。 Google Cloud 舉例來說,當 VM 執行個體將封包傳送至可透過動態路由抵達的目的地時,如果該路由的下一個躍點是 VLAN 連結,則超過 VLAN 連結 MTU 的封包會遭到捨棄:
    • Google Cloud 會捨棄封包,並傳送「需要分段」(IPv4 的 ICMP) 或「封包過大」(ICMPv6) 訊息,無論「請勿分段」(DF) 位元是否開啟。
    • 您必須設定輸入允許 VPC 防火牆規則或 防火牆政策中的規則,允許來自符合原始封包目的地的來源的 ICMP (適用於 IPv4) 或 ICMPv6 (適用於 IPv6)。
    • 內部直通式網路負載平衡器和內部通訊協定轉送的轉送規則必須使用 L3_DEFAULT 通訊協定,才能處理路徑 MTU 探索 (PMTUD) 的 ICMP,以及原始封包使用的通訊協定。
  • Cloud Interconnect 不會對從地端部署網路收到的封包強制執行 VLAN 連結 MTU。而是對接收封包的 Google Cloud 資源強制執行 MTU: Google Cloud
    • 如果接收封包的資源是 VM 執行個體, Google Cloud 會強制執行接收 VM 網路介面所用 VPC 網路的 MTU,就像接收 VM 收到虛擬私有雲網路內路由的封包一樣。
    • 透過 VLAN 連結從地端部署傳送至 Google API 和服務的封包,會以與從 VM 執行個體傳送至 Google API 和服務的封包相同方式處理。詳情請參閱「與 Google API 和服務通訊」。
透過採用 Cloud Interconnect 的高可用性 VPN 傳送的封包 採用 Cloud Interconnect 的高可用性 VPN 使用的閘道 MTU 為 1440 個位元組,酬載 MTU 則較小,視使用的密碼而定。詳情請參閱 Cloud VPN 說明文件中的「MTU 考量事項」。

後續步驟