NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

京东云弹性伸缩功能实践

  • 2019-10-22
  • 本文字数:1521 字

    阅读完需:约 5 分钟

京东云弹性伸缩功能实践

弹性伸缩是一项按需自动调整云主机规模的服务,能够及时有效地应对客户业务出现剧烈波动的情形。根据客户不同业务特点,采用不同的伸缩模式,在降低客户业务成本的同时提高业务能力,充分体现了云计算平台弹性灵活的特点。


名词术语

伸缩组:伸缩组是遵循相同规则、面向同一场景的云主机实例的集合。伸缩组定义了组内云主机实例数的最大值、最小值及其相关联的负载均衡实例等属性。


启动配置:启动配置是自动创建云服务器的模版,其中包括镜像、云服务器实例规格、系统盘及数据盘类型和容量、密钥等。创建伸缩组时必须指定启动配置,启动配置一经创建后其属性将不能编辑。


伸缩策略:即执行伸缩动作的条件。触发条件可以是云监控的报警或时间,动作可以是移出或加入云主机。


伸缩策略有以下两种:


  • 定时伸缩策略 到达某个固定时间点,自动增加或减少云主机实例,支持周期性重复。

  • 告警伸缩 基于云监控指标(如 CPU、内存、网络流量等),自动增加或减少云主机实例。


伸缩活动:伸缩策略成功触发后,就会产生一条伸缩活动。伸缩活动主要用来描述伸缩组内云主机实例的变化情况。


冷却时间:冷却时间是指在同一个伸缩组内,一个伸缩活动执行完成后的一段锁定时间。冷却时间可指定范围为 0-86400(秒)。

使用场景

Web 应用服务:web 服务业务逻辑层扩缩容。比如电商网站、视频网站、在线教育等,客户端的请求通过负载均衡到达应用服务器,当业务访问量大幅快速波动时,弹性伸缩服务可以根据请求量及负载弹性扩缩应用服务器的数量。


高性能计算:服务的计算节点扩缩容。分布式大数据的计算节点、数据处理等后端计算集群,根据计算量大小实时调整集群服务器数量,或者根据集群预定好的脚本执行时间来设定周期性定时任务,在脚本执行之前自动创建一批主机,保证高效的运算业务。


数据收集检索:时效性业务扩缩容。用于发送请求、数据收集、检索等业务服务器集群的部署,可通过弹性伸缩服务快速完成扩缩任务供业务使用。

操作实践

1、操作流程:


测试 AZ:华北-北京-可用区 C


模拟场景:2 台 Apache 服务器组成 Web 服务集群,前端通过 LB 做流量的分发;配置弹性伸缩策略,实现某台服务器 CPU 使用率>70%时自动扩容 1 台服务器,平均 CPU 使用率<40%时自动减少 1 台服务器。

2、测试步骤:

第一步:登录控制台


使用已注册的京东云账号登录控制台


第二步:创建启动配置


在控制台左侧功能导航栏选择“弹性计算”->“弹性伸缩”->“启动配置”->“创建”



设置配置名称,在“镜像”中选择“私有镜像”(“私有镜像”是通过创建好的云主机并部署完应用及完成配置制作的云主机镜像);配置的规格可以根据实际情况调整(CPU,内存,存储,带宽);创建完成后点击保存。


第三步:创建配置伸缩组


初始实例数设定后系统会自动根据设定的数量从启动配置自动创建相应数量的云主机可支持跨可用区创建,达到容灾的效果;


负载均衡设置绑定已创建的 LB 实例并选择对应的虚拟服务器做及配置好监听端口。



第四步:绑定云主机



按需添加云主机,数量必须在伸缩组设定的最小和最大实例数之间


第五步:添加告警策略


创建“弹性伸”策略和“弹性缩”策略




支持定时任务和重复任务,增加和减少的设置需要配对使用。



第六步:添加告警联系人



“账号管理”->“联系人管理”中的联系人和联系组信息会自动被识别,添加相关组和联系人后,伸缩组发生启动,终止,无法启动,无法终止时会有邮件和短信及时进行通知

3、验证试验结果:

用原生 centos 自带工具,方法是通过压缩随机数据并将结果发送到 /dev/null


在第一台 Apache 服务器运行如下命令:


cat /dev/urandom | gzip -9 > /dev/null


CPU 使用率到达 99%。




成功弹出一台云主机;


使用 Ctrl+C 结束加压命令后,CPU 使用率降低;观察伸缩活动的日志,发现已自动移出新增的云主机,成功移除。



2019-10-22 19:121139

评论

发布
暂无评论
发现更多内容

架构师训练营 -week08-作业

大刘

极客大学架构师训练营

28天刷完这份内容多大349页的阿里Java面试通关手册,我成功闯进了字节跳动!

Java架构之路

Java 程序员 架构 面试 编程语言

一周信创舆情观察(11.2~11.8)

统小信uos

【得物技术】机器学习在图形验证码识别上的应用

得物技术

学习 算法 测试 图像识别 验证码

16张图带你彻底搞懂基数排序

Java架构师迁哥

手把手教你使用ModelArts的自动学习识别毒蘑菇分类

华为云开发者联盟

学习 AI 图像识别

程序员在编程过程中,经常会在代码中使用到“where 1=1”,这是为什么呢?

小Q

Java 数据库 学习 架构 面试

架构师训练营 1 期 -- 第八周笔记

曾彪彪

极客大学架构师训练营

如果说数据是推动自动驾驶的原动力,那么存储扮演什么角色?

焱融科技

自动驾驶 数据 存储 文件存储 自动驾驶训练

杂谈

落曦

线上排障技巧 | 动态修改LOGGER级别

AI乔治

Java 编程 架构 JVM

你应该知道的数仓安全——默认权限实现共享schema

华为云开发者联盟

数据库 数据 schema

“先加密后签名”是不是安全?看完这篇就秒懂!

华为云开发者联盟

安全 加密 签名

架构师训练营第四周作业

李日盛

架构

这篇 MySQL 索引和 B+Tree 讲的太通俗易懂!

MySQL 面试 数据库事务 索引结构

Maven 进阶

少平

Scala-语法特性(一):类型和变量定义

正向成长

scala

linux下定位多线程内存越界问题实践总结

小Q

Java Linux 学习 面试 多线程

从 Android 到 Java:如何从不同视角解决问题?

Java架构师迁哥

上海与鲲鹏的数字共鸣

脑极体

数字货币是数字经济发展基石

CECBC

数字货币

隧道视野效应 - 认知局限

石云升

教育 认知 隧道视野效应

【涂鸦物联网足迹】涂鸦云平台接口列表—智能门锁

IoT云工坊

人工智能 云计算 物联网 API 智能门锁

区块链技术发展需加强核心技术自主创新

CECBC

区块链技术

Maven 入门

少平

Java

iOS底层系统小结

shirley

ios

“双11”正成为区块链场景应用“练兵场”

CECBC

大数据

太牛了,腾讯T4Java技术专家手撸的Redis技术笔记,一周内下载量已突破30W。

Java架构之路

Java 程序员 架构 面试 编程语言

《迅雷链精品课》第四课:区块链技术发展趋势

迅雷链

区块链

如何提升存储性能之IO模型和AIO大揭秘

焱融科技

数据 io 存储 焱融科技 分布式文件存储

架构师训练营第四周学习笔记

李日盛

笔记

京东云弹性伸缩功能实践_架构_黄锦景_InfoQ精选文章