本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建内部经典负载均衡器
您可以创建内部负载均衡器,将来自有权访问负载均衡器的客户端的VPC流量分配到您的EC2实例。
先决条件
-
如果您尚未VPC为负载均衡器创建,则必须在开始之前创建该负载均衡器。有关更多信息,请参阅 给你的建议 VPC。
-
启动您计划向内部负载均衡器注册的EC2实例。确保在专VPC用于负载均衡器的私有子网中启动它们。
使用控制台创建内部负载均衡器
按照以下过程创建内部经典负载均衡器。提供负载均衡器的基本配置信息,例如名称和模式。然后提供有关网络以及要将流量路由到实例的侦听器的信息。
使用控制台创建内部 Classic Load Balancer
打开 Amazon EC2 控制台,网址为https://console.aws.amazon.com/ec2/
。 -
在导航栏上,选择您的负载均衡器所在的区域。请务必选择与您为EC2实例选择的相同区域。
-
在导航窗格上的 Load Balancing (负载均衡) 下,选择 Load Balancers (负载均衡器)。
-
选择 Create Load Balancer (创建负载均衡器)。
-
展开经典负载均衡器部分,然后选择创建。
-
基本配置
-
对于负载均衡器名称,键入负载均衡器的名称。
在当前区域的经典负载均衡器集内,经典负载均衡器的名称必须唯一,最多可以有 32 个字符,只能包含字母数字字符和连字符,不能以连字符开头或结尾。
-
对于模式,选择内部。
-
-
网络映射
-
对于 VPC,请选择与VPC您为实例选择的相同。
-
对于映射,首先选择一个可用区,然后从该可用区的可用子网中选择一个子网。每个可用区只能选择一个子网。要提高负载均衡器的可用性,请选择多个可用区和子网。
-
-
对于安全组,请选择一个配置为允许在端口 80 上HTTP传输所需流量的现有安全组。如果您的应用程序使用其他协议和端口,则也可以创建新的安全组。
-
侦听器和路由
-
对于侦听器,确保协议为
HTTP
,端口为80
。 -
对于实例,确保协议为
HTTP
,端口为80
。
-
-
运行状况检查
-
对于 Ping 协议,默认值为
HTTP
。 -
对于 Ping 端口,默认值为
80
。 -
对于 Ping 路径,默认值为
/
。 -
对于高级运行状况检查设置,请使用默认值或输入应用程序特定的值。
-
-
实例
-
选择添加实例,这时将显示实例选择页面。
-
在可用实例下,您可以根据之前选择的网络设置,从负载均衡器可用的当前实例中进行选择。
-
确认选择无误后,选择确认以将要注册的实例添加到负载均衡器。
-
-
Attributes
-
对于启用跨可用区负载均衡、启用连接耗尽以及超时(耗尽间隔时间),请保留默认值。
-
-
负载均衡器标签(可选)
-
键字段为必填项。
-
值字段为可选项。
-
要添加其他标签,请选择添加新标签,然后输入键字段的值,以及可选的值字段的值。
-
要移除现有标签,请选择要移除的标签旁的移除。
-
-
摘要和创建
-
如果需要更改任何设置,请选择需要更改的设置旁的编辑。
-
确认摘要中显示的所有设置无误后,选择创建负载均衡器以开始创建负载均衡器。
-
在最终创建页面上,选择查看负载均衡器以在 Amazon EC2 控制台中查看您的负载均衡器。
-
-
验证
-
选择新的负载均衡器。
-
在目标实例选项卡中,选中运行状态列。在您的至少一个EC2实例处于服务状态后,您可以测试您的负载均衡器。
-
在 “详细信息” 部分中,复制负载均衡器DNS名称,该名称应类似于。
my-load-balancer-1234567890.us-east-1.elb.amazonaws.com
-
将您的负载均衡器DNS名称粘贴到连接公共 Internet 的 Web 浏览器的地址字段中。如果负载均衡器运行正常,则会看到服务器的默认页面。
-
-
删除(可选)
-
如果您的域名CNAME记录指向您的负载均衡器,请将其指向新的位置并等待DNS更改生效,然后再删除您的负载均衡器。
打开 Amazon EC2 控制台,网址为https://console.aws.amazon.com/ec2/
。 -
选择负载均衡器。
-
依次选择操作、删除负载均衡器。
-
提示进行确认时,键入
confirm
,然后选择删除。 -
删除负载均衡器后,在该负载均衡器中注册的EC2实例将继续运行。您将按实例继续运行的部分或完整小时数付费。当您不再需要某个EC2实例时,可以停止或终止该实例,以免产生额外费用。
-
使用创建内部负载均衡器 Amazon CLI
默认情况下,Elastic Load Balancing 会创建面向 Internet 的负载均衡器。使用以下过程创建内部负载均衡器,并将您的EC2实例注册到新创建的内部负载均衡器。
创建内部负载均衡器
-
使用将
--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 --subnetssubnet-4e05f721
--scheme internal --security-groupssg-b9ffedd5
以下为响应示例。请注意,该名称表示这是一个内部负载均衡器。
{ "DNSName": "internal-my-internal-loadbalancer-786501203.us-west-2.elb.amazonaws.com" }
-
使用以下 register-instances-with-load-balancer 命令添加实例:
aws elb register-instances-with-load-balancer --load-balancer-name
my-internal-loadbalancer
--instancesi-4f8cf126 i-0bb7ca62
以下为响应示例:
{ "Instances": [ { "InstanceId": "i-4f8cf126" }, { "InstanceId": "i-0bb7ca62" } ] }
-
(可选)使用以下describe-load-balancers命令验证内部负载均衡器:
aws elb describe-load-balancers --load-balancer-name
my-internal-loadbalancer
响应包含
DNSName
和Scheme
字段,表示这是一个内部负载均衡器。{ "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", ... } ] }