樊伟钰 ,朱晓民
(1 北京邮电大学网络与交换技术国家重点实验室,北京 100876;2 东信北邮信息技术有限公司,北京 100191)
伴随着互联网技术的快速发展,尤其是移动互联网快速兴起和发展,各种各样的PaaS(Platform as a Service,平台即服务)平台随之出现,业界比较著名的有Sina App Engine (SAE,新浪公司Web开发PaaS平台)、Google App Engine(GAE,谷歌Web应用程序开发和托管平台)、Cloud Foundry(CF,VMware公司推出的开源PaaS平台)等,除此之外还有众多的企业内部的私有PaaS平台。
PaaS系统的出现及发展,在为Web应用开发提供巨大便利的同时,其系统本身、以及其中部署的应用和服务的监控任务也开始面临巨大的挑战,如何处理及展示大量非结构的数据成为一项重要的内容[1,2]。
作为云计算的3种服务模型中的一种,PaaS具有云计算所有的特征,其中最重要的两点,一是极大的节约计算机资源,二是使用户更多的关注自己的业务实现,而不必过多考虑硬件资源的管理。为了满足以上的需求,PaaS平台一般具有以下几个特征:自主 的(autonomous), 协 作 的(cooperative), 自 适应的(situational),可进化的(evolvable),应急的(emergent),可信赖的(trustworthy)[3~5]。为了满足以上几个特征,PaaS平台需要具有自我管理的能力,而自我的监控则是其中一项最基本的能力。
对于PaaS服务的提供者,需要实时了解PaaS平台的运行状态,每个系统组件的负荷,系统容量以及负载,并从监控数据分析系统的性能瓶颈,从而不断的优化系统性能。对于PaaS平台本身,为了能够满足自主、自适应等特性,需要实时获取系统各组件的运行状态、负载,从而实现故障组件的自动重启,高负载组件自动扩容以及多余组件的自动关闭,实现资源的自动缩放。……