OpenStack与MySQL集成实践

添加时间:17-08-29   添加人:  点击:

OpenStack与MySQL集成实践

作者: 佚名 【CIO时代】 

 

7月27日, MySQL技术交流大会在北京成功召开。EasyStack携手甲骨文、爱可生围绕MySQL最新更新动态、MySQL在OpenStack中的应用等技术话题展开探讨。

在大会上,EasyStack云解决方案架构师王璐做了《OpenStack&MySQL》的主题分享,详细介绍了MySQL在OpenStack中的应用,以及如何通过ESCloud AppCenter轻松部署MySQL应用。

以下为分享全文:

根据Black Duck (黑鸭软件公司,一家提供开源软件与技术的公司)2016年的权威调查结果表明,开源软件在近十年来得到了迅猛发展。

从2008年开始,开源软件已经对软件行业造成了不可忽视的影响,可以说,现在,没有哪家公司会说自己没用过开源产品。

到2011年,随着开源软件种类的丰富,产品性能和稳定性的提升,开源软件已不再只是因为价格低廉而吸引人。

到了2013年,软件引领世界,而开源则开始引领软件行业。

从2014年开始,开源软件进一步引入新的技术、新的生态。

根据Black Duck 2016年的调查表明,开源软件在软件行业的应用已经达到了65%以上,使用开源软件来进行IT基础设施搭建的比例也已经达到55%。开源软件正在对软件开发,产品交付等各个方面产生着巨大的影响。

随着开源软件蓬勃发展,使用的人越来越多。

同时,无论是大企业还是个人的贡献也越来越多,这促使开源软件行业进入了一个良性、快速的发展阶段,开源软件由此形成了一个完整的生态,从底层的操作系统到上层的应用,都有对应的、优秀的开源产品来替代现有成熟的商业产品。

比如开源操作系统linux,虚拟化产品KVM、Xzen,开源分布式存储系统Ceph, 部署管理工具方面有Ansible, 实现数据中心自动化管理而设计的配置管理软件Puppet,在云计算这一层有OpenStack对应亚马逊的AWS、微软的Azure。数据库方面有分布式数据库系统MySQL,容器方面有Docker,大数据处理方面的Hadoop在市场上也占领了很大的份额,Git目前已经成为世界上最先进的分布式版本控制系统。在应用层,无论是PHP,还是Python,Eclipse也都已成为了大家日常使用的工具。

在开源技术蓬勃发展的同时,整个IT架构也在发生着巨大的改变,越来越多的分布式应用架构对传统的IT架构提出了更多要求。无论是从数据库、中间件、发布封装、应用框架、开发运维,以及最基础的硬件资源方面,都需要做出改变来适应分布式应用架构的需求。

硬件资源从最开始采用IBM、EMC等高性能硬件开始转向性价比较高,更加灵活的公有云以及私有云。Weblogic、WAS中间件也转向了PaaS服务,集中式数据库Oracle Database也在往分布式数据库MySQL进行转变。

开源软件生态体系的完善,分布式应用架构日益成熟,都给云计算的发展以及应用提供了良好的环境,分析完开源现状以及传统IT架构的改变以后,我们来了解一下在现代数据中心所面临的挑战。

我们知道,在传统的IT架构中,传统基础架构缺乏灵活性和可伸缩性,在传统的数据中心中,如果研发测试要申请一个环境,通常要将自己的需求提交给运维团队,运维团队再根据其需求搭建硬件,安装操作系统以及相应的中间件等操作,网络中心需要为测试开发环境配置相应的VLAN、VXLAN、子网、IP等,这个跨部门的合作一般都需要两三天左右,无论是时间上和效率上,都对上层业务造成很大的束缚。

与此同时,大量的运维人员被重复性的工作所困扰,难以开展其他业务。并且随着业务数量呈现指数级增长,这些问题也变得越来越严峻,特别是在微服务架构、容器化发布封装普及的今天,传统IT基础设施过于僵化,难以应付这种变化和复杂性。

如果讲传统IT基础设施进行抽象化、池化和自动化扩展,并且实现软件全自动化管理,那么显而易见可以达到事半功倍的效果。这种软件定义的数据中心在效率、控制力、敏捷性和选择性上都会有大幅提高,这对IT和业务都大有益处。

云化及自动化部署等技术极大地降低了微服务构建、部署和运维的难度,通过应用持续集成和持续交付等方法有助于达到加速推出市场的目的。

在云计算化需求的引领下,OpenStack作为最广泛应用的一个云操作系统,实现了软件定义化的数据中心,那么,OpenStack是什么?首先对计算资源进行虚拟化,接下来对网络和安全服务进行虚拟化并提供给计算层,从而实现按需消费。

此后,对存储如法炮制,即对本地和外部异构存储进行抽象化、池化和自动化,将他们整合到同一个虚拟数据板,再用这些来实现基于业务的调配和控制,所有服务均实现虚拟化后,资源利用率和自动化程度将会得到大幅度提高,这个架构将使数据中心节约更多的资金开销和运营成本。

同时,在软件定义化的数据中心中,管理层管理计算、网络以及存储池,并且将这些资源分配给应用和服务,结果是业务敏捷性,运营控制力都将迈上新台阶,应用调配在数秒钟完成。这就是现在所需的软件定义的数据中心,这是一种可扩展的云计算体系结构,支持前所未有的广泛选择,完全独立于硬件,弹性十足,并且能对业务需求提供动态响应。

下面介绍如何通过ESCloud AppCenter轻松部署MySQL应用。

Trove创建数据库实例是非常灵活的,后期的调度也非常方便,这些都得益于OpenStack的Nova和Cinder组件。

Trove是OpenStack中的一个组件,可以用来将MySQL、Mongodb等数据库进行云化处理,提供DBaaS服务。

Trove构建于OpenStack原有的几大基础服务之上,实际上拥有了云平台的一些基础特性,比如容灾隔离、动态调度、快速响应等能力,减少了研发重复部署环境的步骤。

OpenStack除去通过Trove来提供MySQL服务外,还能够通过Murano来提供快速部署MySQL的能力。

ESCloud AppCenter是EasyStack推出的基于Murano的标准化组件。

ESCloud AppCenter推崇AaaS(Anything-as-a-Service)的概念,为用户、云管理员和应用开发者提供一个可分类的应用目录。通过统一的框架和API实现应用程序快速部署和应用程序生命周期管理,降低应用程序对底层平台(OpenStack层和虚拟化层)的依赖,实现IaaS层对用户的透明化。开发者可以将云应用发布到AppCenter,用户可以通过AppCenter购买和管理应用生命周期。

ESCloud Murano中有很多精心设计的应用目录和交互特性应用目录。通过简洁的界面,用户可以通过图标展示找到MySQL,然后使用点击、拖拽的方式进行选择和部署MySQL。

每个应用程序都提供了所需配置的默认信息,用户可以按照这些默认信息轻松部署。另外,应用程序拓扑图可以很清晰的展示每个应用程序孵化实例的数量。应用部署管理的流程包括从应用商店中选择应用、填写应用名称、配置实例参数、查看安装好的应用、 从已安装应用中删除不需要应用、点击应用名称查看应用详情、通过快速入口访问应用。

云树DMP是爱可生推出的一款面向DBA的全功能的开源数据库(MySQL)管理平台,用户可以通过DMP界面轻松、快速、安全地部署和管理数据库。

EasyStack将与爱可生合作将云树DMP引入ESCloud AppCenter,为客户提供MySQL的可视化运维管理服务。

K8S作为目前云计算领域的一颗新星,如何与OpenStack进行整合是业界关注的热点。EasyStack为此也推出了ESContainer企业级容器云平台,从网络、存储、资源池、弹性、自服务、容灾完美地进行了整合。ESContainer可助力实现MySQL容器化,实现MySQL的快速部署、动态扩展、资源高利用、成本降低。

容器云平台已经足够成熟,采用容器后,可实现数据库实例的快速创建、容器弹性可伸缩,可以极大的提高资源利用率、极大的降低了服务器资源。

显而易见,EasyStack已实现通过云系统快速交付MySQL服务。但同时,EasyStack也考虑到除了部署外,用户对于管理和优化MySQL也很重视。

所以,EasyStack和爱可生的合作不光是提供MySQL服务的交付,还将在数据库的统一管理、性能优化等方面充分合作打造成一个可部、可管、可调配的云上数据库。