Hello大家好,欢迎来到《AWS解决方案架构师认证 Professional(SAP)中文视频培训课程》,今天的课程内容为Classic Load Balancer。
我们开始今天的课程内容。
![](https://resource.iloveaws.cn/wp-content/uploads/2020/07/21-Classic-Load-Balancer.001-2-1024x576.jpeg)
Classic Load Balancer是AWS的上一代负载均衡器,支持实例位于VPC网络和实例位于EC2-Classic网络。
Classic Load Balancer支持TCP、SSL/TLS、HTTP、HTTPS协议,是AWS的三种负载均衡器支持协议最多的。
Classic Load Balancer支持负载均衡器的一些基本功能。但也有很多必要的功能Classic Load Balancer是不支持的,如果您的业务需要这些新的功能和特性,需要使用新一代的负载均衡器,也就是网络负载均衡器和应用程序负载均衡器。
![](https://resource.iloveaws.cn/wp-content/uploads/2020/07/21-Classic-Load-Balancer.002-1-1024x576.jpeg)
实操演示:配置EC2实例NGINX
接下来的内容我将演示通过 AWS 管理控制台(基于 Web 的界面)创建 Classic Load Balancer 的实际操作。我们将创建一个Classic Load Balancer,然后让Classic Load Balancer接收公网 HTTP 流量并将其发送到 EC2 实例。
完成这个测试需要启动两台EC2实例,并将两台实例安装配置NGINX,然后创建一个Classic Load Balancer,最后通过浏览器访问Classic Load Balancer的地址让其接收公网的 HTTP 流量并将其发送到 这两台EC2 实例。
先看下我目前已准备好的测试环境,我已经启动了两个EC2实例,CLBTEST1和CLBTEST2。为了节省时间,CLBTEST1实例我已经配置好了,实例上已经安装了NGINX,并修改了默认的INDEX文件,让浏览器访问这个实例页面显示为SERVER 1。
我们现在来测试下,复制CLBTEST1的公有IP地址,然后通过浏览器访问这个IP。可以看到页面显示Welcome to Server 1,为CLBTEST1实例的INDEX页面。
![](https://resource.iloveaws.cn/wp-content/uploads/2020/07/21-Classic-Load-Balancer.003-1024x576.jpeg)
为了能让大家跟着一起做,我使用同样的方式配置CLBTEST2实例,让其页面显示Welcome to Server 2。请大家按照此方式配置好自己测试的两个实例。
第一步:SSH到CLBTEST2实例后,先运行命令添加NGINX的源,为了节省时间我直接复制下命令,然后执行:
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
第二步:通过YUM安装NGINX,运行命令:yum -y install nginx
第三步:修改默认INDEX文件,让其页面显示Welcome to Server 2。我们cd到INDEX文件目录,运行命令:
cd /usr/share/nginx/html,然后编辑index.html文件,运行命令:vim index.html 。将文件内容的welcome to xxxx修改为Welcome to Server 2,然后保存退出。
最后,运行命令: systemctl start nginx,启动nginx。
这样CLBTEST2实例就配置完了,我们复制下公网IP,然后通过浏览器访问测试是否可显示nginx页面,可以看到“welcome to server 2”信息,配置没有问题。
到这里我们就配置好了两台实例的页面,访问第一台显示welcome to server 1,第二台显示welcome to server 2,分别对应两个实例。
这里需要注意一点,如果访问页面出现问题,请检查实例安全组的配置,为了测试方便,我已将两个实例的安全组的80端口对外开放。
![](https://resource.iloveaws.cn/wp-content/uploads/2020/07/21-Classic-Load-Balancer.004-1024x576.jpeg)
实操演示:创建Classic Load Balancer
两台实例的测试环境已经准备好了,接下来我们将创建一个Classic Load Balancer,然后进行配置让Classic Load Balancer接收公网 HTTP 流量,并将其发送到我们准备的这两台 EC2 实例。
进入“负载均衡器”页面,然后点击“创建负载均衡器”,可以看到三种负载均衡器类型,这节课我们选择创建Classic Load Balancer。
负载均衡器名称,我们输入iloveawscn-clb。选择LB的VPC,注意这里要选择和之前创建的两个实例的相同VPC,我这里因为是测试环境,所以都在默认VPC里。
然后配置监听器,可以选择负载均衡器的协议,我们刚才配置的实例页面是HTTP的,端口是默认的80,所以在这里配置负载均衡器的协议为HTTP,实例协议同样为HTTP,端口号都为80。意思是负载均衡器收到公网的HTTP的80请求,发送到注册实例的80端口,使用HTTP协议。
![](https://resource.iloveaws.cn/wp-content/uploads/2020/07/21-Classic-Load-Balancer.005-1024x576.jpeg)
接下来为负载均衡器选择安全组,我们选择创建一个新的安全组,安全组名称为clbtest-clb,然后确保80端口对外。
配置运行状况检查,PING协议,端口,和路径我们测试就保持默认,为了减少我们测试的等待时间,我们将运行状况检查的时间改为10秒,继续。
然后添加EC2实例,我们将之前创建的两个实例添加到此负载均衡器,然后继续直到完成负载均衡器的创建。
![](https://resource.iloveaws.cn/wp-content/uploads/2020/07/21-Classic-Load-Balancer.006-1024x576.jpeg)
Classic Load Balancer已经创建完成了,点击下面的实例选项卡,看在实例状态列,如果这里显示部分实例未处于可用状态,则可能是因为实例仍在注册过程中,需要等一会,一般所需时间大概为1-2分钟。
另外需要注意一点,之前创建的两个实例的安全组需要允许Classic Load Balancer对其的访问,我的实例因为是测试之前已经开放了80端口对所有地址访问,所以不需要在另行配置,如果您在测试过程中遇到问题,请检查负载均衡器以及实例的安全组,是否开放了对应的策略。
好,目前我们注册的两个实例的状态都为“inService”了,切换到“描述”选项卡,DNS名称这里为刚创建的Classic Load Balancer的域名,我们复制一下:iloveawscn-clb-831592552.ap-northeast-1.elb.amazonaws.com ,然后切换到浏览器,访问下这个地址。
通过刷新,可以看到我们创建的Classic Load Balancer已经可以正常工作了,它在分发我们的请求,CLBTEST1和CLBTEST2实例的页面交替显示,通过访问Classic Load Balancer的地址,负载均衡器接收公网 HTTP 请求并将其发送到注册的 EC2 实例。
![](https://resource.iloveaws.cn/wp-content/uploads/2020/07/21-Classic-Load-Balancer.007-1024x576.jpeg)
我们选择创建的Classic Load Balancer后,通过下面的选项卡,可以查看和编辑Classic Load Balancer的配置,Classic Load Balancer提供了基础的功能,包括运行状况检查,监听器,监控等。
我们选择迁移选项卡,可以看到AWS建议将创建的Classic Load Balancer迁移至应用程序负载均衡器。
如果您确信 应用程序负载均衡器 或 网络负载均衡器 满足您的需求,那么您就可以迁移 Classic Load Balancer。在迁移过程完成后,您就可以使用新一代负载均衡器的提供的功能了。
![](https://resource.iloveaws.cn/wp-content/uploads/2020/07/21-Classic-Load-Balancer.008-1024x576.jpeg)
为什么AWS建议要迁移 Classic Load Balancer
那为什么AWS建议要迁移 Classic Load Balancer 呢?
首先,Classic Load Balancer不支持 本机 HTTP/2 协议,该协议只有应用程序负载均衡器支持。
无法支持注册IP 地址即目标。 Classic Load Balancer只支持将EC2实例注册为负载均衡器的目标,而应用程序负载均衡器支持将 IP 地址注册目标,所以您也可以将位于负载均衡器的 VPC 之外的资源注册为目标,这样的话就能够使用同一负载均衡器在 AWS 资源和不同区域或您本地资源之间进行负载均衡。这个功能能够让我们轻松将本地应用程序迁移、应对业务突增或故障转移至云端,但是Classic Load Balancer不支持此功能。
Classic Load Balancer不支持服务器名称指示 (SNI)
第四点不支持基于路径的路由,比如将URL请求/images路由至server1,将URL请求/php路由至server2,Classic Load Balancer是不支持的。
另外Classic Load Balancer也不支持将负载 均衡到同一实例上的多个端口等等等,还有以上没有列出的很多的功能是 Classic Load Balancer不支持的。
所以如果您的业务需要以上功能,那么您就可以评估将其迁移至应用程序负载均衡器。
![](https://resource.iloveaws.cn/wp-content/uploads/2020/07/21-Classic-Load-Balancer.009-1024x576.jpeg)
好的,以上就是我们今天的课程内容,今天我们介绍了 Classic Load Balancer,并实操演示了创建 Classic Load Balancer,并注册两个EC2,演示通过 Classic Load Balancer让负载均衡器接收公有 HTTP 流量并将其发送到 注册的EC2 实例。另外我们也介绍了使用 Classic Load Balancer功能的一些限制。
后面的课程我们会介绍应用程序负载均衡器,讨论应用程序均衡器提供的一些重要的功能和特性。
希望此系列教程能为您通过 AWS解决方案架构师认证 Professional 认证考试带来帮助,如您有任何疑问,请联系我们:
- 如果您想获取本课程全部课时,请扫PPT的二维码加入。
- AWS爱好者的网址是www.iloveaws.cn,认证视频课程,免费的认证考试仿真题以及认证课程文章,都可以在网站找得到
- 可以通过扫码加入【AWS爱好者】微信公众号,查看原创的AWS知识点相关文章。
- 加入【AWS爱好者】微信群,和其他同学一起备考,以及探讨交流AWS相关知识。
我们今天的视频课程就到这里,感谢大家的观看,我们下一课程再见。
![](https://resource.iloveaws.cn/wp-content/uploads/2020/07/21-Classic-Load-Balancer.010-1024x576.jpeg)
0 responses on "Classic Load Balancer"