透過目標群組來登記目標 - Elastic Load Balancing

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

透過目標群組來登記目標

當您的目標準備好處理請求時,可以向一或多個目標群組進行註冊。您可以使用執行個體 ID 或 IP 地址來登錄目標。在註冊程序完成、目標通過初始的運作狀態檢查之後,負載平衡器就會立即開始將請求轉送到目標。註冊程序可能需要幾分鐘的時間才能完成,並開始運作狀態檢查。如需更多詳細資訊,請參閱「目標群組運作狀態檢查」。

如果對目前已註冊目標的需求增加,您可以註冊額外的目標來應付需求。如果對已註冊目標的需求減少,您可以從目標群組取消註冊目標。取消註冊程序可能需要幾分鐘的時間才能完成,而且負載平衡器可能需要幾分鐘才能停止將請求路由到目標。如果之後需求增加,您可以再次向目標群組註冊已取消註冊的目標。如果您需要為目標提供服務,可以取消註冊,然後在服務完成後再次註冊。

當您取消登錄目標時,Elastic Load Balancing 會等到處理中的請求完成。這稱為連接耗盡。當連接耗盡作業正在進行時,目標的狀態是 draining。取消登記完成之後,目標的狀態會變更為 unused。 如需詳細資訊,請前往 取消登記的延遲

如果是根據執行個體 ID 來註冊目標,您可以使用負載平衡器搭配 Auto Scaling 群組。在將目標群組連接到 Auto Scaling 群組,而且群組擴展之後,由 Auto Scaling 群組所啟動的執行個體,會自動登錄到目標群組。如果分離負載平衡器與 Auto Scaling 群組的連結,會自動從該目標群組中取消執行個體的登錄。如需詳細資訊,請參閱 Auto Scaling中的將負載平衡器連接到您的 Amazon EC2 Auto Scaling 使用者指南 群組

目標安全群組

當您將 EC2 執行個體登錄為目標時,必須確定這些執行個體的安全群組,會允許透過接聽程式連接埠和運作狀態檢查通訊埠,來傳送流量。

Limits

  • 網路負載平衡器 不具有關聯的安全群組。因此,目標的安全群組必須使用 IP 地址,來允許從負載平衡器傳來的流量。

  • 您無法使用 clients 的安全群組做為目標安全群組的來源。反之,請使用 client CIDR 區塊做為目標安全群組的來源。

以下是針對執行個體安全群組的建議規則。

Inbound
來源 通訊協定 連接埠範圍 註解
Client IP addresses target target 允許用戶端流量 (instance 目標類型)
VPC CIDR target target 允許用戶端流量 (ip 目標類型)
VPC CIDR health check health check 允許來自負載平衡器的運作狀態檢查流量

如果您依 IP 位址註冊目標且不想將存取權限授予整個 VPC CIDR,可以將存取權限授予負載平衡器節點所使用的私有 IP 地址。每個負載平衡器子網路都有一個 IP 地址。若要尋找這些地址,請執行下列步驟。

尋找要允許的私有 IP 地址

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Network Interfaces (網路界面)

  3. 在搜尋欄位中輸入 網路負載平衡器 的名稱。每個負載平衡器子網路都有一個網路界面。

  4. 在每個網路界面的 Details (詳細資訊) 標籤上,複製 Primary private IPv4 IP (主要私有 IP) 中的地址。

網路ACLs

將 EC2 執行個體登記為目標時,您必須確保執行個體的子網路網路 ACLs 在接聽程式連接埠和運作狀態檢查連接埠上允許流量。VPC 的預設網路存取控制清單 (ACL) 可允許所有傳入和傳出的流量。如果您建立自訂網路 ACLs,請確認它們允許適當的流量。

與執行個體之子網路相關聯的網路 ACLs 必須允許面向網際網路負載平衡器的下列流量。

Inbound
來源 通訊協定 連接埠範圍 註解
Client IP addresses listener listener 允許用戶端流量 (instance 目標類型)
VPC CIDR listener listener 允許用戶端流量 (ip 目標類型)
VPC CIDR health check health check 允許來自負載平衡器的運作狀態檢查流量
Outbound
目的地 通訊協定 連接埠範圍 註解
Client IP addresses listener listener 允許回應用戶端 (instance 目標類型)
VPC CIDR listener listener 允許回應用戶端 (ip 目標類型)
VPC CIDR health check 1024-65535 允許運作狀態檢查流量

與負載平衡器之子網路相關聯的網路 ACLs 必須允許面向網際網路負載平衡器的下列流量。

Inbound
來源 通訊協定 連接埠範圍 註解
Client IP addresses listener listener 允許用戶端流量 (instance 目標類型)
VPC CIDR listener listener 允許用戶端流量 (ip 目標類型)
VPC CIDR health check 1024-65535 允許運作狀態檢查流量
Outbound
目的地 通訊協定 連接埠範圍 註解
Client IP addresses listener listener 允許回應用戶端 (instance 目標類型)
VPC CIDR listener listener 允許回應用戶端 (ip 目標類型)
VPC CIDR health check health check 允許運作狀態檢查流量
VPC CIDR health check 1024-65535 允許運作狀態檢查流量

針對外部負載平衡器,您執行個體和負載平衡器節點之子網路的網路 ACLs 必須允許在接聽程式連接埠和暫時性連接埠上,與 VPC CIDR 的傳入和傳出流量。

登記和取消登記目標

在負載平衡器能夠使用的每個可用區域中,每個目標群組都必須擁有至少一個已登錄的目標。

目標群組的目標類型會決定您向該目標群組註冊目標的方式。如需更多詳細資訊,請參閱「Target type (目標類型)」。

Requirements

  • 如果執行個體 ID 使用以下執行個體類型之一,則不能依執行個體 ID 來登記執行個體: C1、CC1、CC2、CG1、CG2、CR1、G1、G2、HI1、HS1、M1、M2、M3 或 T1。

  • 如果執行個體 ID 是互連至負載平衡器 VPC (相同區域或不同區域) 的 VPC,則您無法依執行個體 ID 來登記執行個體。您可以依照 IP 地址來註冊這些執行個體。

  • 如果您依照 IP 地址註冊目標,且 IP 地址與負載平衡器位於相同的 VPC 中,則負載平衡器會驗證它來自於其可連上的子網路。

  • 針對 UDP 和 TCP_UDP 目標群組,如果執行個體位於負載平衡器 VPC 外部,或使用以下執行個體類型之一,則請不要依 IP 地址來登記執行個體: C1、CC1、CC2、CG1、CG2、CR1、G1、G2、HI1、HS1、M1、M2、M3 或 T1。位於負載平衡器 VPC 外部或使用不支援之執行個體類型的目標,可能會接收來自負載平衡器的流量,但無法回應。

根據執行個體 ID 來登記或取消登記目標

在註冊時,執行個體必須處於 running 狀態。

New console

使用新的主控台透過執行個體 ID 來登記或取消登記目標

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

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

  3. 選擇目標群組的名稱,以打開其詳細資訊頁面。

  4. 選擇 Targets (目標) 標籤。

  5. 若要登記執行個體,請選擇 Register targets (Register 目標)。選取一或多個執行個體,並視需要輸入預設執行個體連接埠,然後選擇 Include as pending below (包含為待處理項目)。當您完成新增執行個體時,請選擇 Register pending targets (等待中目標Register)

  6. 若要撤銷執行個體,請選取執行個體,然後選擇 Deregister (撤銷)

Old console

使用舊主控台透過執行個體 ID 來登記或取消登記目標

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格,LOAD BALANCING (負載平衡) 中,選擇 Target Groups (目標群組)

  3. 選取目標群組。

  4. 依序選擇 Targets (目標)Edit (編輯)

  5. (選用) 針對 Registered instances (已登錄的執行個體),選擇要取消登錄的所有執行個體,然後選擇 Remove (移除)

  6. (選用) 針對 Instances (執行個體),選擇要取消登錄的所有執行中執行個體、根據需要修改預設的執行個體連接埠,然後選擇 Add to registered (加入已登錄)

  7. 選擇 Save (儲存)。

根據 IP 地址來登記或取消登記目標

您註冊的 IP 地址必須來自下列其中一個 CIDR 區塊:

  • 目標群組 VPC 的子網路

  • 10.0.0.0/8 (RFC 1918)

  • 100.64.0.0/10 (RFC 6598)

  • 172.16.0.0/12 (RFC 1918)

  • 192.168.0.0/16 (RFC 1918)

New console

使用新的主控台透過 IP 地址來登記或取消登記目標

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

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

  3. 選擇目標群組的名稱以打開其詳細資訊頁面。

  4. 選擇 Targets (目標) 標籤。

  5. 若要登記 IP 地址,請選擇 Register targets (登記目標)。對於每個 IP 地址,選取網路、可用區域、IP 地址和連接埠,然後選擇 Include as pending below (包含為待處理項目)。當您完成指定地址時,請選擇 Register pending targets (等待中目標Register)

  6. 若要撤銷 IP 地址,請選取 IP 地址,然後選擇 Deregister (撤銷)。如果您擁有多個已登錄的 IP 地址,新增篩選條件或變更排序順序,可能會很有幫助。

Old console

使用舊主控台透過 IP 地址來登記或取消登記目標

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格,LOAD BALANCING (負載平衡) 中,選擇 Target Groups (目標群組)

  3. 選取目標群組,然後依序選擇 Targets (目標)Edit (編輯)

  4. 若要登錄 IP 地址,請選取選單列上的 Register targets (登錄目標) 圖示 (加號)。對於每個 IP 地址,指定網路、可用區域、IP 地址和連接埠,然後選擇 Add to list (加入清單)。當您完成指定地址的動作時,請選擇 Register (登錄)

  5. 若要取消登錄 IP 地址,請選取選單列上的 Deregister targets (取消登錄目標) 圖示 (減號)。如果您擁有多個已登錄的 IP 地址,新增篩選條件或變更排序順序,可能會很有幫助。選取 IP 地址,然後選擇 Deregister (取消登錄)

  6. 若要離開此畫面,請選取選單列上的 Back to target group (返回目標群組) 圖示 (返回按鈕)。

使用 AWS CLI 來登記或取消登記目標

使用 register-targets 指令來新增目標;使用 deregister-targets 指令來移除目標。