数据分析在私有云平台运维中的应用
随着IT技术的发展,各行各业的产生的数据正在以爆炸性的速度增长。为了从这些数据中挖掘出可用的信息并进行持续应用,数据分析变得越来越重要。数据分析使决策变得更加准确和精细,近年来已经逐渐发展成为一个重要的IT技术方向。
云计算技术的发展使得计算资源逐渐集中化、虚拟化。怎么高效、可靠的运营这些云计算平台上的资源就变成了一个重要的课题。本文主要介绍应用数据分析的方法来分析私有云平台的系统容量和资源使用率,进而在提高资源使用率、平衡系统负载和控制进一步资金投入方面提供详细的决策支持。
一、私有云平台运维中的痛点和挑战
在各行各业都在进行私有云建设的今天,在企事业单位中负责私有云平台运维的部门也在承受着来自各个方面的压力。业务部门总是不断地要求更多的资源,更快的部署节奏;财务部门则会要求不断地降低成本,尽量使用已有资源;私有云的运维部门则需要寻求适当的方法以在两者之间达成平衡。
与公有云按时间计费的方式不同,一般作为企事业单位内部建设和使用的私有云并没有成熟的计费体系,而作为资源使用者的一般员工对于成本更是不太关心。这就会导致一方面员工闲置了大量资源,而另一方面员工又在以各种业务需要为名义不停申请新的资源,进而导致私有云的运维部门总是感觉资源紧张而要求增加投资,财务部门则会感觉私有云是个需要不断投入的无底洞。
二、以数据分析为基础的私有云平台优化系统概况
为了切实解决上述问题,我们需要一种有效的可度量的技术手段。而数据分析正好为我们提供了一种系统性的解决上述痛点和挑战的方法。如图1所示,基于硬件系统和虚拟化平台之上的监控系统 (Universal Monitoring) 为整个优化系统提供关于私有云平台的各种资源利用率的数据来源,同时在这一层动态生成虚拟机资源配置信息数据库(Federated DB)。在此之上以数据分析的方法和相关软件对监控系统产生的数据进行分析,并以分析结果生成关于资源利用率和系统容量的报表(Dashboard &Report)。最后根据报表进行资源优化调整和进行进一步投资的决策(Optimization)。这样就形成了一个完整的私有云平台建设和维护的循环:从投资到云平台建设,再到监控现有平台资源并分析资源使用情况,最后生成报表并采取优化措施和决定是否进一步投资。
图1:私有云平台优化系统系统架构图
三、以数据分析为基础的私有云平台优化系统详细介绍
3.1 系统监控
系统监控的目的是将所有系统资源配置和使用的情况置于集中统一的监控之下, 而监控系统会产生大量时序的监控数据,这是我们后续进行数据分析的数据来源。系统监控可以使用成熟的商业软件如IBM Tivoli Monitoring(ITM)来达成这个目的。关于ITM在虚拟化环境中的部署可以参考文章(应用IBM Tivoli实现虚拟化环境的监控http://storage.it168.com/a2011/0106/1147 /000001147294.shtml)。现在也出现了一些开源的软件如Nagios, Cacti, Zabbix等,但开源软件在不同平台的适用性方面还需要做大量的定制才能达成目的。
3.2 Federated DB
Federated DB的目的是根据监控系统生成的配置数据生成云平台中统一的配置信息数据库,同时配置信息数据库会与资源所有者等信息进行关联以达到人、资源、配置等信息同步可查。
3.3 数据分析
数据分析是指通过技术、技能和实践来持续探索和研究既往的业务数据从而获得洞察力以驱动新的业务规划。 可以运用IBM SPSS Modular对监控数据进行处理,根据不同的技术指标(如物理机CPU, 物理机内存,物理机Disk, 虚拟机CPU, 虚拟机内存等)进行分析及按照时间序列进行预测。找出不同物理机、虚机的资源利用率曲线及未来趋势。同时开源的R语言也可以通过一定的编程达到上述目的。
3.4 报表
根据数据分析的结果,利用成熟的报表工具来呈现用户关心的内容和关键指标。可以运用IBM Cognos报表工具来展示物理机及虚机的资源利用率、系统容量、虚拟机分类信息、用户行为信息等云平台运维部门和云平台实际使用部门关心的不同信息。同时一些开源的报表工具如BIRT等也可以通过一定量的编程来实现上述目的。
3.5 系统优化
在获得了准确的物理机及虚机的利用率、容量等信息以后,云平台运维部门可以根据不同的情况对系统进行优化。如对资源利用率低的机器增加负载,以提高资源利用率;对资源率用率过高的机器减少负载,避免因为负载过高而产生问题。对于云平台上的虚拟机,如果资源利用率较低,可以联系用户看是否可以删掉这个虚拟机;如果虚拟机资源利用率过高,可以协调用户给其增加必要的资源。通过这样的方式,可以提高私有云平台的整体资源利用率,提高系统可靠性。同时在进一步投资决策的时候可以参考现有系统的资源使用率和可用系统容量,进而从整体上降低私有云平台的运营成本。
四、总结
目前数据分析在IT运维中还没有得到大范围的应用。由于私有云平台自身的特点,数据分析在私有云运维中可以发挥较大的作用,但要想达到最终的目的,我们需要多层次的知识、技能和相应工具。从数据采集、数据分析、报表生成及采取相应措施来进行系统优化是一个集成了从底层到应用层的较长的过程。每一层都需要付出相当的努力才能最终将系统集成起来并发挥效益。
作者简介
万盛(项目经理)
作者任职于某大型外企中国开发中心,从事开发中心私有云的运维和开发的项目管理工作。参与部署了多个基于Tivoli产品的IT环境性能监控和优化项目。实践经验丰富,熟悉虚拟化环境的设计、部署和优化的项目管理等。持有PMP和ITIL Foundation证书。