场景:

在许多系统中,大规模的访问往往是可以预期到的,例如学校的选课、财务的结账、春节售票等。然而,这种大规模资源的使用时间其实很短(相对全年来讲),所以在其他时段就造成了服务器资源的浪费,而导致较低的成本效益。我们要解决的问题就是如何在这种场景下更有效的利用服务器资源。

解决思路:

在过去,即使大规模访问只在特定时段出现,却需要分配一个全时段运行的服务器。其实管理员可以在其他时段回收这部分资源,或将服务器分配其他任务来提高效率。BingoCloudOS 的弹性伸缩服务可以通过设定周期策略,使应用所需要的大规模的虚拟机集群,只有当需要的时间到之后才会被创建。具体流程示意图如下图。

具体步骤:

准备:已在云平台上准备好部署了业务系统的镜像。

1、登录 BCC 云管控中心,进入【高级服务→弹性伸缩服务→启动配置】中点击新建,进入页面后填写配置名称,选择镜像模板(一般为部署好的业务系统的镜像模板)、实例规模、安全组、密钥(实例的密钥,不选则为随机密码),是否绑定弹性 IP,点击保存。2、进入【高级服务→弹性伸缩服务→弹性组】中点击新建,进入页面后填写弹性组名称,启动配置(此处选择我们刚创建的启动配置)、云网络、子网,设置需要/最大/最小实例个数(因为之后我们还要设置周期时间内自动弹性创建实例,所以此处可以先全部写 1)、默认冷却时间(不填则为默认 300 秒),选择健康检查类型、负载均衡(当健康检查类型选择 ELB 时必选),点击保存。

此时发现普通时段运行的实例已经建立。

3、进入【高级服务→弹性伸缩服务→弹性组】,点击详情,在计划 Tab 页点击新建。设置计划名称、时间(开始创建)、计划数目,以应对业务高峰。此处以选课为例。

到了计划时间,将自动创建实例。
4、再次在计划 Tab 页新建计划,定时销毁实例,释放资源。
到了计划时间,自动开始收缩实例数量。
选课结束后,自动恢复成原始状态。
备注:本技巧的相关操作可参考如下视频。

相关功能:
  • BCC-高级服务-弹性伸缩服务
最新版本:BingoCloudOS 7.0