论文部分内容阅读
随着云计算的不断发展,越来越多的传统IT应用选择以云服务的模式进行交互,数据库应用也不例外。传统数据库成本较高,需要自行搭建服务器,聘用专业的数据库管理人员和运维人员。将数据库迁移到云中,能够解决传统数据库中存在的为题,可以更轻松、更方便的管理数据库。云计算主要分为三层,IaaS层,PaaS层和SaaS层。PaaS是平台及服务,主要提供应用托管平台;云编排是云环境中部署服务的端到端自动化,在云环境下简化了分布式复杂应用的部署流程,降低了传统部署安装方法带来的人工操作错误。H3Cloud是某公司的私有云平台,该云平台中现有的云数据库服务是基于OpenStack数据服务组件Trove实现的,对OpenStack和IaaS平台依赖严重,影响了PaaS平台的独立部署。为了达到自主研发的目的,基于项目需求提出了一种基于PaaS平台和云编排引擎的云数据库服务方案。本文研究了基于PaaS平台和云编排引擎部署和管理数据库的优势,在此基础上进行了云数据库服务的需求分析和详细设计,最后完成了云数据库服务的实现,具体内容包括:(1)分析了现有云数据库服务面临的问题,并对基于PaaS平台和云编排引擎开发云数据库服务方案进行了分析,在此基础上完成了云数据库服务的需求分析。(2)提出了基于PaaS平台和云编排引擎的云数据库服务解决方案,该方案将云数据库架构分为三层:Web界面层、REST接口层和云数据库后端服务层。其中后端服务分为数据库实例管理模块和数据实例部署模块,数据库实例管理模块通过云编排引擎将实例部署到数据库实例部署模块。数据库实例管理端由API、Scheduler、Conductor和DB四个服务组成。API服务负责后端服务接口的定义和处理,Scheduler服务负责调度云编排引擎执行数据库实例编排任务,Conductor服务负责数据库实例状态的检查和更新,DB是整个服务的后端数据库,负责信息的记录。数据库实例部署模块包括部署的数据库实例和GuestManager服务,GuestManager负责客户机中数据库实例的管理,接着对云数据库服务中用到的关键技术进行了详细介绍。(3)基于需求分析和整体解决方案对云数据库服务进行了详细设计。首先进行了总体设计和页面结构设计。然后对后端服务进行了详细设计,包括后端服务API的设计、后端模块类的设计、云数据库服务主要功能设计和后端数据库设计。(4)云数据库服务用户交互界面采用Vue.js技术实现,后端服务采用Pecan和Openstack Oslo框架技术实现。对云数据库的部署方式进行了详细描述,实现了云数据库服务管理界面,并对云数据库服务进行了功能测试和性能测试。