云平台监控管理及数据分析研究与应用
2022-03-17朱天华陈志军张振京
朱天华 陈志军 张振京
中国铁路设计集团有限公司信息化院 天津 300251
引言
云计算和数据分析是当今最受关注的两大IT技术,云计算可以增强业务灵活性,增加工作效率提高生产力,数据分析则提供有价值的洞察,帮助企业打造竞争优势,推动收益增长。此项云应用平台产品已在中国铁路设计集团有限公司推广应用,企业员工逐步将工作环境迁移到云平台上。在传统的云平台和虚拟化环境中,对云主机的监控管理和数据分析仍过于粗放,面对上百台部署的云应用虚拟主机,管理员很难及时定位并解决故障。同时,各个主机及用户的数据虽然统一存储,但仍相互隔离,基于云平台的统一数据分析仍然较为困难。经过长期的数据分析及经验积累,我们发现云主机最常见的故障就是RDP连接超时和自身系统故障(应用程序CPU、内存资源的无限占用)。在这种背景下,我们基于微软的RDP控件及WMI技术,设计开发了可以实时对云主机集群进行监控、故障报警恢复及数据分析的“云应用服务器自动化监控告警软件”,以解决云应用平台实际生产应用中的RDSH主机监控管理和数据分析问题。
1 云平台与数据分析
目前,越来越多的企业开始创建高效、灵活的云平台环境,我们所开发的云应用平台正是这样一套环境。云平台具有很高的灵活性,可以根据每一位企业用户的需求来评估最佳实践方案。例如,已支持内部私有云环境的企业可选择添加大数据分析至内部服务,一方面保护私有云中的敏感数据,另一方面利用私有云中的重要数据资源和应用程序。
通过云平台收集的海量数据来源是多种多样的,具有数据价值密度低的特点,需要通过一系列的数据分析流程才能加以利用。例如将无用重复的数据过滤并去除,根据业务需求对大量数据进行聚合和分类管理,将非结构化或半结构化的数据结构化并存储到数据库中。通过云平台数据分析,可以应用于数据监控及实时告警、提供专属报告和分析、自动数据挖掘有效信息、提供API扩展接口等。
2 云应用服务器自动化监控告警软件技术方案
云平台数据分析的一个重要应用领域是云平台的运营维护。云应用平台部署了上百台RDSH主机集群为用户提供云应用服务,当RDSH主机发生故障时,管理人员需要及时发现故障并恢复RDSH主机服务。这就需要管理人员可以实时监控全部云应用主机的运行状态,分析发现问题主机。通过长期的数据积累分析,甚至可以达到预测主机故障的目标。基于这种需求,我们设计了云应用平台系统监控集成方案并开发了云应用服务器自动化监控告警软件。
2.1 软件功能设计
2.1.1 监控RDSH云主机可用性。云主机可用性指标有:
①连接时间:通过RDP控件进行RDSH主机远程连接探测,在一定时间内无法连接的RDSH主机,则判定为失效,提醒该RDSH主机失效。②CPU/内存使用率:远程监控 RDSH主机的CPU和内存使用率,超过额定数值则报警提醒。③其他对监控RDSH主机状态有用的数据:用户数量、用户占用内存和CPU、用户进程数、打开应用数、每个应用占用内存和CPU数等。
2.1.2 图形化展示监控数据。提供监控数据的图形化展示:①图形化显示RDSH主机连接时间;②图形化显示RDSH主机CPU和内存使用率。
2.1.3 故障自动恢复。①当RDSH主机连接时间超过限定时间时,判定为失效主机,进行重启操作;②当CPU/内存超过限定使用率时,报警提示管理员进行后台操作。
2.1.4 数据统计分析。①每台RDSH的平均连接时间,失效次数等,评估RDSH主机健康性;②每台RDSH的CPU/内存平均使用频率,判定RDSH使用率;③用户平均CPU和内存占用率,判断用户使用强度;④用户使用过哪些应用。
2.2 开发技术实现
本方案主要应用了微软.net框架下的RDP协议控件及WMI技术。
2.2.1 RDP控件。RDP(远程桌面协议)是云应用平台客户端的核心技术,是一个多通道的协议[1],包括客户端视音传输、文件传输和通讯端口转向等功能,通过压缩处理的数据网络传输也是相当快。在Windows操作系统中集成了Mstsc.exe,同时在.net中也以COM组件的形式提供了Microsoft RDP Client Control控件供自行开发调用。为实时监控RDSH主机的连通状态,云应用故障监控软件主要采用RDP控件,模拟用户登录过程,通过调用RDP控件接口获取RDP的创建连接和完成连接时间数据,计算登录耗时,通过设定合理的RDP连接时间,判断连接是否超时。同时开发了定时模块,实现了自动化对全部RDSH主机进行轮询检测,对连接超时的RDSH主机进行告警,管理人员可以采取相应措施。
2.2.2 WMI技术。WMI(Windows管理工具),是Windows操作系统中管理数据和操作的基础模块[2],提供了一个通过操作系统、网络和企业环境去管理计算机的统一接口集。应用程序和脚本语言使用这套接口去完成任务,而不是直接通过Windows API。WMI的最大优势是可以获取远程计算机的信息,这样无须在每台服务器上都部署代理,可以直接以一台服务器为宿主机运行监控软件,获取其他所有RDSH主机的各种软硬件数据。
2.3 软件应用
云应用平台自动化故障监控告警软件主要实现了对全部RDSH主机RDP连接时间以及各主机CPU、内存等运行数据的收集与分析,实现了云平台服务的自动化监控与告警,以直观的图表形式展示RDSH云主机的运行状态数据,软件主体界面如图1所示。(见文末)
图1 云应用服务器自动化监控告警软件
3 云平台数据分析应用
通过收集云应用平台用户使用数据、进行数据分析、塑造用户画像是不断改进云应用平台、提供更符合用户需求的云应用服务的必经之路,下面是一些云应用平台的数据分析实例[3],如图2。(见文末)
图2 云应用各部门登录人数统计分析
通过统计每日云应用平台登录人数,预测使用人员数量趋势,动态调整云应用平台硬件资源。统计分析集团公司各部门使用人数分布,可以为重点用户提供优质服务。
4 结束语
目前,本论文研究并开发的“云应用服务器自动化监控告警软件”及相应的数据分析方法已经在中国铁路设计集团有限公司上线部署的云应用环境中成功测试应用,充分证明了该项研究的正确性,研究成果可大幅提高云平台的运维管理能力,提升管理效率,节约人力资源,其数据分析结论为优化云平台部署与运行提供了支撑。在今后的持续研发中,可以融合AI技术,提升软件智能化水平和自主分析能力,真正实现无人监控、自主故障恢复与数据分析利用。