频道栏目
首页 > 网络 > 云计算 > 正文

云计算时代IT资源扩容的思考

2017-08-10 09:51:58      个评论    来源:  
收藏   我要投稿

近一段时间,我和周围的同事在多个项目中,经常被计划部门或业务部门同事问到的一个问题就是:某某业务系统的服务器、存储资源,乃至整个私有云资源池,利用率达到多少的时候就应该扩容?

这个问题,真不是一两句话能说清楚的。首先,确保业务可用与提升资源利用率这两个出发点就不同;其次,不同的业务系统,难以有“一刀切”的结论;再次,我们很多业务系统都缺乏全面的资源利用率监控数据,很难为分析判断提供技术依据。

不过在这些讨论过程中,我自己逐步意识到:与决定IT资源是否扩容关系最大的,也许并不是你的资源利用率,而是你的扩容速度。

资源扩容是云计算时代的新课题

在运营商传统的通信网络建设中,一套设备或系统的性能或容量,通常相对比较明确。在规划建设阶段根据用户数、话务量等指标估算建设规模,上线后基于网管系统监测忙时利用率,达北京整容医院http://www.bj-swjtu.com到一定阈值(例如70%)即启动新一轮扩容。这种建设模式确保了系统的安全运行,在长期的实践中特别是通信业务快速增长的背景下,是被广泛接受的行之有效的手段。

在后来的IT支撑系统建设中,这种模式也被继续沿用。其实许多计划或业务部门的同事其实已经意识到,IT系统合理性能需求估算和容量规划,并没有通信网络那么简单明了。为了尽力确保资源满足业务需求,笔者见过不少估算资源的过程中乘以1.3、再除以0.7之类的冗余算法,甚至还有x86服务器CPU利用率超过50%性能就会不稳定等说法。不过同样因为业务增长快、IT投资盘子总体太小,这种相对粗放式的扩容方式也没有太大问题。

但到了云计算时代,情况不太一样了。一则业务的多样性、技术的演进等都比以前要显著;二则云平台的建设运营部门与业务需求部门有不同的关注点,前者更重视利用率等指标;三则提升资源利用率、降低成本本身也被认为是云平台建设的目标,还有Google、Amazon等互联网公司超高的资源利用率传说作为标杆。因此,IT资源扩容的矛盾、以及合理的判断依据等问题,随着公司内部私有云的建设、运营,必然作为一个新的课题浮现出来。

资源利用率并不直接决定扩容

IT资源或者说云平台是为上层业务服务的,需要满足业务的性能要求。在业务负载(访问量、处理量等)最高的时候,IT资源需要能够提供足够的处理能力,确保相关业务指标(时延、并发用户数等)达到预定要求。如果资源不能或者预计不能满足业务要求,就说明需要扩容了。

从IT资源角度看业务负载的高低,最直接的指标就是资源利用率,如CPU利用率、带宽利用率等等。与高业务负载对应的就是业务的峰值资源利用率,其理论最大值是100%。那么,当前峰值利用率的高低,是不是就是判断是否需要扩容的直接依据呢?其实不是的,下面就是两个反例:

01

当前峰值利用率高不等于一定需要扩容

有些业务是离线批处理类型的,在按照预定计划启动批处理任务的时候,其CPU利用率可能接近100%。但是,如果系统完成批处理任务的时间,能够完全满足业务指标要求,就不需要扩容。例如,下图蓝色线条的某业务系统就是属于这种情况:

利用率分布:蓝色线条为离线批处理业务

02

当前峰值利用率低不等于一定不需要扩容

与离线业务不同,在线业务对并发访问数、响应时延等业务指标要求较高,需要更仔细规划资源来满足峰值的业务需求。试想一下,社交平台上的特殊时间、淘宝「双11」、微信春节「红包」的业务负载可能是平时的数倍甚至数十倍,所以就算阿里在每年「双11」之前的峰值利用率只有20%,面对连年刷高的销售额目标,基础设施部门敢不扩容?

以上两个反例并不少见,我们还能说,根据峰值利用率是否达到一个阈值就确定是否启动扩容吗?这里的核心不在于这个阈值是40%、70%还是90%,而是这个方法本身就有问题。

上一篇:白话CTC(connectionisttemporalclassification)算法讲解
下一篇:HadoopHDFS通过QJM实现高可用HA环境搭建
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 |

版权所有: 88bifa.com--致力于做实用的IT技术学习网站