写点什么

京东云弹性伸缩功能实践

  • 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:121270

评论

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

ICT的圣杯(二):数字生活的另类想象

脑极体

使用基于 WebRTC 的 JavaScript API 在浏览器环境里调用本机摄像头

汪子熙

JavaScript 前端 WebRTC 摄像头 3月月更

Nacos源码分析(一)之线程池的巧妙设计,可以薅到自己的项目里

刘祥

SpringCloud Alibaba

Java基础重要面试题(二)

逆锋起笔

java面试 java基础 3月月更

中小企业如何搭建在线客服中心?

小炮

智能问答机器人

DS小龙哥

智能问答机器人 3月月更 智能对话机器人

手绘流程图,教你WSL2与Docker容器无缝互相迁移

华为云开发者联盟

Docker 容器 WSL2 迁移

从读写角度,带你了解数仓的IO基本框架

华为云开发者联盟

io GaussDB(DWS) IO框架 行存 列存

虎符交易所Hoo研究院:元宇宙中的Decentraland是什么?

区块链前沿News

元宇宙 Hoo虎符 虎符研究院

阿里智能运维实践|阿里巴巴DevOps实践指南

阿里云云效

云计算 阿里云 DevOps 云原生 智能运维

持续集成容器篇:Docker与自动化打包

Docker 架构 持续集成 jenkins 持续交付

融云获 CSDN 技术影响力之星评选「年度技术品牌奖」

融云 RongCloud

兴业+民生上岸面试经验分享

暖蓝笔记

3月程序媛福利 3月月更

iuap助力澳洋集团打造主数据管理平台

用友BIP

用友 用友iuap

网络协议之:socket协议详解之Unix domain Socket

程序那些事

socket Netty 程序那些事 3月月更

使用bds搭建我的世界官方基岩版服务器(windows篇)

Daimon

融云 IM +RTC 重磅优惠上线!15 天免费体验,1 年服务买一赠一

融云 RongCloud

【CAD】入门系列完

謓泽

3月月更

在线MySQL,SQL Server建表语句生成JSON测试数据工具

入门小站

工具

对微博系统中“微博评论”的高性能高可用计算架构的一点思考

晨亮

「架构实战营」

图解|从根儿上理解MySQL的索引

蝉沐风

MySQL 索引 B+树

写给后端开发工程师的H5前端开发知识

得物技术

前端 Web 可视化 后端开发 交互

一文详解Redis键过期策略

华为云开发者联盟

redis key 惰性删除 定期删除 键过期

PendingIntent重定向:一种针对安卓系统和流行App的通用提权方法——BlackHat EU 2021议题详解 (下)

安第斯智能云

安全 安卓

CVE-2022-22947 远程代码执行漏洞复现分析

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

千字带你了解什么是 RPC 协议

踏雪痕

RPC 3月程序媛福利 3月月更

Python 递归函数返回值为 None 的解决办法

AlwaysBeta

Python 递归

如何捕获和分析 JavaScript Error

喀拉峻

前端

创建 Node.js 视频流应用之后端

devpoint

node.js Video Express 3月月更

实用机器学习笔记二十八:迁移学习

打工人!

学习笔记 迁移学习 机器学习算法 3月月更

全面解析云智慧数据中心统一运管解决方案

云智慧AIOps社区

安全 运维自动化 数据处理 数据可视化 监控工具

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