用 CloudStack 配置和管理一个简单云Word下载.docx
- 文档编号:17835339
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:22
- 大小:289.69KB
用 CloudStack 配置和管理一个简单云Word下载.docx
《用 CloudStack 配置和管理一个简单云Word下载.docx》由会员分享,可在线阅读,更多相关《用 CloudStack 配置和管理一个简单云Word下载.docx(22页珍藏版)》请在冰豆网上搜索。
这项产品开源的举措,引起了市场对IaaS发展路线的一些争议,例如它与另外一个开源产品OpenStack的竞争与合作关系?
OpenStack是由Rackspace和NASA主导开发的一个IaaS,它拥有更大的用户群,包括HP,IBM,Dell和Redhat等大公司。
表1列出了CloudStack与OpenStack的一些对比。
表1.CloudStack与OpenStack的对比
CloudStack
OpenStack
License
Apache2.0授权协议,可免费用于商业模式
支持的Hypervisors
KVM,XEN,OracleVM,vSphere和BareMetal
KVM,XEN,(有限支持Hyper-V,ESX,PowerVM)
支持的NetworkingModel
OpenFlow,VLAN和Flatnetworks
VLAN,Flat,FlatDHCP
支持的Storage
NFS,ClusterLVM,RadosBlockDevice(Ceph),LocalStorage
iSCSI,Ceph,NFS,LocalStorage和Swift(对象存储)
客户群
不到60家,包括诺基亚,Zynga,日本电报电话公司,塔塔,阿尔卡特
160家左右,包括了NASA,Rackspace,HP,红帽,Piston
开发语言
Java为主
Python为主
兼容亚马逊EC2API
是
附:
比较数据截止至2012年中,对应的软件版本为CloudStack3和OpenStackEssex。
可以认为,在市场上CloudStack和OpenStack这两个IaaS平台存在不同的功能、客户和发展路线,前者作为曾经的商业软件,已经被证明为可以可靠的用于生产系统;
而后者,虽则目前缺少广泛的真实用户,却拥有更多的大公司支持。
这是它们显著的不同。
尽管如此,但从技术而言,它们背后的源代码贡献者并不是一定不同的,经常有来自同一家公司的开发人员为这两个开源项目提交代码。
从这个角度说,两个平台在某一天的合并也不会令人惊奇。
还存在其它众多的IaaS产品(例如Eucalyptus,Nebula等),可以在文末的
参考资源中找到一些介绍。
总体而言,这些产品当中CloudStack和OpenStack是特性最为相近、也是最引起争论的,参考资源中的一篇文章提及到了最近发生的一个有趣争论。
回页首
CloudStack架构图
CloudStack采用了典型的分层结构:
客户端、核心引擎、以及资源层。
它面向各类型的客户提供了不同的访问方式:
WebConsole、CommandShell和WebServiceAPI。
通过它们,用户可以管理使用在其底层的计算资源(又分为主机、网络和存储),完成诸如在主机上分配虚拟机,配给虚拟磁盘等功能。
见图1。
图1.系统架构图
虚拟机如果使用Xen和KVM,需要安装CloudStackAgent来支持其与管理服务器的交互。
而管理服务器和XenServer交互则是靠XAPI,和vCenter、ESX交互靠HTTP。
当部署CloudStack时,需要了解它的层次结构和存储管理,见图2。
图2.部署图
Zone:
Zone对应于现实中的一个数据中心,它是CloudStack中最大的一个单元。
Pod:
Pod对应着一个机架。
同一个pod中的机器在同一个子网(网段)中。
Cluster:
Cluster是多个主机组成的一个集群。
同一个cluster中的主机有相同的硬件,相同的Hypervisor,和共用同样的存储。
同一个cluster中的虚拟机,可以实现无中断服务地从一个主机迁移到另外一个上。
Host:
Host就是运行虚拟机(VM)的主机。
即从包含关系上来说,一个zone包含多个pod,一个pod包含多个cluster,一个cluster包含多个host。
CloudStack中存在两种存储:
Primarystorage:
一级存储与cluster关联,它为该cluster中的主机的全部虚拟机提供磁盘卷。
一个cluster至少有一个一级存储,且在部署时位置要临近主机以提供高性能。
Secondarystorage:
二级存储与zone关联,它存储模板文件,ISO镜像和磁盘卷快照。
∙模板:
可以启动虚拟机的操作系统镜像,也包括了诸如已安装应用的其余配置信息。
∙ISO镜像:
包含操作系统数据或启动媒质的磁盘镜像。
∙磁盘卷快照:
虚拟机数据的已储存副本,能用于数据恢复或者创建新模板。
安装CloudStack
环境准备
一个完整的CloudStack环境包括两部分:
∙管理服务器(ManagementServer)
∙虚拟机管理器(Hypervisor)
通常对CloudStack的hypervisor也有另外的称呼,例如主机(host),代理(agent)等。
本文统一为hypervisor。
在本文的安装步骤中,所要配置的为一个简单网络,即所有被管理的虚拟机都位于一个网段。
相应的硬件如下:
表2.软硬件环境
ManagementServer
Hypervisor
IP
192.168.1.4
192.168.1.5
HostName
cloud-server.squirrel.org
cloud-agent.squirrel.org
CPU
i3
Memory
6G
HardDisk
500G
200G
OS
CentOS6.264-bit
本次安装中CloudStack的版本为:
RedHatEnterprise
Linux/CentOS6.2
Hypervisor为KVM。
管理服务器需要更多的存储空间是因为NFS也建在该机上。
更多的详细安装需求可以参阅CloudStack官网的指南。
这里需要着重列出的问题为:
Q1:
官网的安装要求中哪些软硬件因素容易导致CloudStack的安装失败?
∙Hypervisor所在的主机,要求CPU和主板支持硬件虚拟化(本人的机器是DELL台式机,需要在主板的BIOS中设置Intel-VT为enable)。
∙操作系统必须是64位的,推荐centos6.2(当前最新的CloudStack3支持6.2)。
如果使用5.5或者6.0版本,一定要选择匹配的CloudStack安装包。
Ubuntu目前只有运行在10.04平台上的发行版,且该release不是最新的CloudStack。
此处强烈建议新用户给ManagmentServer和Hypervisor所在的两台主机选择一样的操作系统(推荐centos/redhat)和一样版本的CloudStack软件,同时注意OS一定是要被官方release宣称支持,这样能避免走不少弯路。
例如确实也存在有人能成功在Ubuntu12.04或centos6.3(官方2012年9月尚未宣称支持)上部署CloudStack,但付出精力较大。
∙Hypervisor的主机不能有任何正在运行的虚拟机,否则在后续的addhost操作中会遇到失败。
最佳的建议是hypervisor主机上的操作系统为全新安装,且没有部署任何其余虚拟机。
∙无论是管理服务器还是hypervisor所在主机,都需要以root登录进行CloudStack安装。
∙ManagementServer和Hypervisor主机必须是有独立静态IP的主机。
否则后续安装因为IP地址变化会导致service状态异常。
CentOS安装后的默认网络配置为DHCP,需修改为手工分配IP,这步操作要在cloud-server和cloud-agent两台机器都进行:
点击桌面右上角的网络图标,编辑网络:
图3
Method原来为“DHCP”,改成设置为“Manual”,然后输入静态IP地址、掩码、网关、DNS服务器信息。
图4
安装ManagementServer
1.以root身份登录cloud-server.squirrel.org。
2.运行“hostname–fqdn”,检查其返回的格式必须是包括域名的全称(例如cloud-server.squirrel.org)。
Hostname最好是在安装centos时即设置好,否则需要在/etc/hosts和/etc/sysconfig/network两处文件中同时修改才可以永久生效。
3.设置SELinux。
在/etc/selinux/config中修改“SELINUX=enforcing”为“SELINUX=permissive”,并在shell中运行“setenforcepermissive”令其立即生效。
4.进入下载并解压好的CloudStack安装目录(我这里是/home/squirrel/mybox/cloud/CloudStack-oss-3.0.2-1-rhel6.2),运行命令“./install.sh”,选择“M”安装ManagementServer软件。
5.运行下面命令启动NFS和rpcbind服务,并设置为开机运行:
#servicerpcbindstart
#servicenfsstart
#chkconfignfson
#chkconfigrpcbindon
6.再次运行命令“./install.sh”,选择“D”安装数据库mysql。
7.编辑/etc/f,在[mysqld]下面加入内容:
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format='
ROW'
8.重启数据库后,设置root用户密码。
#servicemysqldrestart
#mysql-uroot
mysql>
SETPASSWORD=PASSWORD('
<
password>
'
);
exit
9.运行CloudStack脚本让其自动配置数据库:
#cloud-setup-databasescloud:
dbpassword>
@localhost\
--deploy-as=root:
即表示以root用户身份来生成数据库,该数据库属于新建的cloud用户(密码dbpassword可以留空)。
10.最后,下面的命令将完成对操作系统iptables、sudoers的设置(CloudStack本身有安全性方面的要求,不是无限暴露给网络,同时又需要一些管理权限来运行自身服务,因此要做这两项的设置),并启动管理服务器:
#cloud-setup-management
使用“servicecloud-managementstatus”查看运行状态。
Q2:
第2步中运行“hostname–fqdn”命令时,要保证机器是联网状态,才能返回正确的主机名称。
Q3:
如果后续打算把hypervisor也安装在managementserver的同一台主机上,需要在/etc/sysconfig/network-scripts/ifcfg-<
yourPhysicalDeviceName>
中配置出对应的信息。
同时,如果该hypervisor为KVM,需要修改/etc/sudoers,加入如下行:
Defaults:
cloud!
requiretty
配置NFS
前面讲过,CloudStack需要两类存储(primarystorage和secondarystorage)来支持它的cluster和host,本节中由NFS来提供这两个存储,因此前述步骤中要启动NFS服务。
同时为了方便起见,NFSServer也由cloud-server.squirrel.org充当。
2.创建两个目录,分别作为一级和二级存储:
#mkdir-p/export/primary
#mkdir-p/export/secondary
3.编辑文件/etc/exports,加入:
/export*(rw,async,no_root_squash)
然后导出/export目录:
#exportfs-a
4.编辑/etc/sysconfig/nfs文件,取消如下行的注释符号(或者在文件末尾直接添加下列行):
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
RQUOTAD_PORT=875
STATD_PORT=662
STATD_OUTGOING_PORT=2020
5.编辑防火墙设置文件/etc/sysconfig/iptables,在input部分最上面加入如下的规则:
-AINPUT-mstate--stateNEW-pudp--dport111-jACCEPT
-AINPUT-mstate--stateNEW-ptcp--dport111-jACCEPT
-AINPUT-mstate--stateNEW-ptcp--dport2049-jACCEPT
-AINPUT-mstate--stateNEW-ptcp--dport32803-jACCEPT
-AINPUT-mstate--stateNEW-pudp--dport32769-jACCEPT
-AINPUT-mstate--stateNEW-ptcp--dport892-jACCEPT
-AINPUT-mstate--stateNEW-pudp--dport892-jACCEPT
-AINPUT-mstate--stateNEW-ptcp--dport875-jACCEPT
-AINPUT-mstate--stateNEW-pudp--dport875-jACCEPT
-AINPUT-mstate--stateNEW-ptcp--dport662-jACCEPT
-AINPUT-mstate--stateNEW-pudp--dport662-jACCEPT
6.重启防火墙,并保存修改:
#serviceiptablesrestart
#serviceiptablessave
7.在管理服务器(cloud-server.squirrel.org)和hypervisor主机(cloud-agent.squirrel.org)上,修改文件/etc/idmapd.conf,加入如下内容:
Domain=squirrel.org
8.重启管理服务器的主机,然后测试并挂载NFS。
在cloud-agent.squirrel.org机器建立目录/primarymount,运行如下命令并确认其是否成功:
mount-tnfs192.168.1.4:
/export/primary/primarymount
Q4:
在KVMhypervisor机器运行showmount命令时,如果采用的是hostname,例如“showmount-ecloud-server.squirrel.org”,并且失败,报错“clnt_create:
RPC:
Programnotregistered”,那么可以尝试用IP代替:
“showmount-e192.168.1.4”。
或者编辑本机的/etc/hosts,加入对方server的IP-主机名映射(但这样失去了灵活性):
192.168.1.4cloud-server.squirrel.org
Q5:
第5步中新加入规则在防火墙配置文件中的次序对NFS
share成功很重要,一定要加入INPUT区的最开始部分,即系统中原有的input项必须在新加入行的后面,否则可能在运行showmount-e192.168.1.4时会出现
clnt_create:
Portmapperfailure-Unabletoreceive:
errno113(Noroutetohost)的错误。
Q6:
出现错误mount.nfs:
accessdeniedbyserverwhilemounting192.168.1.4:
/export/primary的处理?
有时当运行“showmount-ecloud-server.squirrel.org”有“clnt_create:
errno111(Connectionrefused)”错误提示,然后mountnfs失败,会出现标题上的错误信息,这可能跟NFS的建立方式有关,有时也跟防火墙有关。
需要检查log:
tail-200/var/log/messages
refusedmountrequestfrom192.168.1.5for/export/primary(/export):
illegalport1024
那么考虑尝试如下方法:
vi/etc/exports
在原来的那一行上修改如下:
/export*(rw,async,insecure,no_root_squash)
然后:
exportfs-rv
servicenfsrestart
在cloud-agent.squirrel.org上重新运行命令:
mount-tnfs192.168.1.4:
/export/primary/primarymount
没有提示,应该成功了,可以确认:
mount|grepprimary
OK!
准备系统虚拟机模板
系统虚拟机模板(SystemVMTemplate)保存在二级存储上,是用于创建云平台上的系统虚拟机的。
2.这里下载的是KVM模板,运行如下命令安装:
#/usr/lib64/cloud/agent/scripts/storage/secondary/cloud-install-sys-tmplt
-m/export/secondary
-u
-hkvm-F
依赖于网络速度,这个过程所需时间在几分钟到数小时(笔者的下载速度显示在2M~3M/s,三分钟左右完成全部下载和安装)。
Q7:
这里有两点需要注意:
∙磁盘分区必须够大。
∙虚拟机模板的下载安装这步不可省略,否则后面在控制台添加二级存储时会失败。
系统虚拟机不同于普通的hypervisorhost上的虚拟机,它是CloudStack自带的用于完成自身系统相关的一些任务的vm。
它有两种:
∙二级存储虚拟机(SecondaryStorageVM):
下载上传模板、下载镜像,第一次创建虚拟机时从二级存储拷贝模板到一级存储并且自动创建快照等。
∙控制台代理虚拟机(ConsoleProxyVM):
用于在web界面上展示控制台。
需要注意的是,系统虚机为Debian32位操作系统,CloudStack管理员可以用SSH登录。
同时,能在主机的/var/lib/libvirt/images查看到它们,如图5:
图5.查看已经安装的VMs
安装KVMHypervisor
1.以root身份登录hypervisor主机cloud-agent.squirrel.org。
2.确保hostname是完整带域名的,修改方法同管理服务器步骤1。
3.运行“yumeraseqemu-kvm”删除OS自带的qemu-kvm。
4.进入下载并解压好的CloudStack安装目录,运行命令“./install.sh”,选择“A”安装agent。
5.安装完毕后,运行下面命令启动n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CloudStack 配置和管理一个简单云 配置 管理 一个 简单
![提示](https://static.bdocx.com/images/bang_tan.gif)