支撑上千个Pegasus集群的后端技术实践

版权申诉
0 下载量 122 浏览量 更新于2024-07-05 收藏 3.29MB PDF 举报
本文主要介绍了如何支撑上千个Apache Pegasus集群的后端技术实践,着重在业务特点、版本演进和重要特性的优化上进行了详细阐述。 在业务特点方面,由于神策数据服务了超过1000家客户,因此需要处理大量私有部署的Pegasus集群。这些集群运维难度大,部分规模较小且硬件配置较低,有的甚至采用单机部署,内存容量有限,磁盘性能不高。此外,每台机器上部署的服务繁多,这就需要对内存使用进行严格控制,以应对可能出现的极端故障,如机房火灾、断电等。 在版本演进过程中,2020年2月引入了1.12.2版本并开始二次开发,随后逐步引入了1.12.3,内部版本也不断迭代,如0.1.0主要解决单机部署和内存控制问题,0.3.0则进行了内存使用优化、Kerberos认证和C++客户端的优化。到了2021年8月的内部版本0.6.0,新增了新的日志策略和AIO的重试机制等改进。 在重要特性方面,非功能性改进主要包括优化batchGet2接口,以及控制Pegasus对内存的使用,以提高系统稳定性和效率。功能性改进则包括支持Pegasus的单节点部署,实现了PacificA协议对单副本的支持,以及PegasusShell的放开。此外,引入了冷备功能,支持ZooKeeperClient的Kerberos认证,允许修改表的副本数量,新的日志策略,以及版本一致性保证。在修复bug的同时,对冷备功能进行了改进,如增加即时备份和指定路径备份的支持,以满足单节点部署的客户需求。 针对单节点部署,Pegasus通过PacificA协议和调整PegasusShell来适应这种场景,确保在资源有限的环境下也能正常运行。冷备功能的改进旨在提供更灵活和可靠的备份策略,尤其是对于只有一个节点的集群,用户可以随时启动备份,只需执行一次命令即可完成备份,避免了频繁备份带来的资源浪费。 这篇文档揭示了神策数据在支撑大规模Pegasus集群过程中遇到的挑战和解决方案,特别是在版本升级、功能优化和单节点部署及冷备策略上的创新实践,展示了其在大数据存储与管理领域的深入理解和专业技能。