建立內部 Classic Load Balancer - Elastic Load Balancing

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

建立內部 Classic Load Balancer

您可以建立內部負載平衡器,將流量分佈到您的 EC2 執行個體:從具備存取權的用戶端,到負載平衡器的 VPC。

必要條件

  • 如果您尚未建立負載平衡器的 VPC,您必須在開始使用之前先建立。如需詳細資訊,請參閱 準備您的 VPC 和 EC2 執行個體

  • 啟動您計劃向內部負載平衡器註冊的 EC2 執行個體。確保在您打算用於負載平衡器的 VPC 中的私有子網路中啟動執行個體。

使用建立內部負載平衡器 AWS Management Console

使用下列程序建立您的內部 Classic Load Balancer。提供您負載平衡器的基本組態資訊,例如名稱和結構描述。然後提供您網路的相關資訊,以及將流量路由至您執行個體的接聽程式資訊。

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

  2. 於導覽列上,為負載平衡器選擇一個區域。請務必選取您為 EC2 執行個體選取的同一區域。

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

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

  5. 展開 Classic Load Balancer 區段,然後選擇建立

  6. 基本組態

    1. 針對負載平衡器名稱,輸入負載平衡器的名稱。

      在區域的 Classic Load Balancer 組合中,您的 Classic Load Balancer 名稱必須獨一無二,其字元數上限為 32 個,只能包含英數字元與連字號,但開頭或結尾都不可為連字號。

    2. 針對結構描述,選取內部

  7. 網路映射

    1. 針對 VPC,選取與您執行個體相同的 VPC。

    2. 針對映射,先選取可用區域,然後從可用子網路中選擇子網路。一個可用區域只能選取一個子網路。為了提高您的負載平衡器可用性,可選取一個以上的可用區域和子網路。

  8. 針對安全群組,請選取設定為在連接埠 80 上允許必要的 HTTP 流量的現有安全群組。或者,如果您的應用程式使用不同的通訊協定和連接埠,您也可以建立新的安全群組。

  9. 接聽程式和路由

    1. 針對接聽程式,請確定通訊協定為 HTTP,且連接埠為 80

    2. 針對執行個體,請確定通訊協定為 HTTP,且連接埠為 80

  10. 運作狀態檢查

    1. Ping 通訊協定預設為 HTTP

    2. Ping 連接埠預設為 80

    3. Ping 路徑預設為 /

    4. 針對進階運作狀態檢查設定,請使用預設值或輸入您應用程式特定的值。

  11. 執行個體

    1. 選取新增執行個體以開啟執行個體選取畫面。

    2. 可用執行個體下方,您可以根據先前選取的網路設定,選取目前可用於負載平衡器的執行個體。

    3. 當您對您的選項感到滿意時,請選取確認,將要註冊的執行個體新增至負載平衡器。

  12. Attributes

    1. 針對啟用跨區域負載平衡啟用連接耗盡逾時 (耗盡間隔),請保留預設值。

  13. 負載平衡器標籤 (選用)

    1. 索引鍵欄位為必填。

    2. 欄位為選填。

    3. 若要新增另一個標籤,請選取新增標籤,然後輸入索引鍵欄位值,並選擇性地填寫欄位。

    4. 若要移除現有的標籤,請在要移除的標籤旁選取移除

  14. 摘要和建立

    1. 如果您需要變更任何設定,請在需要變更的設定旁選取編輯

    2. 如果您對摘要中顯示的所有設定感到滿意,請選取建立負載平衡器,開始建立您的負載平衡器。

    3. 在最終建立頁面上選取檢視負載平衡器,即可在 Amazon EC2 主控台中檢視您的負載平衡器。

  15. 確認

    1. 選取新的負載平衡器。

    2. 目標執行個體索引標籤中,檢查運作狀態欄位。至少有一個 EC2 執行個體在服務中之後,您可以測試負載平衡器。

    3. 詳細資訊區段中複製負載平衡器的 DNS 名稱,此名稱看起來會類似 my-load-balancer-1234567890.us-east-1.elb.amazonaws.com

    4. 將負載平衡器的 DNS 名稱貼至已連接公有網際網路的 Web 瀏覽器的網址欄位。如果負載平衡器運作正常,您會看到伺服器的預設頁面。

  16. 刪除 (選用)

    1. 若您的網域有指向負載平衡器的 CNAME 記錄,請指向新位置並等待 DNS 變更發生效用,之後再刪除負載平衡器。

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

    3. 選取負載平衡器。

    4. 選擇動作刪除負載平衡器

    5. 出現確認提示時,請輸入 confirm,然後選取刪除

    6. 刪除負載平衡器後,透過該負載平衡器註冊的 EC2 執行個體會繼續執行。系統將根據執行個體繼續執行的時間,按每小時或不足一小時的時數計費。當您不再需要某個 EC2 執行個體時,可以停止或終止該執行個體,避免產生額外費用。

使用建立內部負載平衡器 AWS CLI

在預設情況下,Elastic Load Balancing 建立面向網際網路的負載平衡器。使用下列程序來建立內部負載平衡器,並且向新建立的內部負載平衡器註冊 EC2 執行個體。

建立內部負載平衡器
  1. 在將--scheme選項設定為的情況下使用create-load-balancer指令internal,如下所示:

    aws elb create-load-balancer --load-balancer-name my-internal-loadbalancer --listeners Protocol=HTTP,LoadBalancerPort=80,InstanceProtocol=HTTP,InstancePort=80 --subnets subnet-4e05f721 --scheme internal --security-groups sg-b9ffedd5

    以下是回應範例。請注意,從名稱可看出這是內部負載平衡器。

    { "DNSName": "internal-my-internal-loadbalancer-786501203.us-west-2.elb.amazonaws.com" }
  2. 使用下列 register-instances-with-load-平衡器命令來新增執行個體:

    aws elb register-instances-with-load-balancer --load-balancer-name my-internal-loadbalancer --instances i-4f8cf126 i-0bb7ca62

    以下是回應範例:

    { "Instances": [ { "InstanceId": "i-4f8cf126" }, { "InstanceId": "i-0bb7ca62" } ] }
  3. (選擇性) 使用下列describe-load-balancers命令驗證內部負載平衡器:

    aws elb describe-load-balancers --load-balancer-name my-internal-loadbalancer

    回應包含 DNSNameScheme 欄位,這表示這是內部負載平衡器。

    { "LoadBalancerDescriptions": [ { ... "DNSName": "internal-my-internal-loadbalancer-1234567890.us-west-2.elb.amazonaws.com", "SecurityGroups": [ "sg-b9ffedd5" ], "Policies": { "LBCookieStickinessPolicies": [], "AppCookieStickinessPolicies": [], "OtherPolicies": [] }, "LoadBalancerName": "my-internal-loadbalancer", "CreatedTime": "2014-05-22T20:32:19.920Z", "AvailabilityZones": [ "us-west-2a" ], "Scheme": "internal", ... } ] }