cloudstack

来源:互联网 发布:微信公众平台域名 编辑:程序博客网 时间:2024/05/23 19:18

Cloudstack 部署架构笔记 一

CloudStack刚刚宣布加入Apache,关于Install Guide有人做了安装步骤的介绍,但对于3.0文档中文介绍还没有,本人阅读以后做了如下笔记,仅供参考抛砖引玉!

CloudStack可以加速高伸缩性的公共和私有云(IaaS)的部署、管理、配置。使用 CloudStack 作为基础,数据中心操作者可以快速方便的通过现存基础架构创建云服务(http://www.oschina.net/news/27568/engine-yard-joins-the-apache-cloudstack-project)。

 

CloudStack部署架构(Deployment Architecture)

Cloudstack安装包括两部分:Management Server 和 它所管理的 Cloudinfrastructure。当安装和管理一个Cloudstack 云, Management Server管理你规定在Management Server上的 host、存储设备、以及IP这些资源。

迷你安装包括:一台机器运行CloudStack ManagementServer,另外一台运行云基础设施(这种方式,一个简单的infrastructure 包含一个host 运行管理程序软件(hypervisor software))。

 

more full-featured installation consists of a highly-availablemulti-node Management Server installation and up to thousands of hosts usingany of several advanced networking setups. You can read about how to createsuch a setup in the CloudStack Advanced Installation Guide.




管理服务(Management Server)

提供个管理员和终端用户Web用户接口;

提供 Cloudstack 平台 APIs;

管理给特定 host 分配的 guest VMs;

管理给特定 account 分配的公共和私有IP;

管理分配的存储给 guest 作为虚拟盘;

管理快照、模板、ISO镜像,甚至可以跨数据中心复制他们;

为云提供一个单配置点



云基础设施(Cloud Infrastructure)

正如其名,the Management Server 是管理一个或多个zones (典型的例如一个数据中心),包含guest VMs 运行的host computers。

云基础设施概括如下:

Zone: 典型的例如一个zone相当于一个数据中心,一个Zone包括一个或多个pod,以及二级存储。(the Basic Installation, the zonewill be a simplified version)

Pod: 一个pod通常是一个包含一个layer-2 交换机和一个或多个clusters的机架。 (in the Basic Installation, the pod is simplified)

Cluster:一个包括一个或多个host,以及主存储。    

Host:一个clouter中有一个 compute 节点。实际的云服务以guset VMs的形式运行在hosts上。

Primary storage:主存储关联一个cluster,并且存储了cluster中运行在host 的所有VMs的磁盘卷轴(it stores the disk volumes for all the VMs running on hosts in thatcluster)。

Secondarystorage:二级存储存储关联一个Zone,它存储了模板、ISO镜像以及磁盘卷轴快照。 



网络(Network)

CloudStack 提供两种网络方案:简单网络(Basic Networking)和高级网络(Advanced Networking)。在简单安装中,我们采用简单网络。

简单网络

高级网络提供一个共享网络,通过layer-3 提供 Guest 隔离。layer-3,例如安全组 (IP资源过滤)。 所有guests 分配在zone 中共享一个网络。

高级网络 

We won't go into much detail about advancednetworking here, since we're doing a Basic Installation. Advanced networking isfor more sophisticated network topologies. This network model provides the most flexibility

今天就介绍到这里!



Cloud.com( 前身是VMOps) 提供了开源版本(GPL v3 许可证) 的CloudStack 基础设施管理产品:CloudStack Community Edition(CloudStack 社区版) 。CloudStack 同时支持VMware ESX 、Xen 、KVM 以及Hyper-V 。它提供了大量云计算界面管理工具,如VM 自助式供应,动态工作负荷管理,多租期等等。它同时还支持 Windows 和Linux 的来宾访问方式。更多信息请访问http://www.cloud.com/

安装:

安装服务端

CentOS5.5 192.168.1.201

1.     构建基本环境

Mysql 、Java 、Tomcat

需要设置JAVA_HOME 、TOMCAT_HOME

2.     下载源码

http://git.cloud.com/cgit/cloudstack-oss/

选择最新版本

3.     编译安装

以最新版本

http://git.cloud.com/cgit/cloudstack-oss/snapshot/cloudstack-oss-2.1.4.tar.gz

为例

 

# cd /root/

# tar –zxvf cloudstack-oss-2.1.4.tar.gz

# cd cd /root/cloudstack-oss-2.1.4

# ./waf configure --prefix=/usr/local/cloudstack

# ./waf build

# ./waf install

安装数据库

# cd /root/cloudstack-oss-2.1.4/setup/bindir

# ./cloud-setup-databases.in cloud kvm –deplay-as=root

这里假定Mysql 的root 账号没有密码,否则使用

./cloud-setup-databases.in cloud kvm –deplay-as=root:password

4.     启动服务端

# cd /root/cloudstack-oss-2.1.4

# ./waf run

访问http://192.168.1.201:8080/client 可以看到界面,

用户名admin ,密码password

 

 

 

 

安装客户端:

CentOS 192.168.1.209

1.     安装KVM

查看CPU 是否支持vm

# grep   vmx /proc/cpuinfo

如果支持,可以在输出中找到 vmx

如:

flags              : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx rdtscp lm constant_tsc ida nonstop_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 sse4_2 popcnt lahf_lm

Shell代码  收藏代码
  1. # 确定已在BIOS中打开CPU的VT支持,如果你的CPU是intel的话  
  2.   
  3. # yum install kvm  
  4.   
  5. # yum install virt-manager libvirt libvirt-python python-virtinst  
  6.   
  7. # modprobe kvm  
  8.   
  9. # modprobe kvm-intel  
 

 

2.     编译安装

同安装服务端

安装完成后

# cd /usr/local/cloudstack/etc/cloud/agent

编辑agent.properties ,根据实际情况进行修改

# cd /usr/local/cloudstack/libexec

# ./agent-runner

配置成功后可以使用指定的系统模板来创建虚拟机,cloudstack 将完成创建虚拟路由、分配IP 、创建虚拟机的功能,完成后可以在界面上直接进入终端

 

 

CloudStack3.0.2安装是非常简单容易的,安装的过程,所需要用到的命令,都已经被详细的记录在官方的 English 版Quick Install Guide中了。最简洁的安装配置应该是:RHEL6.2 64bit的管理服务器+XenServer6.0.2;原因主是在XenServer这部分非常简单,CloudStack和XenServer使用API通信,只需要在XenServer上安装一个附件包即可。 安装过程中最精彩,可能也是最复杂的部分是在最后的CloudStack初始化向导那里。这个向导特别具有开源软件的风范,我接触过的很多OSS都是通过这样一个友好的向导,帮你做初始化设置的。它复杂在于,CloudStack的一些基本的概念,如果你对这些概念不是很理解可以会有点费劲。不过凭着基本的云计算常识和理解你也不会配置错到哪去,如果那个参数输入的不正确,在初始化的过程中,它还能停止在那个部分,在给你改正参数的机会,这些细节做的还是非常到位,不是傻傻的把你输入的参数直接写库,让你回头troubleshooting都找不到北。这个版本的CloudStack感觉非常不错,需要尝试的朋友,可以马上行动起来了。



Xen Cloud Platform安装

我们好像在池塘的水底。从一个月亮走向另一个月亮。-王小波

xcp即是xen的平台虚拟化解决方案,作为Critix XenServer的开源实现。它的安装过程还是挺简单的,犹如安装linux系统。

xcp需要直接安装在裸机上,可以选择cd安装和pxe安装。

安装版本:xcp 1.1.0

安装方式:pxe安装

安装机器:具有pxe启动网卡的服务器

PXE环境服务器:CentOS 6.0

XCP Base Pack CD  下载:http://xen.org/download/xcp/index_1.1.0.html

参考文档:

http://wiki.openstack.org/XenServer/Install/PXE

http://xen.org/files/XenCloud/installation.pdf

具体的安装过程如下:

1.在另一台服务器上,部署pxe安装环境,涉及到DHCP服务,TFTP服务,HTTP服务,将这些服务安装上。

    dhcp服务给将pxe启动的机器提供ip地址,tftp服务使安装机器能够pxe启动,http存储安装系统的相关文件。

    安装tftp服务

复制代码
1 rpm -q syslinux //安装syslinux2 rpm -q tftp-server //确认tftp是否安装3 yum -y tftp-server //若没有,则安装4 5 编辑/etc/xinetd.d/tftp6 disable = no //将yes改为no7 8 service xinetd restart //重启服务,管理tftp
复制代码

   安装dhcp服务

  

复制代码
 1 yum -y dhcp // 安装dhcp服务 2 开始配置dhcp服务,编辑文件/etc/dhcp/dhcpd.conf  3 allow bootp; 4  5 use-host-decl-names true; 6 option domain-name "Network 1"; 7 option domain-name-servers 192.168.0.1; 8 subnet 192.168.0.0 netmask 255.255.255.0 { 9         range 192.168.0.100 192.168.0.200;10         filename "pxelinux.0";11 }
12 service dhcpd restart //启动服务
复制代码

    安装http服务

1 yum -y httpd2 3 service httpd restart

2.pxe环境配好后,开始准备xcp安装

复制代码
 1 mkdir xenserver  //在/tftpboot 创建文件夹 2  3 cd /usr/lib/syslinux //进入这个目录 4  5 将 mboot.c32 pxelinux.0 这两个文件拷贝到tftpboot目录 6  7 将下载的xcp盘中的install.img, vmlinuz,xen.gz 拷贝到 /tftpboot/xenserver目录下 8  9 在tftpoot目录,创建文件夹,pxelinux.cfg,在这个目录中,创建文件default10 在default文件中添加如下内容:11 default xenserver-auto12 label xenserver-auto13 kernel mboot.c3214 append /tftpboot/xenserver/xen.gz dom0_mem=752M com1=115200,8n1 \15 console=com1,tty --- /tftpboot/xenserver/vmlinuz \16 xencons=hvc console=hvc0 console=tty0 \17 answerfile=http://pxehost.example.com/answerfile \18 install --- /tftpboot/xenserver/install.img
复制代码

 开始配置http访问的answerfile,answerfile文件放在/var/www/html目录下,在个文件在上面的default中提及

复制代码
 1 <?xml version="1.0"?> 2 <installation srtype="ext"> 3 <primary-disk>sda</primary-disk> 4 <keymap>us</keymap> 5 <root-password>在此处填安装后系统的密码</root-password>                       6 <source type="url">http://192.168.0.1/xenserver/</source> 7 <ntp-server>IP address of my ntp server</ntp-server>        8 <admin-interface name="eth0" proto="dhcp" /> 9 <timezone>Asia/Shanghai</timezone>10 </installation>
复制代码

在这个目下创建xenserver,将安装盘中的如下文件拷到该目录下

1 cp -r packages* /var/www/html/xenserver2 cp XS-REPOSITORY-LIST /var/www/html/xenserver

 

3.重启安装xcp的服务器,开始pxe安装。

4.安装结果如下:

体验xcp的旅程就开始了。



但那时非常快乐,你突然到了一个完全自由的地方,无法无天,毫无限制,不用在意那些老掉牙的传统观念。-冯仑

安装好xcp后,可以进入CLI环境,用命令对进行虚拟机的创建和管理。可以参考官方的指导文档。

http://www.xen.org/files/XenCloud/guest.pdf

1. 虚拟机的网络安装

其中有个迅速安装Debian虚拟机的例子,具体的操作过程如下:

1 xe vm-install template=Debian\ Lenny\ 5.0 new-name-label=<lenny-vm> //new-name-label 设置虚拟机的名字,返回虚拟机的uuid
2 xe vm-param-set uuid=<UUID> other-config:install-repository=http://ftp.debian.org/debian //uuid为虚拟机的uuid,other-config,指定 了安装路径3 xe vm-start uuid=<UUID> //开始启动虚拟机

这个是虚拟机的安装方式之一,网络安装,简洁方便。

我在安装过程中,遇到如下的问题,执行完第三条指令后,返回一个错误结果

1 Error code: INVALID_SOURCE2 Error parameters: Unable to access a required file in the specifiedrepository:http://ftp.debian.org/dists/lenny/main/installer-i386/current/images/netboot/xen/vmlinuz.,,

参考这个帖子 http://www.gossamer-threads.com/lists/xen/api/247871 还是没有解决问题,依然出现同样的错误,但直接在浏览器中访问这个路径可以正常打开。

 

2.在xcp系统中,虚拟机的创建都是从模板开始的,xcp提供了丰富的模板,从Linux到windows等等操作系统,xcp提供的配置的模板都针对特定的OS做了参数设置,以达到OS最优的性能。当然,这些模板参数也可以通过命令来进行调整。在具体涉及到各个模板参数的修改时,还是通过一个直观的虚拟机实例来了解。前面提到了网络安装,方式就这样,但不知什么原因导致出现上面的问题。现在介绍另一种安装方式。

在xcp上,根据模板,用CLI使用iso文件来安装CentOS5.1 系统。

1.在XCP主机本地上建立一个iso库

1 mkdir -p /var/opt/xen/iso_import //建立目录

2.将CentOS5.1 的iso文件拷贝到刚创建的iso_import目录下。

注意:由于我们是直接将iso文件拷贝到xcp主机上,主机默认的分区方式,只跟/ 目录创建了5G的空间,随便一个iso文件就可能导致主机空间使用完。当然,可以有多种方式解决这个问题,我们可以再相关 目录下挂载一个逻辑卷扩大空间,也可以选择iso库的其他支持方式,这而只选择了最简单的一种。

3.创建一个iso存储库

1 xe sr-create name-label=isoimport type=iso device-config:location=/var/opt/xen/iso_import/ device-config:legacy_mode=true content-type=iso                                     

返回的uuid为:a1491952-932d-a450-52d4-472266c69572

其中sr指的存储库,xcp的存储概念会后续谈到。该命令返回这个sr的uuid号。

 4.扫描下该sr库

1 xe sr-scan uuid=a1491952-932d-a450-52d4-472266c69572 //UUID是上条命令返回的结果

5.确认下是不是能找到加入的iso文件

1 xe cd-list

结果如下:

其中name-label 为 CentOS-5.1-x86_64-bin-DVD.iso 就是刚才拷贝进来的。

6.开始虚拟机的安装了,创建虚拟机

1 xe vm-install template=CentOS\ 5\ \(64-bit\) new-name-label=CentOSVM

返回的UUID为:11502db4-a460-9526-8397-32ea95e7ebfd

其中template_name为系统中存在的一个模板,该命令返回虚拟机的uuid

7.找到刚创建的虚拟机根磁盘的UUID

1 xe vbd-list vm-uuid=11502db4-a460-9526-8397-32ea95e7ebfd userdevice=0 params=uuid --minimal

 该命令返回根磁盘的UUID号:a06d6f53-06a4-5abb-ad00-9966309e884b

8.使用返回的 UUID,将根磁盘设置为不可引导:

1 xe vbd-param-set uuida06d6f53-06a4-5abb-ad00-9966309e884b bootable=false

9.然后,向该虚拟机添加cd-rom  

1 xe vm-cd-add vm=CentOSVM cd-name=CentOS-5.1-x86_64-bin-DVD.iso device=3

其中vm为虚拟机的名称,cd-name为之前使用xe cd-list显示的cd-name

10.获取与新虚拟 CD 驱动器对应的 VBD 的 UUID

1 xe vbd-list vm-uuid=11502db4-a460-9526-8397-32ea95e7ebfd type=CD params=uuid --minimal

返回的UUID:f723fa57-2061-4bf8-1dc0-d0021eb75ef9

11.然后把cdrom设置为启动的

1 xe vbd-param-set uuid=f723fa57-2061-4bf8-1dc0-d0021eb75ef9 bootable=true

12.配置vm,使其从cd启动

1 xe vm-param-set uuid=11502db4-a460-9526-8397-32ea95e7ebfd other-config:install-repository=cdrom

13.为该虚拟机配置网络

1 xe vif-create vm-uuid=11502db4-a460-9526-8397-32ea95e7ebfd network-uuid=7f0ab74c-bfb0-26be-72dc-c3565c9bf4ca mac=random device=0

其中network-uuid可以通过下面的命令查看到:

xe network-list

会返回如下的结果:

xenbr0对应网卡eth0,xenbr1对应网卡eth1.

我们可以选择为该vm创建的虚拟网卡连接到具体的物理网卡上。如果缺少这一步,安装好系统后,便会发现系统没有网卡,不能上网。

14.启动虚拟机

1 xe vm-start uuid=11502db4-a460-9526-8397-32ea95e7ebfd

至此,虚拟机正式启动,就如安装一个普通的linux系统一样。



一个人活在世上就是为了忍受一切摧残,想通了这点,任何事情都能泰然处之。--王小波

   在上一篇中,已经详细介绍了如何安装CentOS5.1 系统,但启动虚拟机后,该如何去操作已经创建的虚拟机了。XenServer提供了XenCenter工具,能够

方便快捷的管理虚拟平台,类似于XenServer 有开源的Xen Cloud Platform一样,XenCenter也有对应的开源工具,OpenXenCenter。前者只能安装在windows系统下,后者则是安装在Linux系统的图形工具。当然除了这两个工具之外,还有不少开源工具,轻量级的Xen Cloud Control System ,它完全基于web方式,可以通过浏览器,手机等来管理系统。还有Xen Orchestra,Xen Web manage等等。

   XenCenter也可以管理开源的XCP。由于安装的XCP版本为1.1.0,经过试验,XenCenter需要是版本6.0及以上的才可以。

   在windows下下载XenCenter6.0,再如普通的windows程序安装,虽说可以免费使用,但是还是需要去注册,否则只有免费的三十天使用期限。

   安装成功的界面如下。

    点击添加新服务器。如上图,添加XCP服务的IP地址,用户名和密码,即可连接到XCP。

    再上图左侧显示了XCP主机上已经安装的虚拟机。

如上图,有个控制台操作已经安装的虚拟机了。

进入虚拟机系统之后,还需要配置IP地址才能够使虚拟机上网。上一篇文章已经提到,将一个虚拟网卡指定到一个物理网卡,这样就可以使虚拟机通过桥接模式连接到外网了,但是还需要将虚拟的ip地址设置和xcp主机同一网段才行。

 关于安装OpenXenCenter,可以参考如下的链接:

http://sourceforge.net/apps/trac/openxenmanager/wiki/GettingStarted。



有人说,黄金时代的真正寓意在于,有两个人终于找到并确立了终身的伟大友谊,无论人世如何摧残也无法改变,而世界上无数的人一生却都活在寂寞或虚伪之中。

     在第二篇中提到,刚开始创建虚拟机时,需要创建一个ISO存储库,用来存储iso镜像文件,但由于在安装XCP时,默认的分配给'/'目录的就只有5G的存储空间,指定的目录很快就被写满。面对这个问题,可以在这个目前挂载新的分区,扩充空间,还可以搭建NFS iso存储库。

     下面将详细描述nfs存储库的搭建方式。

      XenServer 定义了一个称为SR存储库的容器,用来描述存储虚拟磁盘映像(VDI)的特定存储目标。其中VDI是包含虚拟磁盘内容的磁盘抽象。XenServer SR 内置了对本地连接的IDE、SATA、SCSI 和 SAS 驱动器和通过光纤通道远程连接的 iSCSI、NFS、SAS 的支持,因而非常灵活。每台XenServer主机可以同时支持多个SR和不同类型的SR。

     通过xe sr-list 命令可以查看系统下的SR库。

如上图,存在三种不同的存储库,其类型分别是:iso,udev,ext.

其中ISO 类型存储库处理以 ISO 格式文件存储的 CD 映像。此 SR 类型在创建共享 ISO 库时十分有用。对于用于存储 ISO 库的存储库,必须将

content-type 参数设置为 ISO。

第二篇已经提到创建本地ISO存储库的方法,如下介绍搭建NFS iso存储库的方法。

首先在另一台服务器上安装nfs服务,其ip地址为10.10.93.138。

1 yum install -y nfs-utils

再编辑配置配置文件:/etc/exports,例如将/home/choudan目录共享出去。可以写成如下:

1 /home/choudan 10.10.93.138/255.255.0.0(rw,sync)

 第一个为共享的目录,第二为共享的ip地址,后面的默认掩码,括号内的为读写权限,同步更新。

最后一步是,开启nfs服务:

1 service nfs restart

现在可以在xcp主机上创建iso存储库了。

首先在xcp主机上开启服务portmap。

在cli模式下,输入如下命令:

1 xe sr-create host-uuid=d4fb7cd4-14d9-4f3a-8527-c9cf2821d384 content-type=iso name-label=NFS SR shared=true device-config:server=10.10.93.138 device-config:serverpath=/home/choudan type=iso

如果正确,则返回创建成功的iso 存储库的uuid。

若遇到如下的问题:

Error code: SR_BACKEND_FAILURE_88
Error parameters: , NFS SR creation error,opterr=remote directory creation error is 13, 

这个问题是由写权限不够导致的,需要修改nfs服务器上共享的目录的属性,为用户增加写权限,则可以搞定了。

上面的步骤只是在nfs上安装iso类型的存储库,如果是要将nfs作为虚拟机可以使用的存储空间,则需要创建nfs存储库,它的创建方式也很简单,命令如下:

1 xe sr-create host-uuid=d4fb7cd4-14d9-4f3a-8527-c9cf2821d384 content-type=user name-label=NFS SR shared=true device-config:location=10.10.93.138:/home/choudan device-config:type=nfs type=nfs

则可以创建一个nfs存储库了。



4月5日,Citrix(思杰公司)宣布所属CloudStack开源软件将加入Apache软件基金会(Apache Found),成为行业中第一个加入该基金会的云基础设施解决方案,无疑这是一个明智之举,它为CloudStack开源平台以及合作伙伴的选择,带了更多更具有想象空间的可能性。Coudave的编辑和分析师Krishnan Subramanian在其评论文章中指出:“加入Apache软件基金会,能够帮助CloudStack吸引更多合作伙伴来加入其可赢利开源项目,鼓励CloudStack开源软件被更多伙伴采纳,并迅速成长为富有强大竞争力的平台。”

 Citrix公司声称,此举目的是将CloudStack提升为一个完全开源的Apache项目,进一步加速CloudStack的发展,以提供一个连接到不同的云基础设施上的强大的、hypervisor无关的层,Engine Yard(PaaS供应商)也将通过在CloudStack上运行PaaS以及提供专业知识和代码,来参与到Apache CloudStack项目中。Citrix 公司同时还宣布,CloudStack将兼容亚马逊(AWS)API接口,允许跨CloudStack和亚马逊平台实现负载兼容。并为开发者提供了一组工具和API,允许他们更容易地连接和管理云基础设施。这一发布表明,Citrix已将CloudStack变成一个“完全开源的apache项目”,在apache 2.0许可下获得发布, Apache软件基金会也会为其增加财政赞助和工程技术支持。

 该事件很快在云计算行业内迅速传播,很多人将Citrix此举看作是开源软件云战争中打响的第一枪,著名市场研究公司Gartner的分析师利迪娅·梁(Lydia Leong)还在自己的博客中,将Citrix的消息称作一个“爆炸性事件”。OpenStack高管也第一时间对Citrix这一动作进行了指责。OpenStack运动共同创始人和Piston云计算创始人乔舒亚·麦肯蒂(Joshua McKenty)称,Citrix的举措是一种“营销游戏”,同时还批露,自从Citrix 2011年用2亿美元收购开发CloudStack平台的Cloud.com公司以来,Citrix一直在利用它给OpenStack施加各种的压力。

 值得一提的是,如果我们顺道回顾一下,在Citrix完成收购Cloud.com并将CloudStack 100%开源,OpenStack阵营的反应远没有这么激烈。例如那时OpenStack平台的主要拥有者,Rackspace公司Cloud Builders总经理Jim Curry就曾表态,Citrix一直是开发OpenStack的领导者,亦是Project Olympus创办及开发的杰出团队,把开放云运算规模技术带入市场。而随着增添Cloud.com团队,Citrix将进一步作出对OpenStack的承诺 ,确保广泛向不同的客户提供OpenStack平台和API。

 如今CloudStack加入Apache软件基金会,对Openstack的地位构成巨大挑战,谁引领未来云开源平台的标准,战争已经正式打响。这场战争的主要对手将是Cloudstack 和Openstack,与明显、直接的争夺不同,这是一场面向未来市场之战,是速度之战也是市场影响力和行业标准之战,这场战争或许将决定云开源平台的未来归属,而这场逐鹿之战结果将会如何,我们一道来分析几个关键性的因素:

 1、用户体验:文档成熟和安装容易度

 “事实对绝大部分用户来说,虚拟化管理软件还是个新生事物。即使是粗略地尝试一下利用不同的虚拟化管理软件来安装、配置和测试一个最小规模的私有云系统,也需要花费不少的时间和精力。“而根据众多实际使用OpenStack的用户反映,目前OpenStack软件文档依旧模糊而不成熟,基本上不可能初次尝试就能实现安装,更不用说配置和部署系统。与之对应,在界面大气,友好和安装使用方面,Cloudstack具有显著的优势。“官方文档非常完备,按照文档操作至少能够顺利地完成安装和配置过程。而且,在网络上可以方便就搜索到一些可操作的安装和配置文档。”根据使用刚刚发布的CloudStack 3的Beta版的工程师测试,如果使用预先制作好的Templete,5分钟左右就可以安装好了一台ubuntu Server。而且,CloudStack用户界面以AJAX方式设计,用户可以透过GUI界面工作,也使得其更加直观和容易上手。

 2、社区和资源支持:独立社区,以及服务商实力

“开源的强大在于它能够将社区里的资源进行共享、用户进行协同”。一般来说,开放的云计算必须是基于一个开源的代码,且由一个独立的社区提供支持,同时软件社区还必须是由多个提供商一起维护。对于开源云平台,存在最大的缺陷就是没有足够的支持资源,更麻烦的是你想解决这些问题时候却无人可以求助。尽管像有戴尔、Citrix(曾经是主要的)和惠普这样的厂商加盟,而且在这些重要伙伴们的要求下,Rackspace已将该项目的控制权交给了OpenStack基金会,但是正如行业人士所透露的,OpenStack到目前为止依然还在研发阶段,尚未进入生产阶段。一位业内资深分析人士提出:“如果说开源项目本身只能间接地通过更高价值产品来赚钱。那么由单一厂商控制的开源项目就会比一个由基金会控制的项目成功的概率更大。”评论指出:“尽管各家开源基金会确实很了不起,在开源项目中发挥着极有价值的作用。然而,为数众多厂商加之不同动机会让基金会在满足项目需求和厂商利益时左右为难。OpenStack社区所面向的就是一个不能直接货币化的软件堆栈,戴尔、惠普和Rackspace等厂商都是这么看的。这些厂商并非直接利用OpenStack来赚钱,而是通过它来构建一个具备更高价值的产品。“他们举例说,像戴尔和惠普就更希望销售“云平台就绪的”硬件系统而不是OpenStack软件产品本身。也许,这种局面相对于有Citrix直接控制,以及有着像Tcloud这样的服务商鼎助的CloudStack更为有利,它能让CloudStack开源平台成为具有真实价值的云平台,而OpenStack则可能由于成员间的相互竞争而最终落了下风。

3、量产和商业化的能力

尽管从市场影响和宣传力度上,OpenStack要远远领先于其他开源的平台软件,但一些业内人士提出,比较起CloudStack或者Eucalyptus,OpenStack更像是一个黑客,或者玩家们的产品,其管理和控制界面也不够完善,还很难被称为成熟的产品化的IT产品。虽然说OpenStack也已经宣布加强了其产品的企业级性能,但是很多产业观察者都认为,这项技术在大型部门之间能够得到广泛使用还有待观察。他们指出,这项技术至少在未来一两年内还没有为在生产环境中部署做好准备。“我同使用它的人进行了对话,但是大多数人告诉我,他们认为这项技术距离在生产环境中使用要18个月。”Bill Claybrook,New River市场研究的总裁这样说。“分析人士认为OpenStack还没有为严肃的云计算应用做好准备。”尽管其已经声名赫赫,它的市场影响力和宣传的声音目前要远远提前和强大于产品本身。这对OpenStack来说并不是好消费,它将破坏其生态系统正面的反馈,为未来发展之路蒙上阴影。

4、达到临界点的,足够的用户数

有数据表明,自2011年思杰收购Cloud.com以来,CloudStack.org开源社区的用户参与度已经增长了4倍,全球25,000多家云计算提供商已经签约加盟,并成为CloudStack.org社区的活跃成员。在过去的一年中,开源CloudStack产品已被下载了6万多次,而且目前每月下载量以平均5倍的速度快速增长。这些飞速增长的数据无疑大大增强了Citrix对于CloudStack平台的信心。截至目前CloudStack作为成功的公共云平台,已经帮助至少85个大规模生产性云平台实现了10亿美元以上的运营收入,其典型的客户包括韩国、澳大利亚、印度的电信运营商。不久前在CloudStack 3的产品发布会上,Citrix还曾经展示了一个有着20多家公司支持Citrix的幻灯片。这些公司包括瞻博网络、NetApp、RightScale、Brocade、阿尔卡特-朗讯、Engine Yard、Zenoss、英国电信、Tata、Go Daddy和Softlayer。而作为由美国国家航空航天局(NASA)和Rackspace合作研发的云端运算软件,从问世以来到现在,,OpenStack也已经吸引了超过150家公司和2000个开发者。OpenStack的知名支持者包括有惠普,戴尔、思科和Internap等,另据GigaOm报道了,IBM和Red Hat很可能将加入OpenStack支持者行列。但是就实际部署和成功应用,这些公布的数字,尤其是采纳者数量和部署案例,双方都还非常薄弱,最激烈的竞争将在未来一段时间展开,直到一方达到特定数量(爆发节点),迅速完善产品和服务支持,取得远远领先竞争对手的市场地位,并据此也能够影响和实现制订标准的目的。

5、影响标准制订的能力(合法性)

这场技术平台之争很可能会是一场“赢家通吃”的战争,胜利给对手不会留下太大的空间,除了采用平台的部署客户争取,就是如何影响和时间完成标准的制订。谁拥有了标准,在云供应商中应用的兼容工具和服务也变得更容易,从而简化了在云与云之间(特别是从私有云移向公共云)移动数据和应用的过程。分析人士认为,这种通过开源云平台操作系统带来巨大的网络影响,合法性以及可信度驱动的用户安装基础,可以提升应用数量和支持资源,这反过来又促进行业合法性和使用者的信心,这种积极的反馈影响,给予胜出的平台压倒性的优势,让失利方几乎没有生存的空间。目前,无论CloudStack还是OpenStack都试图主导制定开源平台的云计算标准,这是目前行业所缺失的,也是实现市场霸主地位的必由之路。

最后我们还想要说明的,OpenStack软件来自Cloud.com,是一项有华人主导开发的技术平台,除了更好的成熟性和应用支撑之外,也是国内采用时一个重要的得分项。据悉,原Cloud.com行政总裁梁胜(Sheng Liang)现还继续领导着Citrix公司CloudStack产品线的设计、架构和技术。此外,Cloud.com和Citrix都曾是OpenStack阵营的中坚成员,尽管这样说讽刺意味实足,但无疑这会让这场斗争胜利的天平又向CloudStack倾斜许多。(中云网)

资料1:关于CloudStack

Citrix CloudStack是思杰云计算产品线的重要组成部分,其解决方案能够帮助用户更轻松地建立新的云平台,连接到现有云服务,并以最安全、最高性能和最可靠的方式交付任何云服务。自推出以来,CloudStack就迅速成为领先的商业开源云平台,用于建设、管理和交付高度可扩展的“基础设施即服务”(IaaS)云系统,其用户范围也非常广泛,例如Datapipe、Edmunds.com、IDC Frontier、诺基亚研究院和Zynga等。CloudStack旨在确保IT组织得以将生产性云平台建立在经济、弹性且可扩展的平台之上。这并不是一个附加了“类似云”管理层的传统企业级服务器虚拟化平台。相反,它是一个全新设计的开放型多虚拟机管理程序平台,能够帮助用户在构建公共云和私有云时采用全球最具创新的云平台的构建方式--简单、自动、弹性、可扩展和高效率。CloudStack 3是Citrix在2011年7月收购Cloud.com后,首个主要版本更新,它改良了用户界面和用户体验,更追加了对OpenStack储存系统Swift的支援,对Citrix XenServer 6的支援亦有所增强,并可配合Citrix NetScaler使用。CloudStack 3还拥有的一些特点:对各种虚拟机管理程序一视同仁,支持KVM、OVM、vSphere和Xen等领先平台,并将经过云优化的Citrix XenServer 6版本作为核心标配功能包含在其中。另外,CloudStack还将对微软Hyper-V提供支持。

资料2:关于OpenStack

OpenStack是一个NASA(美国国家航空航天局)和Rackspace合作研发的云端运算‎软件,以Apache许可证授权,并且是一个自由软件和开放源代码项目。OpenStack是IaaS(基础设施即服务)‎软件,让任何人都可以自行建立和提供云端运算服务。此外,OpenStack也用作建立防火墙内的“私有云”(Private Cloud),提供机构或企业内各部门共享资源。OpenStack使用者包括美国国家航空航天局等。微软在2010年10月表示支持OpenStack与Windows Server 2008 R2的整合。2011年2月,思科系统正式加入OpenStack项目,重点研制OpenStack的网络服务。Ubuntu未来在堆栈方面的云网络化方案。

资料3:关于Apache许可协议

有统计数据显示,当今世界上许多开源项目都在从有约束性的许可协议(比如GPL协议)阵营中转投宽松的许可协议(如Apache许可协议)阵营。在CloudStack 100%开源后,开始也是通过GNU GPL v3 license许可协议发布,源代码可以在cloudstack.org上下载。根据GPL协议的规定:如果你完善了某个自由软件并将它的代码应用在一个大型软件产品中,那么你需要将你的这个产品再共享给自由软件用户。而Apache许可证不要求使用者必须将软件再次共享给大众。

许多公司都担心GPL协议,担心GPL协议会让他们公布自己的私有代码。但是在Apache许可协议内,这种担心就没有必要。对于很多公司和开发者来说,这不仅仅是鼓励他们使用开源工具,也是非常有利于开源软件服务公司,如Cloudera从自由软件中赚钱的。近年来,很多开源项目都姿态鲜明地选择了Apache许可协议,包括云计算平台如Hadoop、OpenStack、Cassandra以及CloudFoundry。许多开源运动关注者——包括长期关注的专家Matt Asay和一名来自RedMonk对开发有兴趣的研究员Steven O'Grady,都认为这样的改变将会给开源世界带来更好的发展,会有更多的人加入开源阵营。

这场运动最大的力量来自于像Facebook和Twitter这样的互联网巨头,随着这些巨头以及他们的项目源源不断加入到支持宽松许可协议的阵营中来,产生了一大批利用开源获利的公司。例如,Facebook的数据库Cassandra催生了Texas-based DataStax,Hadoop催生的不仅仅有Cloudera还有雅虎的子公司Hortonworks,Rackspace围绕OpenStack建立了自己的服务部门等


原创粉丝点击