一种私有云的云监控系统及方法
【专利摘要】本发明涉及一种私有云的云监控系统,以及一种私有云的云监控方法。根据本发明的系统与方法,其中物理机监控代理和虚拟机监控代理主动且定时向物理机汇聚节点和虚拟机汇聚节点发送监控数据,通过引入了群集汇聚节点,降低了云监控系统的复杂性,降低了监控服务器的负载和避免了突发的网络通信造成的网络拥塞。采用本发明的系统与方法,根据对虚拟机未来运行所需资源的预测,可以保障虚拟机的正常运行,及时发现虚拟机资源的资源瓶颈,并及时作出动态调整。
【专利说明】一种私有云的云监控系统及方法
【技术领域】
[0001] 本发明涉及云计算中的云监控领域,更具体地说,涉及一种私有云的云监控系统, 以及一种私有云的云监控方法。
【背景技术】
[0002] 云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访 问,进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资 源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。
[0003] 随着云计算技术的不断发展,云计算平台本身的复杂度在逐步加剧。云的复杂结 构是由若干层组成,以允许功能分离,模块化,满足可管理性。然而,云计算系统的分层设计 造成了云监控系统对云计算系统内各项监控指标获取上的限制。这些限制包括无法让用户 访问底层的监控指标和无法让云服务提供方访问高层的监控指标。因此,云用户方和云服 务提供方只能基于有限范围的监控数据对各自的系统做出决策。而监控数据的可视化技术 会有助于对复杂度极高的云计算平台中各组件进行直观的性能监控和故障分析。
[0004] 云计算平台本身包含了数量巨大的从物理层、网络层、虚拟层到应用层的物理设 备和虚拟设备,并且随着云的规模的扩展,设备数量也在增长,导致了云计算平台具有很高 的复杂度。随着云计算平台复杂度的加剧,有效的云监控系统对于保证云计算平台高效和 稳定运行有着至关重要的作用。有效地对云平台进行管理,需要准确的和细粒度的监控数 据,从而在云平台复杂性不断增加的情况下保证其可靠性、可用性和安全性。
[0005] 云计算部署模型分为4类,包括:公有云、私有云、社区云和混合云。公有云的云基 础设施是对整个互联网开放的。它由一个云计算服务提供商(商业机构,教育机构或者政 府机构)进行运营,通过互联网向用户提供云服务,任何人都具有有偿或无偿使用的权限。 相对公有云,私有云是不对外开放或者有限度对外开放的,由某个组织或企业完成建设、管 理和使用。其使用对象主要位于组织内部。社区云由几个组织共享的云端基础设施构成。 其支持特定的社群,具备共同的关切事项,如:任务目标、安全需求等。管理者可以是组织本 身,也可以是第三方;管理者的位置可能位于组织内部,也可能位于组织外部。混合云综合 了两种或者两种以上的云计算模式,可以使私有云和公有云的混合,也可以是私有云和社 区云的混合。如:私有云可以从公有云获取计算资源作为其自身基础设施的补充。混合云 会提供一个统一的接口或者管理平面,对于最终用户而言,从不同的云计算模式获取的服 务具有一致性。
[0006] 对于云监控而言,不同的云部署模式有不同的需求,需要不同的途径实现监控。公 有云通常有地理上是分散的,拥有很大的资源池,这需要投入更多的监控流量并确保可扩 展性。私有云,即使是可扩展的,也仅限于组织内部所拥有的资源。关于安全性问题,在私 有云中数据存储在组织内部,处于组织的控制之下;公共云直接暴露在互联网中,受到网络 攻击的威胁更为严重,需要持续的监控来发现安全性问题。关于服务指标,如链路可用性和 连接速率,对公共云就是关键指标,但由于私有云位于局域网内,网络带宽不是瓶颈。
[0007] 云监控是一个对于云服务方和云用户方同样重要的服务。一方面,它是控制和管 理软硬件基础设施的关键工具;另一方面,它为平台和应用提供了相关监控信息和KPI (关 键绩效指标)。对云计算和它的SLA(服务水平协议)进行持续的监控,可以为服务方和用 户方许多关键信息,比如系统负载,系统性能和QoS(服务质量)等。还能为故障发现和恢 复提供必要的信息。对云环境构建云监控系统有很多原因,最重要的原因包括:
[0008] (1)容量和资源管理
[0009] 首先,管理云系统这样复杂的系统,需要一个能够实时且精确捕获它运行状态的 监控系统。然后,通过分析监控数据,合理调度云系统内的各项资源。
[0010] (2)服务水平协议管理
[0011] 云计算模式下的SLA(服务水平协议)[7]贯穿云服务的整个生命周期,主要包括 三个阶段:合同阶段、交付阶段和退出阶段。有效的云监控系统一方面能帮助云服务方制订 符合实际情况的SLA。云服务方根据监控数据对云用户的性能需求做出预测,从而制定更合 理的服务定价模式。另一方面帮助云用户方监测云服务方的SLA履行情况。
[0012] (3)性能管理
[0013] 性能管理是对云环境中各种性能指标进行监控和分析[8],通过这些度量标准来 量化云环境中各组件的运行状态,从而为运行维护提供支持。
[0014] (4)故障恢复
[0015] 云基础设施的复杂性给故障分析与故障恢复带来了巨大的挑战。因此,云服务方 需要一个全面和实时云监控系统,实时获取云系统内部各基础设施的运行状态,为定位故 障提供支持。而云用户方需要一个精确的云监控系统,用于判断故障是由应用系统故障,还 是云基础设施故障所造成。
[0016] (5)安全管理
[0017] 随着云计算的普及,企业的关键业务和政府部门的关键应用逐步迁移到云端,所 以云系统需要更高的安全保障。而有效的云监控,是云安全管理的基石。
[0018] 现在的监控技术存在的问题:
[0019] 当前的云监控系统主要分为两大类,一类是以阿里云的云监控为代表的针对特定 的闭源云系统的监控解决方案,其缺点是只能应用在特定的云系统中;另一类是将传统的 监控工具直接搬到云环境中使用,其缺点是无法适应云环境具有高度复杂性的特点。
【发明内容】
[0020] 本发明的目的在于克服现有技术的不足,提供一种对监控服务器负载小,网络顺 畅,并通过对监控进行分析,来预测虚拟机未来运行所需的资源,从而对虚拟机资源分配和 迁移的决策做出支持的私有云的云监控系统,以及私有云的云监控方法。
[0021] 本发明的技术方案如下:
[0022] -种私有云的云监控系统,包括云计算资源池、监控服务器群集、分布式数据库、 Web服务器;
[0023] 所述的云计算资源池包括多个物理机群集;物理机群集包括多个物理机,物理机 上运行有多个虚拟机和物理机监控代理服务;虚拟机上运行有虚拟机监控代理服务;
[0024] 监控服务器群集包括多台监控服务器,监控服务器上运行有监控服务端和数据库 客户端驱动服务;
[0025] 分布式数据库用于存储监控数据;
[0026] Web服务器包括云监控系统Web服务和数据库客户端驱动服务。
[0027] 作为优选,物理机监控代理服务运行于所监控的物理机上,用于获取物理机的运 行状态,将监控数据发送给物理机群集汇聚节点。
[0028] 作为优选,虚拟机监控代理服务运行于所监控的虚拟机上,用于获取虚拟机的运 行状态,将监控数据发送给虚拟机群集汇聚节点。
[0029] 作为优选,监控服务器上运行的监控服务端用于接收物理机群集汇聚节点和虚拟 机群集汇聚节点发送的监控数据,并将监控数据通过数据库客户端驱动服务写入分布式数 据库。
[0030] 一种私有云的云监控方法,包括如下步骤:
[0031] 1)物理机监控步骤:通过物理机监控代理服务获取监控数据发送给监控服务器, 存入分布式数据库,云监控管理web服务器调用监控数据展现给用户方和服务方;
[0032] 2)虚拟机监控步骤:通过虚拟机监控代理服务获取监控数据发送给监控服务器, 存入分布式数据库,云监控管理web服务器调用监控数据展现给用户方和服务方;
[0033] 3)基于监控数据的性能预测的虚拟机资源分配步骤:通过分析物理机和对应的 物理机上运行的虚拟机的监控数据,对虚拟机所需资源做出预测运算,对虚拟机动态分配 还是动态迁移虚拟机做出预设的决策。
[0034] 作为优选,预设的决策包括:
[0035] 第一类:虚拟机所在的物理机上有足够的空余的资源,对虚拟机采取动态分配未 来运行所需的资源;
[0036] 第二类:虚拟机所在的物理机上没有足够的空余的资源,查找空余的资源充足的 物理机,将虚拟机动态迁移到其上,再对虚拟机采取动态分配未来运行所需的资源。
[0037] 本发明的有益效果如下:
[0038] 根据本发明的系统与方法,其中物理机监控代理和虚拟机监控代理主动且定时向 物理机汇聚节点和虚拟机汇聚节点发送监控数据,通过引入了群集汇聚节点,降低了云监 控系统的复杂性,降低了监控服务器的负载和避免了突发的网络通信造成的网络拥塞。
[0039] 采用本发明的系统与方法,根据对虚拟机未来运行所需资源的预测,可以保障虚 拟机的正常运行,及时发现虚拟机资源的资源瓶颈,并及时作出动态调整。
【专利附图】
【附图说明】
[0040] 图1是本发明所述的系统架构示意图;
[0041] 图2是物理机监控方法的流程示意图;
[0042] 图3是虚拟机监控方法的流程示意图;
[0043] 图4是虚拟机资源分配或迁移的决策流程示意图。
【具体实施方式】
[0044] 以下结合附图及实施例对本发明进行进一步的详细说明。
[0045] 如图1所示,所述的私有云的云监控系统包括下述部分:云计算资源池(物理机群 集61,物理机群集G2);多台物理机(服务器GM,服务器GA……服务器GJ,服务器6 2即 服务器G2N2……服务器G2Nm);多台虚拟机(虚拟机GiNJi,虚拟机GiNA……虚拟机; 在物理机上运行的多个物理机监控代理(物理机监控代理GM……物理机监控代理hi,物 理机监控代理G 2K……物理机监控代理G2Nm);在虚拟机上运行的多个虚拟机监控代理(虚 拟机监控代理GiNA……虚拟机监控代理GiNJk);在各物理机群集中收集各物理机监控代 理监控数据的物理机汇聚节点(物理机汇聚节点匕,物理机汇聚节点G 2);收集各虚拟机监 控代理监控数据的虚拟机汇聚节点(虚拟机汇聚节点GA);接收虚拟机和物理机群集汇聚 节点监控数据的监控服务群集(监控服务器MSi……监控服务器MS」);用于存储监控数据的 分布式数据库;用于向用户方和服务方展示监控数据的web服务器。
[0046] 云计算资源池中将一定数量(m台)的物理机分成一个群集,便于管理和监控数据 的收集。
[0047] 物理机群集中的每台物理机上面运行物理机监控代理服务。一个物理机群集中的 所有的物理机监控代理服务把获取的物理机监控数据统一发送到本物理机群集对应的物 理机群集数据汇聚节点。各群集的群集数据汇聚节点负责收集它所在群集的监控数据,统 一汇总后发送到监控服务器群集。运行在监控服务器上的数据库客户端驱动服务将物理机 监控数据写入分布式数据库。
[0048] 虚拟机群集由一定数量的虚拟机构成,一个虚拟机群集中的所有的虚拟机监控代 理服务把获取的虚拟机监控数据统一发送到本虚拟机群集对应的虚拟机群集数据汇聚节 点。各群集的群集数据汇聚节点负责收集它所在群集的监控数据,统一汇总后发送到监控 服务器群集。运行在监控服务器上的数据库客户端驱动服务将虚拟机监控数据写入分布式 数据库。
[0049] 用户可通过云监控系统Web服务查看监控数据。
[0050] 具体来说,云用户方和云服务方通过云监控系统web服务,无论在传统的互联网 还是移动互联网都可以实时查看监控数据获取报警信息。云监控系统Web服务会调用监控 服务器中的监控数据缓存,如果查看历史监控数据,会从数据库中查询并返回到云监控系 统web服务。
[0051] 如图2所示,物理机监控方法包括下述步骤:
[0052] 监控数据获取步骤S1 :物理机监控代理获定时获取所在物理机的监控数据,并主 动发送给物理群集数据汇集器。
[0053] 监控数据汇聚转发步骤S2 :物理群集数据汇集器汇聚有多个物理机监控代理发 送的监控数据,并转发给监控服务器群集中监控服务端。
[0054] 监控数据汇总存储步骤S3 :监控服务器群集中监控服务端汇总所有的物理机监 控数据,并写入分布式数据库。
[0055] 监控数据显示步骤S4 :云用户方和云服务方通过云监控管理平台(从云监控系统 Web服务器中)可以获取可视化的物理机监控数据。
[0056] 如图3所示,虚拟机监控方法包括下述步骤:
[0057] 监控数据获取步骤VI :虚拟机监控代理获定时获取所在虚拟机的监控数据,并主 动发送给虚拟群集数据汇集器。
[0058] 监控数据汇聚转发步骤V2 :虚拟群集数据汇集器汇聚有多个虚拟机监控代理发 送的监控数据,并转发给监控服务器群集中监控服务端。
[0059] 监控数据汇总存储步骤V3 :监控服务器群集中监控服务端汇总所有的虚拟机监 控数据,并写入分布式数据库。
[0060] 监控数据显示步骤V4 :云用户方和云服务方通过云监控管理平台(从云监控系统 Web服务器中)可以获取可视化的虚拟机监控数据。
[0061] 如图4所示,虚拟机资源分配或迁移方法包括下述步骤:
[0062] 步骤1,从分布式数据库分别获取物理机监控数据和虚拟机监控数据;
[0063] 步骤2,将获取的监控数据输入数据分析器,对未来虚拟机所需资源做出预测;
[0064] 步骤3,根据预测判断虚拟机运行所需的资源是否足够,若不足则进入步骤4,否 则跳至步骤8 ;
[0065] 步骤4,根据物理机的监控数据判断此虚拟机所在的物理机空闲的资源是否足够, 若不足则进入步骤5,否则跳至步骤7 ;
[0066] 步骤5,查找有足够空闲资源的物理机;
[0067] 步骤6,动态迁移此虚拟机到查找到的目标物理机;
[0068] 步骤7,动态分配虚拟机未来运行所需的资源;
[0069] 步骤8,返回结果。
[0070] 上述实施例仅是用来说明本发明,而并非用作对本发明的限定。只要是依据本发 明的技术实质,对上述实施例进行变化、变型等都将落在本发明的权利要求的范围内。
【权利要求】
1. 一种私有云的云监控系统,其特征在于,包括云计算资源池、监控服务器群集、分布 式数据库、Web服务器; 所述的云计算资源池包括多个物理机群集;物理机群集包括多个物理机,物理机上运 行有多个虚拟机和物理机监控代理服务;虚拟机上运行有虚拟机监控代理服务; 监控服务器群集包括多台监控服务器,监控服务器上运行有监控服务端和数据库客户 端驱动服务; 分布式数据库用于存储监控数据; Web服务器包括云监控系统Web服务和数据库客户端驱动服务。
2. 根据权利要求1所述的私有云的云监控系统,其特征在于,物理机监控代理服务运 行于所监控的物理机上,用于获取物理机的运行状态,将监控数据发送给物理机群集汇聚 节点。
3. 根据权利要求1所述的私有云的云监控系统,其特征在于,虚拟机监控代理服务运 行于所监控的虚拟机上,用于获取虚拟机的运行状态,将监控数据发送给虚拟机群集汇聚 节点。
4. 根据权利要求1所述的私有云的云监控系统,其特征在于,监控服务器上运行的监 控服务端用于接收物理机群集汇聚节点和虚拟机群集汇聚节点发送的监控数据,并将监控 数据通过数据库客户端驱动服务写入分布式数据库。
5. -种私有云的云监控方法,其特征在于,包括如下步骤: 1) 物理机监控步骤:通过物理机监控代理服务获取监控数据发送给监控服务器,存入 分布式数据库,云监控管理web服务器调用监控数据展现给用户方和服务方; 2) 虚拟机监控步骤:通过虚拟机监控代理服务获取监控数据发送给监控服务器,存入 分布式数据库,云监控管理web服务器调用监控数据展现给用户方和服务方; 3) 基于监控数据的性能预测的虚拟机资源分配步骤:通过分析物理机和对应的物理 机上运行的虚拟机的监控数据,对虚拟机所需资源做出预测运算,对虚拟机动态分配还是 动态迁移虚拟机做出预设的决策。
6. 根据权利要求5所述的私有云的云监控方法,其特征在于,预设的决策包括: 第一类:虚拟机所在的物理机上有足够的空余的资源,对虚拟机采取动态分配未来运 行所需的资源; 第二类:虚拟机所在的物理机上没有足够的空余的资源,查找空余的资源充足的物理 机,将虚拟机动态迁移到其上,再对虚拟机采取动态分配未来运行所需的资源。
【文档编号】H04L29/08GK104113596SQ201410335946
【公开日】2014年10月22日 申请日期:2014年7月15日 优先权日:2014年7月15日
【发明者】陈永红, 蒋堃, 侯雪艳, 田晖, 王田, 蔡奕侨 申请人:华侨大学