科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道虚拟化/云计算虚拟化管理软件比较

虚拟化管理软件比较

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

最近笼统地学习和试用了几款比较有名的虚拟化管理软件。学习的内容包括Eucalyptus, OpenNebula, OpenStack, OpenQRM, XenServer, Oracle VM, CloudStack, ConVirt。借这一系列文章,对过去一个月的学习内容作一个阶段性的总结。

来源:开源软件教育网 2011年9月13日

关键字: 虚拟化 CITRIX XenSever OpenStack

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共7页)

(2)云管理平台还是虚拟化管理平台?

在IaaS这个层面,云管理和虚拟化管理的概念非常接近,但是有一些细微的差别。

虚拟化是指在同一台物理机器上提供多台虚拟机器(包括CPU、内存、存储、网络等计算资源)的能力。每一台虚拟机器都能够像普通的物理机器一样运行完整的操作系统以及执行正常的应用程序。当需要管理的物理机器数量较小时,虚拟机生命周期管理(资源配置、启动、关闭等等)可以通过手工去操作。当需要管理的物理机器数量较大时,就需要写一些脚本/程序来提高虚拟机生命周期管理的自动化程度。以管理和调度大量物理/虚拟计算资源为目的系统,属于虚拟化管理系统。这样一个系统,通常用于管理企业内部计算资源。

云计算是指通过网络访问物理/虚拟计算机并利用其计算资源的实践。通常来讲,云计算提供商以虚拟机的方式向用户提供计算资源。用户无须了解虚拟机背后实际的物理资源状况,只需了解自己所能够使用的计算资源配额。因此,虚拟化技术是云计算的基础。任何一个云计算管理平台,都是构建在虚拟化管理平台的基础之上的。如果某个虚拟化管理平台仅对某个集团内部提供服务,那么这个虚拟化管理平台也可以被称为“私有云”;如果某个虚拟化管理平台对公众提供服务,那么这个虚拟化管理平台也可以被称为“公有云”。服务对象的不同,对虚拟化管理平台的构架和功能提出了不同的需求。

私有云服务于集团内部的不同部门(或者应用),强调虚拟资源调度的灵活性。系统管理员需要为不同的部门(或者应用)定制不同的虚拟机,根据部门(或者应用)对计算资源的需求对分配给某些虚拟机的计算资源进行调整。从这个意义上来讲,OpenQRM、XenServer、Oracle VM、CloudStack和ConVirt比较适合提供私有云服务。

公有云服务于公众,强调虚拟资源的标准性。通过将计算资源切割成标准化的虚拟机配置(多个系列的产品,每个产品配置相同数量的CPU、内存、磁盘空间、网络流量配额),公有云提供商可以通过标准的服务合同(Service Level Agreement, SLA)以标准的价格出售计算资源。当用户对计算资源的需求出现改变的时候,用户只需要缩减或者是增加自己所使用的产品数量。由于Amazon EC2是目前比较成功的公有云提供商,大部分云管理平台都在某种程度上模仿Amazon EC2的构架。从这个意义上来讲,Eucalyptus、OpenNebula和OpenStack提供了与Amazon EC2兼容或者是类似的接口,比较适合提供公有云服务。

公有云和私有云之间的界限,就像“内部/外部”和“部门/合作伙伴”的概念一样,并不十分明显。根据项目需求的不同,可能会有不同的解释。

功能篇:

(1)支持的虚拟化技术

  Xen KVM XenServer / XCP VMWare LXC openVZ
Eucalyptus Y Y   Y    
OpenStack Y Y Y Y Y  
OpenNebula Y Y   Y    
OpenQRM Y Y Y Y Y Y
XenServer Y          
Oracle VM
Y          
CloudStack   Y Y Y    
ConVirt Y Y        

可以看出,Xen和KVM是目前获得最广泛的厂商虚拟化技术,紧随其后的是VMWare。需要注意的是,XenServer是对Xen的进一步封装,可以认为是一种新的虚拟化平台(用户在XenServer上不能直接执行Xend相关命令)。

(2)系统安装和配置

  前端 计算节点 备注
Eucalyptus 使用Ubuntu 10.04或者CentOS 5.5操作系统,通过apt-get install或者yum install的方式直接安装二进制包,构建一个包含CLC、 Walrus、SC、CC的前端。根据官方网站提供的文档进行操作,是比较容易实现的。 使用Ubuntu 10.04或者CentOS 5.5操作系统,通过apt-get install或者yum install的方式直接安装二进制包,构建一个提供NC服务的计算节点。根据官方网站提供的文档进行操作,是比较容易实现的。 Eucalyptus包含了一个dhcpd,如果配置不好的话,会造成一定的麻烦。另外,计算节点(NC)与集群控制器(CC)必须在一个C类子网里(例如,掩码为255.255.255.0)。如果NC和CC在一个超网里(例如,掩码为255.255.0.0),在注册服务的时候会出现一些问题。

 

 

OpenStack 在Ubuntu 10.04上利用官方网站提供的nova-install脚本进行安装,基本上没有遇到问题。

 

 

在Ubuntu 10.04上利用官方网站提供的nova-install脚本进行安装,基本上没有遇到问题。 对于一个简单的系统,安装配置比较简单。
OpenNebula 使用CentOS 5.5操作系统,配置好CentOS Karan源,启用kbs-CentOS-Testing条目。下载对应的rpm包,直接yum localinstall –nogpgcheck opennebula*.rpm,就可以直接完成安装过程。按照官方文档创建/srv/cloud/one和/srv/cloud/images目录,通过NFS共享/srv/cloud目录。创建cloud用户组和属于cloud用户组的oneadmin用户。 按照官方文档创建/srv/cloud/one和/srv/cloud/images目录,通过NFS共享/srv/cloud目录。创建cloud用户组和属于cloud用户组的oneadmin用户。

 

将前端服务器上oneadmin用户的ssh key拷贝到计算节点上oneadmin用户的authorized_keys中。这样前端服务器才可以通过SSH登陆到计算节点上。

在CentOS 5.5 x86_64上进行安装的时候,如果按照官方网站提供的文档进行操作,先配置好必要的软件依赖关系再安装opennebula,就会出现xmlrpc-c包版本不对的错误。

 

网络上可以搜索到一些安装配置方面的文档和教程,但是对于熟悉Linux但是不熟悉OpenNebula的开发人员来说,很难按照这些文档完成安装和配置过程。

 

OpenQRM 在Ubuntu 10.04上通过SVN下载OpenQRM源代码,进入源代码目录后依次执行make / make install / make start命令。按照官方文档的描述创建数据库,然后通过Web界面进行下一步的安装和配置。

 

 

计算节点配置好网桥和虚拟化支持之外不需要特别的安装和配置。在OpenQRM管理界面中启用相对应的插件即可通过插件对计算节点进行管理。 在Ubuntu 10.04上安装前端时,可能需要手工安装dhcp3-server。

 

启用插件管理虚拟资源的操作流程不够直观,并且缺乏详细的文档。

 

XenServer 前端为基于Windows操作系统的XenCenter。在Windows XP上可以安装,需要.NET Framework Update 2的支持。安转过程非常简单,基本上不需要配置。

 

 

从Citrix的网站下载ISO,刻盘直接安装在裸机上即可。计算节点安装完毕后,在XenCenter中把新增计算资源添加到资源池即可。 每一台XenServer服务器都需要安装从Citrix获得License,并且每年更新一次。
Oracle VM 在CentOS 5.5 x86_64上进行安装。将ISO文件mount起来后,执行runinstaller.sh即可。 从Oracle的网站下载ISO,刻盘直接安装在裸机上即可。计算节点安装完毕后,在Oracle VM Manager中把新增计算资源添加到资源池即可。 最好从Oracle的官方网站下载,不过速度很慢。通过迅雷等途径下载的文件,看起来似乎没有问题,但是ISO刻盘后在启动操作系统安装过程中会出现错误。

 

如果在Oracle VM Server上安装Oracle VM Manager,建议分区的时候把/ 分得大一点,不然的话会由于磁盘空间不够而无法安装Oracle VM Manager。

 

CloudStack 在CentOS 5.5和Ubuntu 10.4上,按照官方网站的安装文档顺序操作,基本没有问题。

 

 

计算节点上必须安装相应的Agent。 安装配置相对简单,但是在删除物理资源的时候存在较多的问题。
ConVirt 在CentOS 5.5和Ubuntu 10.4上,按照官方网站的安装文档顺序操作,基本没有问题。

 

在Ubuntu 10.04上安装企业版,需要手工sudo apt-get install libmysqlclient-dev。

在计算节点上的root用户必须允许管理节点上运行ConVirt服务的用户通过key auth方式登录。

 

 

安装配置相对简单。

不同的虚拟化管理软件有不同的设计理念,采用不同的系统构架,类似的概念也采用不同的术语来表述,其学习曲线也各不相同。对于大部分用户来说,虚拟化管理软件还是个新生事物。即使是粗略地尝试一下利用不同的虚拟化管理软件来安装、配置和测试一个最小规模的私有云系统,也需要花费不少的时间和精力。在这个过程当中,遇见各种各样的问题都在所难免。不过,也只有亲身经验过这些形形色色的问题,才能够切身体会不同虚拟化管理软件的优点和缺点,并且在分析、总结、归纳的基础上形成自己独特的观点。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章