当前位置:网站首页>Auto Scaling 弹性伸缩(运维释放人力)
Auto Scaling 弹性伸缩(运维释放人力)
2022-08-03 16:16:00 【51CTO】
介绍
什么是 Auto Sacling?
弹性伸缩(Auto Scaling,以下简称AS)是根据用户的业务需求,通过设置伸缩规则来自动增加/缩减业务资源。当业务需求增长时,AS自动为您增加弹性云服务器(ECS)实例或带宽资源,以保证业务能力;当业务需求下降时,AS自动为您缩减弹性云服务器(ECS)实例或带宽资源,以节约成本。AS支持自动调整弹性云服务器和带宽资源。
Auto Sacling的优势?
自动调整资源
弹性伸缩能够实现应用系统自动按需调整资源,即在业务增长时能够实现自动增加实例数量和带宽大小,以满足业务需求,业务下降时能够实现应用系统自动缩容,保障业务平稳运行。
按需调整云服务器资源
向应用系统中添加弹性伸缩,能够实现按需调整资源,即能够实现在业务增长时增加实例,业务下降时减少实例,这样加强了应用系统的成本管理。调整资源主要包括以下几种方式:
动态调整资源
动态调整资源是通过告警策略的触发来调整资源。
计划调整资源
计划调整资源是通过定时策略或周期策略的触发来调整资源。
手工调整资源
通过修改期望实例数或手动移入、移出实例来调整资源。
按需调整带宽资源
弹性伸缩能够实现按需调整带宽,即能够实现在业务增长时扩大带宽,业务下降时减小带宽,加强了应用系统的成本管理。
您可以根据实际情况选择如下伸缩带宽策略来实现按需调整IP带宽:
告警策略
可设置出网流量、出网带宽等告警触发条件,系统检测到触发条件满足时,会自动调整带宽的大小。
定时策略
系统可根据定时策略在固定的时间自动将带宽增大、减小或者调整到固定的值。
周期策略
系统可根据周期策略周期性的调整带宽大小,减少了人工重复设置带宽的工作量。
实例分配在不同区
弹性伸缩尝试在为伸缩组使用的可用区之间均匀分配实例。弹性伸缩通过尝试向实例最少的可用区中移入新实例来实现此目标。
加强成本管理
弹性伸缩能够实现按需使用实例和带宽,并自动调整系统中的资源,节省了资源和人为调整资源带来的损耗,为您最大程度节约了成本。
提高可用性
弹性伸缩可确保应用系统始终拥有合适的容量以满足当前流量需求。
弹性伸缩和负载均衡结合使用
当您在使用弹性伸缩时,业务增长时应用系统自动扩容,业务下降时应用系统自动缩容,在伸缩组添加和删除实例时,须确保所有实例均可分配到应用程序的流量。弹性伸缩和负载均衡结合使用可以解决这个问题。
使用负载均衡后,伸缩组会自动地将加入伸缩组的实例绑定负载均衡监听器。访问流量将通过负载均衡监听器自动分发到伸缩组内的所有实例,提高了应用系统的可用性。若伸缩组中的实例上部署了多个业务,还可以添加多个负载均衡监听器到伸缩组,同时监听多个业务,从而提高业务的可扩展性。
提高容错能力
弹性伸缩可以检测到应用系统中实例的运行状况,并启用新实例以替换运行状况不佳的实例。
云厂商提供的文档地址
ali Cloud: https://help.aliyun.com/product/25855.html
Hw Cloud: https://support.huaweicloud.com/intl/zh-cn/as/index.html
配置使用
我们这里以华为云为例
首次创建
1,创建ECS,并制作镜像
创建一个新的ECS(建议只有系统盘);在上面部署我们需要的服务;需要注意:我们要做好服务开机自启动,确保创建完机器之后服务能自己启动;
服务安装好之后,直接基于当前的ECS 创建镜像;
2,创建ELB(弹性负载均衡)
“ELB” --> “创建ELB”
按照ECS所在地区购买ELB服务,购买完成之后创建“监听器”(ELB监听的端口),然后创建后端服务器组:在后端服务组里面我们可以选择轮训的算法,并且添加后端接口的健康检查(只有健康检查通过了之后ELB才会真正的将流量切换过去);
3,创建弹性伸缩
创建弹性伸缩配置
弹性伸缩AS --> 创建伸缩配置
这个地方选择我们刚才创建的镜像版本
这个地方就没什么好解释的了。
创建弹性伸缩组
框出来的地方选择我们刚才创建的伸缩配置即可;
当我们完成上面这几部的时候,弹性伸缩相关的配置我们就完成了。但是还没有办法自动的进行弹性扩容
我们可以手动扩容一个看一下是否正常:
将期望副本数改为1就行;
然后我们就可以请求ELB地址来请求后端服务来,如果需要自动伸缩,那我们就需要配置一下伸缩策略。
后期升级
1,升级ECS实例里面的服务版本,然后创建镜像
2,创建新的伸缩配置
到弹性伸缩里面创建新的弹性伸缩配置,选择新的镜像版本
3,更改弹性伸缩组
更改弹性伸缩组里面弹性配置,选择新的弹性配置即可。
边栏推荐
- Kubernetes 笔记 / 任务 / 管理集群 / 用 kubeadm 管理集群 / 配置一个 cgroup 驱动
- MySQL窗口函数 OVER()函数介绍
- Why do I strongly recommend using smart async?
- STM32的HAL和LL库区别和性能对比
- 【QT】Qt项目demo:数据在ui界面上显示,鼠标双击可弹窗显示具体信息
- Kubernetes 笔记 / 入门 / 生产环境 / 容器运行时
- 字典表(还需要输入2个字)
- MATLAB | 一种简易的随机曼陀罗图形生成函数
- C专家编程 第3章 分析C语言的声明 3.8 理解所有分析过程的代码段
- How much do you know about the intelligent operation and maintenance service of data warehouse based on DMS?
猜你喜欢
一个文件管理系统的软硬件配置清单
C语言02、语句、函数
Small Tools(4) 整合Seata1.5.2分布式事务
世界顶级级架构师编写2580页DDD领域驱动设计笔记,属实有牌面
STM32 GPIO LED and buzzer implementation [Day 4]
STM32的HAL和LL库区别和性能对比
如何选择合适的导电滑环型号
[QT] Qt project demo: data is displayed on the ui interface, double-click the mouse to display specific information in a pop-up window
一文看懂推荐系统:召回02:Swing 模型,和itemCF很相似,区别在于计算相似度的方法不一样
leetcode:189. 轮转数组
随机推荐
MySQL窗口函数 OVER()函数介绍
C语言04、操作符
MySQL查询语法
How much do you know about the intelligent operation and maintenance service of data warehouse based on DMS?
How to get the 2 d space prior to ViT?UMA & Hong Kong institute of technology & ali SP - ViT, study for visual Transformer 2 d space prior knowledge!.
C语言02、语句、函数
Small Tools(4) 整合Seata1.5.2分布式事务
移动应用出海,你的“网络优化”拖后腿了吗?
带你了解什么是 Web3.0
【带你了解SDN和网络虚拟化】
Detailed ReentrantLock
Some optional strategies and usage scenarios for PWA application Service Worker caching
MySQL窗口函数 PARTITION BY()函数介绍
Ruoyi Ruoyi framework @DataScope annotation use and some problems encountered
基于DMS的数仓智能运维服务,知多少?
C专家编程 第2章 这不是Bug,而是语言特性 2.2 多做之过
C专家编程 第2章 这不是Bug,而是语言特性 2.1 这关语言特性何事,在Fortran里这就是Bug呀
元宇宙系列--Value creation in the metaverse
面了个腾讯35k出来的,他让我见识到什么叫精通MySQL调优
WordPress建站技术笔记