上瘾云计算,从负载均衡ELB开始
ELB是AWS负载均衡服务的一个统称。而AWS的负载均衡服务一共分为三种。
1
做一个实验
创建两台AWS的Linux EC2实例,一台在可用区A,一台在可用区B。两台EC2实例都安装上httpd服务,然后分别创建index.html文件,但内容不一样。之后创建一个ALB服务,把两台EC2加入目标组中,实现ALB对两台EC2的负载均衡。
创建一个安全组,命名为SG-ELB,入站规则为放行80,出站规则为放行80。这个安全组是要应用给负载均衡器ALB的。
创建一个安全组,命名为SG-Web,入站规则为放行80,22,出站规则为放行全部,这个安全组是应用给EC2实例的。因此我们要访问它的Web服务,要放行80端口;我们要SSH网管它,要放行22端口;由于它要安装httpd,要主动向外访问,因此还要放行所有出站流量。
Step1:创建EC2实例,操作系统为AWS Linux,一台在可用区A,一台在可用区B,两台EC2实例应用SG-Web这个安全组
Step2:两台EC2都安装Httpd服务,并且开启
sudo -i
yum -y install httpd
service httpd start
Step3:在两台服务器上分别创建一个index.html文件,模拟Web服务器。两台EC2的index文件要不相同,主要是为了测试负载均衡,而在真实的环境中,负载均衡身后的服务器的业务是一样的。
sudo -i
vim /var/www/html.index
This is Web-Server 1. This server is in AZ A.
This is Web Server 2. This server is in AZ B.
Step4:创建一个目标组,目标组就是负载均衡用于把哪一类的流量调度到哪一个组中,一个组中的业务应该是完全相同的。
为目标组起一个名字,目标类型选择实例,然后选择目标组中的协议,端口,在哪个VPC。由于我们两台EC2实例都是使用的首页index.html,因此我们下面的配置都使用默认配置。
在添加完目标组后,选中我们创建的目标组,点击下面的目标,看到已注册目标这里现在还是空的。相当于是我们创建了一个组,但这个组中还没有成员服务器。点击编辑,开始添加成员服务器,在AWS把这个过程叫做注册。
选中下面”实例“中两的我们之前创建的EC2实例,点击”添加到已注册“
发现两台EC2实例已经到了上面 ”已注册目标“,这时候再点击保存。
我们再次查看”目标“,发现已注册目标中已经有我们添加的两台EC2实例了。但是现在查看状态,发现是unused,还没有被负载均衡所使用。
接着添加负载均衡器,在EC2大选项中,选择负载均衡,创建负载均衡器。
选择每一个应用程序负载均衡器,点击创建。
可用区选择我们创建了EC2的两个可用区,可用区A和可用区B
这里给了一个提示,由于我们使用的是HTTP,而不是HTTPS,这里只是做实验,下一步不用管,在实际的生产活动中,现在都是https了。
接下来要配置安全组,这里我们应用之前我们配置好的安全组,入向规则为TCP80,出向规则也会TCP80。
接着要把目标组应用过来,我们之前已经配置好了目标组,直接应用即可。
如果没有注册的话这里要选,而我们之前已经将两台EC2实例注册到这个目标组中了,这里直接点击创建。
在审核完成配置后,点击创建后一会负载均衡器就创建成功了。就相当于你买了一台负载均衡,完成了上架,加电,初始化和基本的配置,是不是超级简单。
接下来我们再回到目标组,点击”目标“,观察两台EC2的状态,现在发现已经不是unused状态了,变成了initial状态,正在初始化它们的状态。
再过一会,再次观察,发现状态已经变成healthy了,说明已经可以用了。
我们点到负载均衡器,将它默认生成的DNS负载下来,打开浏览器进行测试。
将刚才的负载均衡的域名复制到浏览器,打开,发现是Server2。
再刷新几次,发现变成了Server1。说明有的请求被负载到了Server1,有的请求被负载到了Server2。这已经说明该实验成功了。
接下来我们停止一台EC2,来看看负载均衡能不能检测到。
这时候刷新页面,发现一直是Server2了,说明负载均衡检测到了身后的服务器故障。将有问题的机器删除了。
柯普瑞企业IT学院
企业使命:
为员工创造价值,为客户创造价值,为社会创造价值,为推动全社会进步而努力!
企业愿景:
成为中国一流的企业IT人才培养解决方案提供商!
南京校区:南京市中山东路300号
长发中心A栋23楼
杭州校区:杭州市下城区东方茂
商业中心2幢6层
学院网址:www.china-esp.com
更多精彩内容
扫码点击关注