论文部分内容阅读
云计算平台通过虚拟化技术将软硬件资源组成大规模的虚拟资源池,为用户提供按需取用的云服务。随着云计算技术的不断发展,越来越多的应用和服务选择云平台来部署。监控系统是云平台中最重要的基础系统之一,它为云平台提高系统运维能力、调度系统资源和负载、保障系统服务质量和分析系统缺陷等提供了必要的运行数据。本文受联想云平台项目的支持,对云平台监控数据采集和监控数据存储进行专门研究。本文结合联想云平台的开发,提出了一个对云平台进行全面深度监控的具体方案,并研发了支撑深度监控的数据存储系统。 针对云平台监控数据采集,本文提出了支撑云平台进行深度监控的三种基础数据,即软硬件基础设施运行数据,虚拟资源用量数据和云平台服务日志数据。其次,对云平台多层次软硬件基础设施的运行指标数据采集方法作了研究并提出了服务化的监控模型。接着,针对虚拟资源用量数据的采集研究了如何注入租户信息和标签信息,使得用量数据能够满足复杂的费用计算,费用审计,以及根据租户需求进行资源调度的需求。最后,本文研究了微服务架构下云平台服务API请求的日志数据采集,实现了高并发请求的情况下,对每一个请求进行隔离的全链路分析。 针对云平台监控数据存储,本文提出了一个分层存储的数据库文件合并策略来满足大规模海量监控数据的存储和处理需求,该策略可以在数据库文件合并的同时实现冷热数据的分层存储。其次,为了满足大规模数据分析和处理中数据快速加载的需求,本文研究了大规模监控数据的实时加载问题,提出了异步归并的数据预处理方法。该方法在数据归并的同时实现了对监控数据的抽样存储,可以满足不同时间粒度的监控数据存储不同时间的需求。最后本文基于Cassandra数据库实现了大规模监控数据存储系统。测试发现本文提出的优化可以显著的提高监控数据存储系统的读写性能。该存储系统在联想云平台生产环境中初步使用,可以满足大规模监控数据的读写,以及数据分析的需求。 进一步,本文在云平台监控系统数据采集和存储的研究基础上实现了联想云平台的监控系统,可以为联想云平台监控服务,账单服务和运维管理等基础服务提供数据支持。由于监控数据是典型的时序数据,因此本文研究和实现的存储系统可以广泛用于大规模时序数据处理的场景,例如物联网传感器数据。