ELB 学习研究
什么是ELB
弹性负载均衡是自动在多个虚拟机实例之间分发进入的流量。它能够使你获得最大的故障容忍,无缝地为响应应用流量请求提供所需的量的负载均衡能力;ELB能够检测到池中不健康的虚拟机实例,然后自动地重新路由流量到健康的虚拟机实例上,直到不健康的虚拟机实例恢复健康;
用户为了获得连续一致的应用程序性能,可以在单个Zone或跨多个Zone使用ELB;ELB也能够在Amazon的虚拟私有云(VPC)中用来分发不同的应用程序层之间的流量。
参考:http://aws.amazon.com/elasticloadbalancing/
3、ELB的特性
(1)在单个Zone或多个Zone的虚拟机实例之间分发流量,自动调整响应应用程序请求处理能力;
(2)在虚拟私有云(VPC)中使用ELB时,你可以创建和管理安全组和你的ELB一起提供额外的网络和安全选项;
(3)在虚拟私有云(VPC)中使用ELB时,可以创建没有公有IP地址的用于内部的负载均衡器;
(4)ELB能够检测到虚拟机实例的健康与否,当检测到不健康的挂在LB上的虚拟机实例时,ELB不再把流量路由到不健康的实例上,而是把负载传播到剩下的健康的实例上去。
(5)ELB提供 把 用户会话指向特定的虚拟机实例的能力。
(6)ELB在负载均衡器支持SSL,包括集中管理SSL证书,从应用实例解密SSL,用可选的公钥加密认证到后端实例。
(7)ELB能够灵活的加密支持,在客户端连接SSL协商时,接受可控的加密算法和协议。
(8)ELB支持IPv4 和IPv6。
(9)ELB 监控Amazon CloudWatch中的请求计数请求延迟指标。
4、ELB使用
ELB容易上手,如果你注册了EC2服务,你就自动注册了ELB,按照以下步骤使用ELB
(1) 打开AWS管理控制终端(如附件2所示)
(2) 在管理窗口左侧选择ELB
(3) 选择创建负载均衡器
(4) 为负载均衡器创建唯一的名字
(5) 选择需要负载均衡器管理的协议(HTTP, HTTPS, TCP, SSL, or Custom)
(6) 为负载均衡器配置健康检查
(7) 选择挂载到需要挂载到负载均衡器后端的实例
(8) 由弹性负载均衡器提供的域名(DNS name) 以及到这些域名的流量自动地在负载均 衡器和健康的虚拟机实例之间分配
以上所有步骤在ELB的API和命令行中存在。
5、ELB 主要的用途
5.1 为应用程序获取更好的故障容忍
ELB能够检测到虚拟机实例的健康与否,当检测到不健康的挂在LB上的虚拟机实例时,ELB不再把流量路由到不健康的实例上,而是把负载传播到剩下的健康的实例上去。
5.2 auto-scaling和ELB一起工作
比如说你想确保挂载ELB后面的健康的虚拟机实例不少于2,你可以用auto-scalin去设置这些条件,当auto-scaling检测到这些条件满足时,他会自动添加需要数量的虚拟机实例到到你的auto-scaling组里;或者你想确保你添加的虚拟机实例在15分钟内延迟延迟不要超过4秒,你可以设置这样的条件,auto-scaling会对虚拟机实例采取恰当的措施,即使是挂载ELB后面的运行的虚拟机实例。Auto-scaling可以很好的工作,不管你是否正在使用ELB。
5.3 在VPC中使用 ELB
ELB非常容易地为虚拟私有云(VPC)创建面向因特网的Entry point,也可以用于VPC内部应用程序 层 之间负载均衡;你可以分配安全组到你的ELB去控制开放特定的端口给允许的源地址。因为ELB服务是附加到你的VPC,你所有的访问控制列表(ACL)和所有的路由表继续提供附加的网络控制。
当你在你的VPC中创建一个负载均衡器,你可以指定这个负载均衡器是面向因特网的还是面向内部的。如果你设置为内部的,你不需要一个因特网网关到你的负载均衡器,负载均衡器上的私有IP被用于DNS解析。
6、ELB的收费情况
ELB服务也是按需收费,依据ELB负载均衡器的运行小时数和从ELB流经多少GB的数据量。会在每个月的月末结算你实际使用的ELB服务资源。
比如:一个中等规模的网站运行了10个虚拟机实例,使用了一个ELB负载均衡器去负载进入的流量。如果在30天内传输了100GB的数据量,消费计算方法是:
ELB使用费用: ( $0.025 per hour x 24 hours per day x 30 days x 1 Elastic Load Balancer)
$18美元;
数据传输费用: $0.80 (or $0.008 per GB x 100 GB) $0.8美元
总共18.8美元
不满一小时的按一小时计算;
日常的EC2服务是单独计费的。