返回首页
当前位置: 主页 > 其他教程 > 电脑教程 >

基于IPv6的CloudStack云平台架构设计与实现

时间:2018-03-24 23:07来源:Office教程学习网 www.office68.com编辑:麦田守望者

云计算是当前最热门的技术之一,它作为一种全新的基于网络的超级计算模式已经受到了学术界、产业界以及政府的广泛关注[1][2]。云计算平台利用虚拟化技术将云中强大的计算资源和存储资源等通过网络向用户提供方便、快捷、按需的网络访问服务,从而为用户节省大量的软硬件成本以及运营成本等。云计算平台按照其服务模式可以分为三种类型:软件即服务(Software as a Service,SAAS)、平台即服务(Platform as a Service,PAAS)、基础设施即服务(Infrastructure as a Service,IAAS)。不同的云计算平台为用户提供有差别的服务。因此,云平台的设计与搭建是用户主要关心的问题。另一方面,由于IPv4地址资源日益枯竭以及技术所面临的安全等问题,影响了云计算平台中新兴业务的快速部署[3]。IPv6技术的出现,为云计算平台的设计注入了新活力,使得云计算平台能为用户提供更加丰富、安全和快捷的云计算服务。因此设计基于IPv6技术的云计算平台具有十分重要的意义。

  国内外许多研究者提出了自己的云平台设计方案[4]。文献[5-7]中提出在高校和科研实验室中搭建自己的云平台,主要用于解决高校和实验室中硬件资源浪费、资源利用率低等问题,实现对高校和实验室中资源的集中管理。但是所设计的云平台不是基于IPv6协议开发的,且不能够确保用户数据的安全性。文献[8-10]中实现的云计算平台是在目前主流云平台的基础上构建的,例如张帆等人[8]设计的一种基于Eucalyptus构建的云计算平台,能够广泛应用于科研实验室、工作站、企业内部等小型分布式计算环境中,但是由于Eucalyptus平台本身不支持IPv6,平台的可扩展性不强。李磊等人[9]提出了一种基于OpenStack的教学科研云计算平台框架。李小宁等人[10]提出了一种基于OpenStack的在本地科研实验室中搭建私有云平台的方法,这两个基于OpenStack所设计的云平台都能够实现资源的弹性分配,并且能够确保用户数据的安全,但OpenStack对于数据库具有很强的依赖性,且网络性能并非最优。在文献[11-15]中,作者利用CloudStack实现了相关云计算服务的优化,如负载均衡、虚拟化部署、权限管理等。虽然OpenStack与CloudStack两个开源的云平台支持IPv6协议,但是在上述相关平台应用的设计中均没有考虑应用IPv6技术来提高平台的性能。

  文献[16-18]中提出了基于Hadoop技术搭建云计算平台的方法,利用HDFS为海量数据提供存储,通过MapReduce技术实现数据的分布式处理。但是Hadoop平台自身不支持IPv6协议,无法将其应用在IPv6环境中。文献[19]设计并实现了基于Ceph的云存储系统,但是该系统也仅仅是在IPv4网络环境下实现。因此设计开发出一个基于IPv6的具有分布式文件管理的云计算平台具有现实意义。

  本文主要研究基于IPv6的CloudStack云计算平台的设计与搭建问题。由于CloudStack平台的高级网络部分能很好地支持IPv6网络的配置,以及Ceph分布式文件系统支持IPv6协议,能为每个用户提供私有的存储空间,具有良好的可扩展性和可维护性。本文以CloudStack平台和Ceph分布式文件系统为基础,利用IPv6技术、虚拟化技术和分布式存储技术来设计一个安全、高效的云计算平台,达到为用户提供便捷的服务的目的。

  CloudStack云平台与Ceph文件系统

  CloudStack[20]作为一个高可用性,高扩展性的基础设施即服务(IaaS)开源云计算平台,支持IPv6网络协议,可以部署在大型网络中并管理虚拟机实例。它是一个管理数据中心计算资源的控制台,同时也是一个IT基础架构的综合管理系统。CloudStack可以管理不同账号下任意多的虚拟机及其对应的复杂网络。CloudStack通过对计算、网络、存储等物理资源的综合管控以及完整的账户和API的支持,使其可以被用于企业内部的私有云,或运营商托管的混合云以及类似亚马逊EC2的公有云。它支持目前主流的虚拟机管理程序:VMware、KVM、CitrixXenServer、Xen CloudPlatform(XCP)、Oracle VM以及MicrosoftHyper-V。如图1所示,CloudStack采用了三层结构,客户端、系统引擎以及资源层。用户可以通过Web、终端和Web服务访问平台。资源层将底层计算资源、网络资源和存储资源虚拟化成资源池。系统引擎管理整个平台功能与服务。

  为了组建一个规模较大的、数据增长快的存储系统,我们选择了一个具有高可靠性和高扩展性的分布式文件系统Ceph[21]。Ceph分布式文件系统能够解决大量数据存储和管理的问题,同时Ceph分布式文件系统支持IPv6协议,可以基于IPv6协议实现更快速、稳定和安全的文件存储。如图2所示,其底层是RADOS(Reliable Autonomic Distributed Object Storage),允许应用程序直接通过LIBRADOS访问对象存储系统,基于RADOS底层结构的Ceph在同一个系统中同时提供了对象、块和文件存储的功能[16]。在云业务应用层选择Ceph分布式文件系统作为云硬盘的开源方案,利用其OSD节点管理、冗余管理、传输管理和检索管理等管理服务,实现可靠的多用户加密可检索文件系统。

  平台的IPv6的网络配置

  平台的IPv6网络配置如图3所示,使用2001:250:4402:223::/64作为IPv6的CIDR,将该网络分成两个子网:子网A(2001:250:4402:223::/65)与子网B(2001:250:4402:223:8000::/65)。子网A分配给CloudStack的管理节点与存储节点使用,而将子网B分配给Ceph分布式文件系统中的存储节点及控制节点。相对于IPv4地址来说,IPv6支持的主机数明显增加,可以更加迅速快捷的扩展云平台的规模大小,比如在CloudStack系统中,通过动态的添加Host主机,扩大集群的计算能力以及存储能力,在Ceph中,存储节点也可以进行动态的扩充,支持TB到PB级的扩展。

 平台总体架构设计

  该平台整体分为五层,如图4所示。

  表现层为WebUI与Mobile Web UI界面,分别为用户提供电脑和手机终端访问;业务应用层为多用户加密可检索文件系统与云资源管理系统,即云平台的SaaS层,实现用户之间资源的共享和检索。在云资源管理子系统中,可以为IPv6的云租户提供虚拟资源的申请,比如计算资源、服务方案、网络资源等。表现层与业务应用层合为此平台的前端系统部分。应用支撑层分为开源云平台CloudStack与分布式文件存储系统Ceph,实现对资源的管理以及服务调配等操作。基础设施层包括服务器、存储节点、网络设备及安全设备等,利用虚拟化技术对资源池进行管理,实现对资源的动态分配等操作,使得该平台具有一定的扩展性和可维护性。IPv6的支持解决了现有的IPv4地址不足的问题,IPv6协议具有较灵活的报文头部格式和较小的路由表,这使得该平台具有更大的吞吐量,能提供更多类型的服务。CloudStack为不同的用户提供不同的计算资源、网络资源以及服务资源等,而在Ceph分布式存储系统中每个用户拥有自己的独立存储空间,能够很好地实现用户基于IPv6协议上的资源的隔离与共享,这使得该平台具有较高的安全性。B/S架构的应用使得用户可以随时随地访问自己的云资源,更加便捷地为用户提供服务。五层架构的设计,完美融合了基础资源,真正实现弹性计算、按需分配与资源共享。

  平台详细设计

  平台的总体架构设计如图5所示。下面针对该平台的总体架构分别进行各层的详细设计。

  云平台客户端

  云平台客户端主要是前端系统,即门户网站,分别通过WebUI与MobileWebUI界面为用户提供手机和电脑终端的访问;门户网站针对不同用户类型,用户显示界面有所不同,实现个性化定制。

  云业务应用层

  云业务应用层的系统主要包括多用户加密可检索文件系统和云资源管理系统。用户在使用文件系统时,可以管理个人云盘,进行文件查询、删除、加密上传和下载解密等操作。通过IPv6协议的网络传输,能够保证平台与文件系统之间传输的服务质量和安全性;管理公共文件区域,用户上传的个人资源可以选择共享,对于用户共享资源可进行相关性安全查询;防火墙规则配置,在IPv6的基础上配置网络的入口以及出口规则,实现网络安全隔离;云资源管理系统可管理虚拟资源,通过设定CPU核心数、CPU速率、内存大小等来管理计算资源,通过设定主数据存储提供磁盘大小和IOPS等选项来管理磁盘方案,通过约定来宾网络中虚拟路由器或外部网络设备来管理网络资源[20];管理门户网站,针对不同的用户,可对其进行不同权限的控制。

------分隔线----------------------------
标签(Tag):IPv6 CloudStack云平台
------分隔线----------------------------
推荐内容
猜你感兴趣