AWS - Elastic load Balance的创建使用 (下)

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介:

上一篇豆子演示了如何创建一个基本的ELB对数据进行分流到不同的服务器上。现在我们更进一步,如果访问数据过多过大,比如春晚,比如购买火车票,如何能够根据负荷自动的生成新的服务器进行分流,或者在不忙的时候自动关闭不用的服务器。这个功能可以用Auto Scaling来实现。


接下来,豆子演示一下如何创建一个Auto Scaling Group,会根据ELB下的CPU负荷自动调整,添加或者删除Web Server,所有自动生成的Web Server会自动加入我的Elastic Load Balancer进行分流。


首先,需要创建一个AMI Image,这样我们才能通过这个Image自动生成新的一摸一样的Web Server。


在之前创建好的Lab服务器上选择Create Image 就行了



wKiom1PhdDzR0pPdAABTPYv-hGw923.png


输入相关信息

wKioL1PhdVXymri8AABcdUBJEes464.png


创建好了

wKiom1PhdD3xUvmcAAAuSsCKzAg534.png


接下来,我们需要创建Auto Scaling 的Configure 文件和 Auto Scaling Group。这个可以通过管理界面进行创建,也可以通过命令行创建。我下面的操作就是两种方式混杂着操作的。


如果想使用命令行,需要下载对应的命令行工具,并配置对应的环境变量。

具体操作可以参见我的另一篇博客

http://beanxyz.blog.51cto.com/5570417/1422452



wKioL1PhdVbTMy0YAAA0Kww4tOY208.png


配置好之后运行试试看就可以查看AMI的Image了


wKiom1PhdD2AuUkBAAAV9E8RESU018.png


这个和我通过管理界面查看的一样

wKioL1PhdVewYpmsAABDTxYEzs0522.png


首先来创建一个Configure的配置文件,我需要指定 AMI Image,实例的类型,加密的Key,Security Group,Configure 文件的名字 和我所在的Region


如果不了解命令行,也可以直接通过图形界面操作

wKiom1PhdD6wJ-4ZAAANVk7vHLY180.png


创建好的样子。

wKioL1PhdVjAlLMhAABCp0WRVw8872.png



接下来我们创建Auto Scaling Group,这里我就通过管理界面来创建了,毕竟这个更直观一些

wKiom1PhdEGi0Xt7AADwAnu4vNE857.png


选择一个配置文件

wKioL1PhdVuy1HuCAABzx7__KKo084.png


取名字叫做 aws-as-group,注意勾选 load balancing,这样生成的VM默认都在指定的ELB里面,Subnet里面可以把所有的AZ都放进去以实现高可用



wKiom1PhdELyA2RWAACfSc5us9w518.png


然后设定 Policy,选择Group Size,以及何种情况下触发增加或减少的操作

wKioL1PhdVzBPI2MAACZjN76lbc851.png

创建一个Alarm,自动发送给我的SNS Topic


比如CPU平均利用率超过50%,那么就自动增加一个服务器

wKioL1PhdVyB6KfxAABd5P6pZwo275.png

CPU平均利用率低于30%,就自动删除一个服务器

wKiom1PhdESivRP1AABcyrkhBQw051.png

设定好的样子

wKiom1PhdESizbH6AABrrqI548s821.png

其余的警告通知

wKioL1PhdV7Ta9UaAABVovq9OkE713.png

给Auto Scaling Group设定一个Tag标签,以便区分


wKiom1PhdEXSQH_gAABJA1ULwww368.png

最后Review一下

wKioL1PhdV6woRILAACQIQhJApI454.png


创建好的样子,所有的配置信息都可以根据需要继续修改。

wKioL1PhdV-wyMcgAABAq6QJXLk303.png

因为我设定的范围是1-3,所以Auto Scaling Group里面至少要有一个EC2实例


收到通知,自动创建一个

wKiom1PhdEaC11O-AACtvYwdVp0593.png


自动创建中

wKiom1PhdEfTy8A8AABYscsH-ns632.png

输入新建服务器的IP,运行一下,LAMP工作正常

wKioL1PhdWDAWJsHAAAjvZAg-m0220.png

来看看ELB,已经自动包括进去了。


wKiom1PhdEegRVYlAACal8-uWYs442.png


如果我们stop或者terminate一个AS里面的实例


wKioL1PhdWHwBEE8AAA9diOum2Y872.png

他会自动创建一个新的

wKiom1PhdEmgqH1EAACEJGoq3SI914.png


最后我们来做个负荷试验。


直接点开ELB,点击Generate load,对应的服务器会自动执行一些空操作,强行提高CPU的使用率

wKiom1PhdEmieKKtAAAnabxLtVY359.png

如下图

wKioL1PhdWPB3TiiAAAXviEDWZE304.png


在cloudwatch里面可以观察到cpu的使用率急剧上升



wKiom1Phkoyg9THkAADaICuz7g8851.jpg


超过一定的标准,会自动的创建新的实例


wKiom1Phkovw3N9pAACm0x22knw240.jpg


不过上面的实验不是太准确,因为CPU的负载是ELB其中一个服务器自己产生的;我们可以搭建一个新的服务器,独立于ELB的集群之外,然后通过genload.php脚本对指定的ELB发送大量请求,这样子就可以模拟一个更真实的环境,观察到因ELB的CPU负载变化而产生的改变了。


wKiom1PhdErQckx5AABh_km3v_U303.png

wKioL1PhdWTif-sfAACISwDydNs092.png


这个实验会花费比较长的时间,我就不赘述了,实验效果和前面一样,随着CPU使用率的变化,会自动增添或者减少EC2实例。


wKioL1Phlv3jbAa3AABVnD5JLIQ158.png









本文转自 beanxyz 51CTO博客,原文链接:http://blog.51cto.com/beanxyz/1536261,如需转载请自行联系原作者
相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
Web App开发 安全 Linux
AWS EC2服务器的HTTPS负载均衡器配置过程
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq1010885678/article/details/48785505 A...
2202 0
|
6月前
|
负载均衡 算法 应用服务中间件
面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
字节跳动面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
125 0
|
6月前
|
负载均衡 应用服务中间件 API
Nginx配置文件详解Nginx负载均衡Nginx静态配置Nginx反向代理
Nginx配置文件详解Nginx负载均衡Nginx静态配置Nginx反向代理
162 4
|
5月前
|
缓存 负载均衡 算法
解读 Nginx:构建高效反向代理和负载均衡的秘密
解读 Nginx:构建高效反向代理和负载均衡的秘密
116 2
|
4月前
|
负载均衡 算法 应用服务中间件
nginx自定义负载均衡及根据cpu运行自定义负载均衡
nginx自定义负载均衡及根据cpu运行自定义负载均衡
56 1
|
4月前
|
运维 负载均衡 算法
SLB与NGINX的异同是什么
SLB与NGINX的异同是什么
399 2
|
6月前
|
负载均衡 应用服务中间件 nginx
解决nginx配置负载均衡时invalid host in upstream报错
在Windows环境下,配置Nginx 1.11.5进行负载均衡时遇到问题,服务无法启动。错误日志显示“invalid host in upstream”。检查发现上游服务器列表中,192.168.29.128的主机地址无效。负载均衡配置中,两个服务器地址前误加了"http://"。修正方法是删除上游服务器列表和proxy_pass中的"http://"。问题解决后,Nginx服务应能正常启动。
465 4
解决nginx配置负载均衡时invalid host in upstream报错
|
5月前
|
JSON 负载均衡 应用服务中间件
Nginx反向代理与负载均衡
Nginx反向代理与负载均衡