使用 Application Load Balancer 做為 Network Load Balancer 的目標 - Elastic Load Balancing

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Application Load Balancer 做為 Network Load Balancer 的目標

您可以建立單一 Application Load Balancer 作為目標建立目標群組,並設定 Network Load Balancer 以將流量轉送至該群組。在此案例,Application Load Balancer 會在流量到達負載平衡決策時接管負載平衡決策。此組態結合了兩個負載平衡器的功能,並提供下列優點:

  • 您可以將 Application Load Balancer的第 7 層要求型路由功能與 Network Load Balancer 支援的功能結合使用,例如端點服務 (AWS PrivateLink) 與靜態 IP 地址。

  • 您可以針對需要單一端點進行多通訊協定的應用程式使用此組態,例如使用 HTTP 進行訊號傳輸的媒體服務,以及使用 RTP 來串流內容的應用程式。

您可以將此功能與內部或面對網際網路的 Application Load Balancer 搭配使用,作為內部或面向網際網路的 Network Load Balancer 目標。

考量事項
  • 若要將 Application Load Balancer 關聯為 Network Load Balancer 的目標,它們必須位於相同帳戶中的相同 Amazon VPC 中。

  • 您可以將 Application Load Balancer 關聯為多個 Network Load Balancer 目標。若要這麼做,請為每個個別的 Network Load Balancer 使用個別的目標群組登錄 Application Load Balancer。

  • 您向 Network Load Balancer 註冊的每個 Application Load Balancer 會將每個 Network Load Balancer 每個可用區域的目標數量上限減少 50 個。 Load Balancer 您可以在兩個負載平衡器停用跨區域負載平衡,以最大程度減少延遲並避免區域資料傳輸費用。如需詳細資訊,請參閱Network Load Balancer 的配額

  • 當目標群組類型為 alb時,您無法修改目標群組屬性。這些屬性一律使用其預設值。

  • 在將 Application Load Balancer 登錄為目標之後,除非從所有目標群組取消登錄 Application Load Balancer,否則無法將其刪除。

  • Network Load Balancer 與 Application Load Balancer 之間的通訊一律使用 IPv4。

步驟 1:建立 Application Load Balancer

在開始之前,請先設定 Application Load Balancer 將使用的目標群組。確定您有虛擬私有雲端 (VPC),其中包含您將向目標群組登錄的目標。此 VPC 在目標使用的每個可用區域中至少必須有一個公有子網路。

使用主控台建立 Application Load Balancer
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格的 Load Balancing (負載平衡器),選擇 Load Balancer (負載平衡器)

  3. 選擇 Create load balancer (建立負載平衡器)。

  4. Application Load Balancer (應用程式負載平衡器) 下,選擇 Create (建立)。

  5. 建立 Application Load Balancer 頁面的 基本組態, 指定 負載平衡器名稱配置, 與 IP 地址類型

  6. 對於接聽程式,您可以在任何連接埠建立 HTTP 或 HTTPS 接聽程式。不過,您必須確定此接聽程式的連接埠號碼與此 Application Load Balancer 所在目標群組的連接埠相符。

  7. 可用區域,請執行下列動作:

    1. 對於 VPC,請選擇包含執行個體或 IP 地址作為 Application Load Balancer 目標的虛擬私有雲端 (VPC)。您必須使用 Network Load Balancer 在 步驟 3:建立 Network Load Balancer,並且設定 Application Load Balancer 做為目標使用的相同 VPC。

    2. 選取兩個或多個可用區域 與對應的子網路。確保這些可用區域與 Network Load Balancer 啟用的可用區域相符,以最佳化可用性、擴展與效能。

  8. 您可以建立新的安全群組或選取現有的安全群組,將負載平衡器 指派給安全群組

    您選擇的安全群組應包含的規則為允許流量到達此負載平衡器的接聽程式連接埠。使用用戶端電腦的 CIDR 區塊 (IP 地址範圍) 做為安全群組輸入規則的流量來源。這可讓用戶端透過此 Application Load Balancer 傳送流量。有關將 Application Load Balancer 的安全群組配置為 Network Load Balancer 目標的詳細資訊,請參閱在 Application Load Balancer 使用者指南Application Load Balancer 的安全群組

  9. 對於設定路由,請選擇您為此 Application Load Balancer 設定的目標群組。如果您沒有可用的目標群組,而且想要設定新的目標群組,請參閱 Application Load Balancer 使用者指南建立目標群組

  10. 複查您的組態,然後選擇 Create load balancer (建立負載平衡器)

使用 建立 Application Load Balancer AWS CLI

使用 create-load-balancer 命令。

步驟 2:使用 Application Load Balancer 做為目標,建立目標群組

建立目標群組可讓您將新的或現有的 Application Load Balancer 登錄為目標。每個目標群組只能新增一個 Application Load Balancer。相同的 Application Load Balancer 也可以在個別的目標群組中使用,做為最多兩個 Network Load Balancer 目標。

若要使用主控台建立目標群組並將 Application Load Balancer 註冊為目標
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格的 Load Balancing (負載平衡) 中,選擇 Target Groups (目標群組)。

  3. 選擇 Create target group (建立目標群組)

  4. 指定群組詳細資訊 頁面的 基本組態下,選擇 Application Load Balancer

  5. 針對目標群組名稱,輸入 Application Load Balancer 目標群組的名稱。

  6. 對於 通訊協定,只允許 TCP。選取目標群組的 連接埠 。此目標群組連接埠必須符合 Application Load Balancer 接聽程式連接埠。或者,您也可以在 Application Load Balancer 新增或編輯接聽程式連接埠,以符合此連接埠。

  7. 對於 VPC,請選取 Application Load Balancer 的虛擬私有雲端 (VPC),以向目標群組登錄。

  8. 對於運作狀態檢查,請選擇 HTTP 或 HTTPS 做為運作狀態檢查通訊協定。運作狀態檢查會傳送至 Application Load Balancer,並使用指定的連接埠、通訊協定與 ping 路徑轉送至其目標。確保您的 Application Load Balancer 具有與運作狀態檢查的連接埠與通訊協定相符的接聽程式,以接收這些運作狀態檢查。

  9. (選用)新增一個或多個標籤,如下所示:

  10. 選擇 Next (下一步)

  11. 登錄目標 頁面,選擇要登錄為目標的 Application Load Balancer。您從清單選擇的 Application Load Balancer,必須在與您建立的目標群組位於相同的連接埠有一個接聽程式。您可以在此負載平衡器新增或編輯接聽程式以符合目標群組的連接埠,或返回上一個步驟,然後變更為目標群組指定的連接埠。如果您不確定要新增哪個 Application Load Balancer 做為目標,或不想在此時新增它,您可以選擇稍後新增 Application Load Balancer。

  12. 選擇 Create target group (建立目標群組)

使用 AWS CLI建立目標群組並將 Application Load Balancer 登錄為目標

使用 create-target-group (建立目標群組)register-targets (登錄目標) 命令。

步驟 3:建立 Network Load Balancer,並且設定 Application Load Balancer 做為目標

使用下列步驟建立 Network Load Balancer,然後使用主控台將 Application Load Balancer 設定為其目標。

使用主控台建立 Network Load Balancer 和接聽程式
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格的 Load Balancing (負載平衡器),選擇 Load Balancer (負載平衡器)

  3. 選擇 Create load balancer (建立負載平衡器)。

  4. Network Load Balancer 下,選擇建立

  5. 基本組態

    基本組態 窗格, 設定 負載平衡器名稱配置, 與 IP 地址類型

  6. 網路映射

    1. 針對 VPC,選取與您的 Application Load Balancer 目標相同的 VPC。如果您為結構描述選取面向網際網路,則只有具有網際網路閘道的 VPC 可供選擇。

    2. 關於映射,選擇兩個或多個可用區域與對應的子網路。我們建議您選擇與 Application Load Balancer 目標相同的可用區域,以最佳化可用性、擴展與效能。

      (選用) 若要使用靜態 IP 地址,請在每個可用區域的 Ipv4 設定選擇使用 Elastic IP 地址。使用靜態 IP 地址,您可以將特定 IP 地址加入防火牆的允許清單,或者您可以使用用戶端硬式編碼 IP 地址。

  7. 接聽程式和路由

    1. 預設值是接受連接埠 80 以上 TCP 流量的接聽程式。只有 TCP 接聽程式可以將流量轉送至 Application Load Balancer 目標群組。您必須將 通訊協定 作為 TCP,但您可以視需要修改 連接埠

      透過此組態,您可以使用 Application Load Balancer 的 HTTPS 接聽程式來終止 TLS 流量。

    2. 對於預設動作,請選取要轉送流量的 Application Load Balancer 目標群組。如果您在清單中沒有看到它,或者無法選取目標群組 (因為其他 Network Load Balancer 已在使用),則可以建立 Application Load Balancer 目標群組,如中所示 步驟 2:使用 Application Load Balancer 做為目標,建立目標群組

  8. Tags (標籤)

    (選用) 新增標籤以分類負載平衡器。如需詳細資訊,請參閱標籤

  9. 摘要

    複查您的組態,然後選擇 Create load balancer (建立負載平衡器)

使用 建立 Network Load Balancer AWS CLI

使用 create-load-balancer 命令。

若要使用您在上一個步驟中設定的 Network Load Balancer 做為私有連線的端點,您可以啟用 AWS PrivateLink。這會建立與負載平衡器做為端點服務的私有連線。

使用 Network Load Balancer 建立 VPC 端點服務
  1. 在導覽窗格上選擇 Load Balancers (負載平衡器)

  2. 選取您 Network Load Balancer 的名稱來開啟其詳細資訊頁面。

  3. 整合 索引標籤,擴展 VPC 端點服務 (AWS PrivateLink)

  4. 選擇 Create Endpoint(建立端點) 來開啟 Create Endpoint (建立端點) 頁面。如需其餘步驟,請參閱 AWS PrivateLink 指南建立端點服務