论文部分内容阅读
近年来云计算技术不断发展和完善,传统的基础设施即服务(IaaS)已经无法满足用户对云计算交付能力的需求,他们希望越来越多的传统IT软件以云服务的形式进行交付。云数据库是在软件即服务(SaaS)不断发展下新兴的一种软件服务,数据库即服务(DBaaS)。相比于传统数据库,云数据库具备了云计算按需分配、动态扩容、免维护管理、低价高可用等优点。目前国内IT巨头纷纷推出公有云环境下的云数据库服务,但对于一个企业内部来说,更希望在私有云中使用数据库服务,然而私有云环境下的云数据库服务系统解决方案很少。因此,本文结合实验室已有的云平台,研究对比了SaltStack、Ansible自动化部署框架,设计了一种实验室私有云平台下构建mysql云数据库服务系统的解决方案。首先,本文基于实验室私有云平台,对现有的功能进行了整理分析,深入学习研究了QEMU-KVM虚拟化技术。接着对云数据库服务系统部署需要的相关技术和原理进行了分析,确定了云数据库服务系统自动化部署的可行性,同时对比了当前流行的自动化部署软件,分析各自的优点,找出其中存在的问题,确定了使用Ansible自动化部署工具,对比自动化部署的两种思想,静态部署和动态部署,设计了云数据库服务的静态部署方案,加快了数据库的部署周期。考虑到数据安全性问题,深入研究了Percona Xtrabackup数据库在线热备技术。在上述研究之后确定了云数据库服务系统的需求,对云数据库服务系统进行了架构设计和模块划分。抽象出系统包含的主要模块:用户管理、虚拟机管理、镜像管理、数据库实例管理。然后,根据对云数据库服务系统划分出的各个模块进行详细的设计与实现,将系统各个功能模块封装成webservice服务,用户通过web浏览器实现对系统的访问。最后对云数据库服务系统进行详细的功能测试和性能测试,通过对测试结果的分析,验证了云数据库服务系统实现了最初的需求,能够向用户提供稳定可靠的云数据库服务。