Azure跨區域(全域層級)負載平衡器

蘇建榮 Alan Su

  • 精誠資訊/恆逸教育訓練中心-資深講師
  • 技術分類:雲端

 

 

Azure 負載平衡器(Load Balancer)屬於在OSI模型第4層運作的設備,它可以將使用TCP 或 UDP 協定的工作負載分散到虛擬網路中的多個虛擬機器或虛擬機器擴展集的執行個體,並且它以健康狀態探查來偵測後端集區中的目標們是否良好,當後端集區中有目標發生故障時可自動將流量轉送往此集區中狀態良好的其他目標。

區域層級負載平衡器是佈建在與後端集區中的虛擬機器或執行個體相同的Azure區域(region)中,並且它單一後端集區中的多個目標都必須至少在同一個虛擬網路中。因此,若此 Azure區域發生 region outage 則無法繼續為用戶提供服務。而跨區域負載平衡器則是全域(Global)層級的,它的後端集區中的目標是由公用型標準定價層的區域層級負載平衡器所組成,這些區域層級負載平衡器可以被部署在不同的 Azure 區域中,當用戶透過跨區域負載平衡器的前端 IP (public IP) 進行存取時,若其中一個後端目標所在的區域發生 region outage,用戶可被轉送往在另一個Azure 區域中狀態良好的目標以繼續存取。(若多個在不同區域的後端目標狀態皆為良好時,它會將負載分配到最接近用戶的區域)。

圖一、跨區域(全域層級)負載平衡器的應用情境

跨區域(全域層級)負載平衡器目前有以下的限制:

  1. 前端IP設定
    • 僅限公用型(public ip),目前不支援內部型(private ip)。
    • 不支援跨區域 IPv6 的前端 IP 設定。
  2. 後端集區中的目標
    • 必須是公用型標準定價層的區域性負載平衡器。
  3. 目前無法設定健康狀態探查
    • 預設每隔20秒自動收集關於區域性負載平衡器的可用性資訊。
  4. 目前無法與 Azure Kubernetes Service (AKS) 的整合使用

使用 Azure portal建立跨區域(全域層級)負載平衡器

  1. 在「搜尋資源、服務及文件」輸入「Load balancer」後,選取「負載平衡器」。
  2. 按「+ 建立」,選取訂戶帳戶與資源群組後,在「名稱」輸入您想使用的名字。(在本文環境中我把它命名為 Global-LB)
  3. 在「區域」請選取“美國東部 2、美國西部、西歐、東南亞、美國中部、歐洲北部或東亞”這七個中的其中一個。此處選的區域在全域層級負載平衡器中稱為Home regions,它僅是全域層級負載平衡器的公用 IP 位址所在的區域,它不會影響流量的路由方式,並且在 Home regions發生 region outage 時,此全域層級負載平衡器仍會正常運作。(在本文環境中我選取的是美國東部 2)
  4. 在「類型」選取「公用」、在「SKU」選取「標準」,就可以在「層級」選取「全域」了。
  5. 在「公用 IP 位址名稱」輸入您想使用的名字。(在本文環境中我把它命名為 Global-LB-IP)
  6. 按「檢閱+建立」,然後再按「建立」。

圖二、建立跨區域(全域層級)負載平衡器

為全域層級負載平衡器新增後端集區與負載平衡規則

  1. 在您的全域層級負載平衡器(在本文環境中我的是Global-LB)中,點選「後端集區」,然後按「+新增」。
  2. 在「名稱」輸入您想使用的名字。(在本文環境中我把它命名為 CRPool1)
  3. 在「負載平衡器」選取您已建立的兩個(或更多個)區域層級負載平衡器。(在本文環境中我的是 EUS-LB 以及 SEA-LB 這兩個)
  4. 按「新增」,等待新增完成後再進行下一步驟。
  5. 圖三、新增後端集區

  6. 點選「負載平衡規則」後,按「+新增」。
  7. 在「名稱」輸入您想使用的名字。(在本文環境中我把它命名為 CRRule1)
  8. 在「IP 版本」選取「IPv4」、「前端 IP 位址」選取「LoadBalancerFrontEnd」。
  9. 在「通訊協定」與「連接埠」選取與您後端集區中區域層級負載平衡器的負載平衡規則相容的設定。
  10. 在「後端集區」選取您在步驟 2 所建立的後端集區名稱。(在本文環境中我的是CRRule1)
  11. 按「新增」。
  12. 圖四、新增負載平衡規則

在新增完成後,即可透過此全域層級負載平衡器的前端公用 IP 位址進行存取了!


您可在下列課程中了解更多技術喔!