建立 Application Load Balancer - Elastic Load Balancing

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

建立 Application Load Balancer

負載平衡器會從用戶端取得請求,然後將請求分發到目標群組中的目標。

開始之前,請確保虛擬私有雲端 (VPC) 在目標使用的每個區域中至少有一個公有子網路。如需詳細資訊,請參閱 負載平衡器的子網路

若要使用建立負載平衡器 AWS CLI,請參閱教學課程:使用 AWS CLI 建立 Application Load Balancer

若要使用建立負載平衡器 AWS Management Console,請完成下列工作。

步驟 1:設定目標群組

設定目標群組可讓您註冊 EC2 執行個體等目標。設定負載平衡器時,在此步驟中設定的目標群組會作為接聽程式規則中的目標群組使用。如需詳細資訊,請參閱 Application Load Balancer 的目標群組

設定目標群組
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Target Groups (目標群組)

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

  4. 基本組態區段中,設定下列參數:

    1. 選擇目標類型中,選取執行個體來依執行個體 ID 指定目標,或選取 IP 地址來僅依 IP 地址指定目標。如果目標類型為 Lambda 函數,您可以選取運作狀態檢查區段中的啟用來啟用運作狀態檢查。

    2. 目標群組名稱中,輸入目標群組的名稱。

    3. 視需要修改連接埠通訊協定

    4. 如果目標類型為執行個體IP 地址,請選擇 IPv4IPv6 作為 IP 地址類型,否則請跳至下一個步驟。

      請注意,只有具有所選 IP 地址類型的目標才能包含在此目標群組中。建立目標群組後,便無法變更 IP 地址類型。

    5. 對於 VPC,請選取虛擬私有雲端 (VPC),內含要包含在目標群組中的目標。

    6. 對於通訊協定版本,如果請求通訊協定為 HTTP/1.1 或 HTTP/2,則選取 HTTP1;如果請求通訊協定為 HTTP/2 或 gRPC ,則選取 HTTP2;如果請求通訊協定為 gRPC,則選取 gRPC

  5. 運作狀態檢查區段中,視需要修改預設設定。對於進階運作狀態檢查設定,請選擇運作狀態檢查連接埠、計數、逾時、間隔,並指定成功代碼。如果運作狀態檢查連續超過運作狀態不佳閾值的次數,負載平衡器會停用該目標。當運作狀態檢查連續超過運作狀態不佳閾值次數時,負載平衡器會重新啟用該目標。如需詳細資訊,請參閱 目標群組運作狀態檢查

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

    1. 展開 Tags (標籤) 區段。

    2. 選擇 Add tag (新增標籤)

    3. 輸入標籤索引鍵和標籤。允許的字元包括 UTF-8 格式的英文字母、空格、數字,以及以下特殊字元:+ - = . _ : / @。不可使用結尾或前方空格。標籤值區分大小寫。

  7. 選擇下一步

步驟 2:註冊目標

您可以在目標群組中將 EC2 執行個體、IP 地址或 Lambda 函數註冊為目標。這是建立負載平衡器的選用步驟。不過,您必須註冊目標,才能確保負載平衡器會將流量路由至其中。

  1. 註冊目標頁面中,如下所示,新增一個或多個目標:

    • 如果目標類型為執行個體,請選取一個或多個執行個體,輸入一個或多個連接埠,然後選擇包含為下方待處理項目

    • 如果目標類型是 IP 地址,請執行下列動作:

      1. 從清單中選取網路 VPC,或選擇其他私人 IP 地址

      2. 手動輸入 IP 地址,或使用執行個體詳細資料尋找 IP 地址。一次最多可輸入五個 IP 地址。

      3. 輸入用於將流量路由到指定 IP 地址的連接埠。

      4. 選擇包含為下方待處理項目

    • 如果目標類型為 Lambda,請選取 Lambda 函數,或輸入 Lambda 函數 ARN,然後選擇包含為下方待處理項目

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

步驟 3:設定負載平衡器和接聽程式

若要建立 Application Load Balancer,必須先提供負載平衡器的基本組態資訊,例如名稱、機制和 IP 地址類型。然後提供網路和一個或多個接聽程式的相關資訊。接聽程式是檢查連線請求的程序。使用通訊協定以及連接埠為用戶端與負載平衡器間的連線進行設定。如需受支援的通訊協定與連接埠之詳細資訊,請參閱接聽程式組態

設定負載平衡器和接聽程式
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Load Balancers (負載平衡器)

  3. 選擇 Create Load Balancer (建立負載平衡器)

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

  5. 基本組態

    1. 針對 Load balancer name (負載平衡器名稱),輸入負載平衡器的名稱。例如 my-alb。Application Load Balancer 的名稱必須在該區域的 Application Load Balancer 和 Network Load Balancer 集內是唯一的。名稱最多可包含 32 個字元,而且只能包含英數字元和連字號。名称開頭或結尾不得為連字號或 internal-。建立 Application Load Balancer 之後,就無法變更其名稱。

    2. 針對 Scheme (機制),選擇 Internet-facing (面對網際網路) 或 internal (內部)。面對網際網路的負載平衡器會透過網際網路將用戶端的請求路由至目標。內部負載平衡器會使用私有 IP 地址將請求路由至目標。

    3. 對於 IP address type (IP 地址類型),請選擇 IPv4Dualstack (雙堆疊)。如果您的用戶端使用 IPv4 地址來與負載平衡器通訊,請使用 IPv4。如果您的用戶端同時使用 IPv4 和 IPv6 地址來與負載平衡器通訊,請選擇 Dualstack (雙堆疊)。

  6. 網路映射

    1. 針對 VPC,選取您用於 EC2 執行個體的 VPC。如果您對機制選取面向網際網路,則只有具有網際網路閘道的 VPC 可供選擇。

    2. 對於映射,請依照下列方式選取子網路,以啟用負載平衡器的區域:

      • 來自兩個或更多可用區域的子網路

      • 來自一個或多個 Local Zone 的子網路

      • 一個 Outpost 子網路

      如需詳細資訊,請參閱 負載平衡器的子網路

      如果是內部負載平衡器,會從子網路 CIDR 指派 IPv4 和 IPv6 地址。

      如果您為負載平衡器啟用雙堆疊模式,請選取同時具有 IPv4 和 IPv6 CIDR 區塊的子網路。

  7. 針對 Security groups (安全群組),選取現有的安全群組,或建立新的安全群組。

    負載平衡器的安全群組必須允許它與已註冊的目標在接聽程式連接埠和運作狀態檢查連接埠上通訊。主控台可以代替您建立負載平衡器的安全群組,內含允許此通訊的規則。您也可以建立安全群組並選取它。如需詳細資訊,請參閱 建議的規則

    (選用) 若要為您的負載平衡器建立新的安全群組,請選擇 Create a new security group (建立新的安全群組)。

  8. 對於接聽程式和路由,預設接聽程式會在連接埠 80 上接受 HTTP 流量。您可以保留預設的通訊協定和連接埠,或選擇其他通訊協定和連接埠。對於 Default action (預設動作),選擇您建立的目標群組。您可以選擇 Add listener (新增接聽程式) 以新增另一個接聽程式 (例如,HTTPS 接聽程式)。

  9. (選擇性) 如果使用 HTTPS 接聽程式

    對於安全政策,建議您一律使用最新的預先定義安全政策。

    1. 針對預設 SSL/TLS 憑證,有下列選項可用:

      • 如果您使用建立或匯入憑證 AWS Certificate Manager,請選取從 ACM,然後從選取憑證選取憑證選取憑證

      • 如果您使用 IAM 匯入憑證,請選取從 IAM,然後從選取憑證處選取您的憑證。

      • 如果您想匯入憑證,但您的區域無法使用 ACM,請依序選取匯入到 IAM。在憑證名稱欄位輸入憑證名稱。在憑證私有金鑰中,複製並貼上私有金鑰檔案的內容 (PEM 編碼)。在憑證內文中,複製並貼上公有金鑰憑證檔案的內容 (PEM 編碼)。在 Certificate Chain (憑證鏈) 中,將憑證鏈檔案的內容 (PEM 編碼) 複製並貼上,除非您使用的是自我簽署憑證,且不介意瀏覽器隱含地接受憑證。

    2. (選擇性) 若要啟用相互驗證,請在用戶端憑證處理下啟用相互驗證 (MTL)

      啟用時,預設的相互 TLS 模式為傳

      如果您選取「使用信任存放區驗證」:

      • 根據預設,會拒絕具有過期用戶端憑證的連線。若要變更此行為,請展開 [進階 MTL 設定],然後在 [用戶端憑證到期] 下選取 [允許過期的用戶

      • 在 [信任存放區] 下選擇現有的信任存放區,或選擇 [新增信任存放區

        • 如果您選擇 [新增信任存放區],請提供信任存放區名稱S3 URI 憑證授權單位位置,以及選擇性地提供 S3 URI 憑證撤銷清單位置

  10. (選用) 您可以在建立期間將其他服務與負載平衡器整合,在「使用服務整合最佳化」下方。

  11. 標記和建立

    1. (選用) 新增標籤以便對負載平衡器進行分類。每個負載平衡器的標籤索引鍵必須是唯一的。允許的字元包括英文字母、空格、數字 (UTF-8 格式) 以及以下特殊字元:+ - =。_ : / @。不可使用結尾或前方空格。標籤值區分大小寫。

    2. 複查您的組態,然後選擇 Create load balancer (建立負載平衡器)。一些預設屬性會在建立期間套用至負載平衡器。您可以在建立負載平衡器之後檢視和編輯這些屬性。如需詳細資訊,請參閱 負載平衡器屬性

步驟 4:測試負載平衡器

建立負載平衡器後,請確認 EC2 執行個體已通過初始運作狀態檢查。然後,您可以檢查負載平衡器是否正在向 EC2 執行個體傳送流量。若要刪除負載平衡器,請參閱刪除 Application Load Balancer

若要測試負載平衡器
  1. 建立網路負載平衡器之後,選擇 Close (關閉)

  2. 在導覽窗格中,選擇 Target Groups (目標群組)

  3. 選取新建立的目標群組。

  4. 選擇 Targets (目標) 並確認您的執行個體已就緒。如果執行個體的狀態為 initial,通常是因為執行個體仍在註冊中。此狀態也可能表示執行個體尚未通過最低數量的運作狀態檢查,無法視為運作狀態良好。至少有一個執行個體的運作狀態為健康之後,您可以測試您的負載平衡器。如需詳細資訊,請參閱 目標運作狀態

  5. 在導覽窗格中,選擇 Load Balancers (負載平衡器)

  6. 選取新建立的負載平衡器。

  7. 選擇 [說明],然後複製網際網路對向或內部負載平衡器的 DNS 名稱 (例如, my-load-balancer-1234567890abcdef.eu)。

    • 對於面向網際網路的負載平衡器,將 DNS 名稱貼至已連接網際網路的 Web 瀏覽器的網址欄位。

    • 對於內部負載平衡器,請將 DNS 名稱貼至具有 VPC 私人連線的 Web 瀏覽器的網址欄位中。

    如果一切設定都正常,瀏覽器會顯示伺服器的預設頁面。

  8. 如果網頁未顯示,請參閱下列文件以取得其他組態說明和疑難排解步驟。