CloudStack安装报告.docx
《CloudStack安装报告.docx》由会员分享,可在线阅读,更多相关《CloudStack安装报告.docx(23页珍藏版)》请在冰豆网上搜索。
CloudStack安装报告
CloudStack安装测试报告
CloudStack介绍
CloudStack是新加入到Apache基金会中的开源云计算平台。
CloudStack开发语言为Java,此前为C研发应用的商业软件,此后被Citrix思杰收购,2012年4月5日思杰宣布将CloudStack项目提交至Apache基金会,CloudStack成为Apache许可下的完全开源软件。
CloudStack平台可以加速高伸缩性的公共和私有云(IaaS)的部署、管理、配置。
其最新版本的CloudStack3颇具Amazon亚马逊风格,它帮助那些希望效仿全球最成功云平台来构建云设施的企业用户,快速而轻松地将虚拟数据中心资源转入自动化、富于弹性且可自我服务的云平台中。
另外,CloudStack兼容亚马逊API接口,允许跨CloudStack和亚马逊平台实现负载兼容。
使用CloudStack作为基础,数据中心操作者可以快速方便的通过现存基础架构创建云服务。
CloudStack与OpenStack的比较
2012年4月5日Citrix宣布将CloudStack开源软件加入到Apache软件基金会,CloudStack与CloudStack同成为Apache许可下的完全开源云计算平台,同时也成为OpenStack最有力的竞争对手。
虽然截至目前OpenStack在市场宣传和影响力方面胜过CloudStack,支持伙伴及社区开发人数也远甚于CloudStack,但CloudStack的平台成熟度远优于OpenStack,CloudStack的用户体验及安装容易度也都比OpenStack要好,并且CloudStack已在更具生产实际的商业应用环境中得到了充分验证,CloudStack的商业用户包括社交游戏商Zynga、全球最大域名注册商GoD、印度最大软件外包商Tata,GreenQloud,KT,Nokia等;而OpenStack则更像是仍处于研发阶段难以称为“成熟的产品化的IT产品”。
安装测试环境介绍
实验使用两台普通PC机进行了部署测试,一台作为管理服务器(ManagementServer),另外一台作为主机节点(Host)。
CloudStack对管理服务器节点要求较低,而对主机节点(Host)要求高。
两台PC机硬件配置如下:
管理服务器(ManagementServer)
CPU:
IntelG5302.4GHz
内存:
2GDDR3
硬盘500G
计算节点1(Host)
CPU:
IntelG5302.4GHz
内存:
4GDDR3
硬盘500G
两台电脑的网络配置及安装软件如下:
计算机名
CloudManager
Node1
功能与角色
管理服务器,主存储,次存储
主机节点
网卡
eth0Public
eth0Public
IP
eth0192.168.2.202
eth0192.168.2.203
HostName
manager
node1
DNS
192.168.2.1
192.168.2.1
网关
192.168.2.1
192.168.2.1
操作系统
RHEL6.264位
RHEL6.264位withkvm
安装软件
CloudStackManagementServer,MySQL
CloudStackHostAgent
两台电脑均安装64位RedhatEnterpriceLinux6.264位。
CloudStack对主机节点的配置要求较高,本次测试安装发现CloudStack在未创建用户虚拟机情况下已占用1.25G左右内存,2G内存情况下再建立用户虚拟机可分配内存已很有限。
主要安装步骤
Ø安装ManagementServer管理服务器
1.修改/etc/hosts和/etc/sysconfig/network文件,hostname需设定为标准格式如
[root@manager~]#vi/etc/hosts
192.168.2.202manager
192.168.2.203node1
[root@manager~]#vi/etc/sysconfig/network
NETWORKING=yes
HOSTNAME=
2.配置安装光盘为YUM源
测试中由于已经将RHEL的安装光盘复制到硬盘,所以操作为直接将硬盘中的光盘iso文件挂载到指定目录。
[root@manager~]#mkdir/media/rhel6
[root@manager~]#mount–oloop-tiso9660/mnt/d/rhel6.iso/media/rhel6
创建软件安装包源local.repo,#vi/etc/yum.repos.d/local.repo,文件中添加下面配置
[rhel]
name=rhel6
baseurl=file:
///media/rhel6
enabled=1
gpgcheck=0
3.关闭SELINUX
[root@manager~]#vi/etc/selinux/config
SELINUX=disabled
4.配置NTP服务器
[root@manager~]#yuminstallntp-y
编辑/etc/ntp.conf,将ntp服务器替换
[root@manager~]#vi/etc/ntp.conf
0.xenserver.pool.ntp.org
1.xenserver.pool.ntp.org
2.xenserver.pool.ntp.org
3.xenserver.pool.ntp.org
[root@manager~]#servicentpdrestart;chkconfigntpdon//重启ntp服务,并且设置其开机启动
5.上传CloudStack安装包并解压缩
可使用迅雷等工具从以下位置:
先找到相应CloudStack安装包之后进行下载,之后通过ftp上传到管理服务器节点。
在此我们选用CloudStack-3.0.0-1-rhel6.2.tar.gz
[root@manager~]#tar-zxvfCloudStack-3.0.0-1-rhel6.2.tar.gz//解压文件
[root@manager~]#cdCloudStack-3.0.0-1-rhel6.2;
6.安装管理服务器
安装管理服务器、mysql、agent等操作均为在cloudstack文件夹下执行install.sh。
[root@managerCloudStack-3.0.0-1-rhel6.2]##./install.sh//执行install脚本文件
>M//输入M安装ManagementServersoftwares
直至出现Complete!
Done.表示安装完成!
7.安装配置MYSQL
[root@managerCloudStack-3.0.0-1-rhel6.2]#./install.sh
输入D安装MYSQL
安装成功后修改mysql的配置文件
[root@managerCloudStack-3.0.0-1-rhel6.2]#vi/etc/f
//在mysqld标签下面添加如下参数
#newadditems
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format='ROW'
#servicemysqldrestart//重启mysql守护进程
#mysql-uroot
mysql>setPASSWORD=PASSWORD('123456');
//设置数据库管理员root用户密码为123456
mysql>quit;
在mysql数据库上面创建名为cloud的用户;格式如下:
cloud-setup-databasescloud:
@localhost--deploy-as=root:
-e-m-k
其中cloud表示需要被创建的用户,是其密码
--deploy-as表明通过哪种用户部署云数据库以及创建cloud用户
:
可选参数,通常有两种类型:
file以及web,都是用于传递数据库中的加密密码,默认为file
:
可选参数,替换默认密钥,用于加密CloudStack属性文件中的机密
参数。
默认为password。
强烈建议您更换一个更安全的价值。
:
可选参数,跟类似,默认为password。
执行该脚本:
#cloud-setup-databasescloud:
123456@localhost--deploy-as=root:
123456-efile-m123456-k123456//密码自己设定即可
直至出现“CloudStackhassuccessfullyinitializeddatabase,youcancheckyourdatabaseconfigurationin/etc/cloud/management/db.properties”表明云平台数据库初始化成功。
8.启动CloudStack管理服务
#cloud-setup-management//改命令启动管理服务的同时,同时设置iptables跟
sudoer相关参数
出现”CloudStackManagementServersetupisDone!
”表明启动成功。
9.配置NFS服务
在管理主机创建nfs服务器,配置primarystorage和secondarystorage
1)创建primarystorage和secondarystorage要使用的目录
#mkdir-p/mnt/e/primary
#mkdir-p/mnt/e/secondary
2)vi/etc/exports
添加如下:
/mnt/e/primary*(rw,sync,no_root_squash)
/mnt/e/secondary*(rw,sync,no_root_squash)
#/home192.168.2.0/24(rw,sync,no_root_squash)
此行表明本机的/home这个目录为NFS共享目录,可以访问这个目录的IP地址区间为192.168.2.0~192.168.2.254,权限为可读写,当访问者为root用户是该目录具有root权限;*代表没有ip段限制。
4)nfs服务重新加载配置文件内容
#exportfs-a
5)编辑vi/etc/sysconfig/nfs文件,取消文件中下面行的注释.
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
RQUOTAD_PORT=875
STATD_PORT=662
STATD_OUTGOING_PORT=2020
6)管理主机和虚拟主机都要修改配置文件vi/etc/idmapd.conf
#vi/etc/idmapd.conf//取消Domain前的注释,并修改为管理主机和虚拟主机所在的实际域名,即修改
Domain=
7)重启NFS服务:
/etc/init.d/rpcbindstart
/etc/init.d/nfsstart
设置将NFS加入开机启动项:
chkconfigrpcbindon
chkconfignfson
查看是否能够访问的NFS服务器
showmount-e192.168.2.202
显示为:
/mnt/e/primary*
/mnt/e/secondary*
表明192.168.2.202的列出的目录可访问。
如果不可访问检查服务端NFS是否开启以及防火墙是否关闭。
10.准备系统虚拟机模板(SystemVMTemplate)
针对本次安装测试,执行以下命令
#/usr/lib64/cloud/agent/scripts/storage/secondary/cloud-install-sys-tmplt-m/mnt/secondary-u-hkvm-s-F
注意:
1.,如果你之前在执行cloud-setup-database的时候将数据库的加密类型设置为web的话,此处的这个参数就必须添加,如果根据本文操作,可以省去”-s”
笔者建议操作的时候,手动下载,不然速度实在够慢,而且出错几率会大很多。
文件,可以通过迅雷等其他工具下载较为快速,本文通过其他下载工具下载,再上传至管理节点的/tmp
目录下面,通过下面的命令执行操作:
(测试中测试使用file协议失败)
#/usr/lib64/cloud/agent/scripts/storage/secondary/cloud-install-sys-tmplt-m/mnt/e/secondary/-ufile:
///mnt/d/acton-systemvm-02062012.vhd.bz2-hkvm-F
或者自定义http服务地址(测试成功):
#/usr/lib64/cloud/agent/scripts/storage/secondary/cloud-install-sys-tmplt-m/mnt/e/secondary-uhttp:
//192.168.2.11/acton-systemvm-02062012.qcow2.bz2-hkvm-F
Ø安装主机节点
1.修改/etc/hosts和/etc/sysconfig/network文件,hostname需设定为标准格式如
[root@node1~]#vi/etc/hosts
hostnamenode1
[root@node1~]#vi/etc/sysconfig/network
NETWORKING=yes
HOSTNAME=
2.配置安装光盘为YUM源
测试中由于已经将RHEL的安装光盘复制到硬盘,所以操作为直接将硬盘中的光盘iso文件挂载到指定目录。
[root@node1~]#mkdir/media/rhel6
[root@node1~]#mount–oloop-tiso9660/mnt/d/rhel6.iso/media/rhel6
创建软件安装包源local.repo,#vi/etc/yum.repos.d/local.repo,文件中添加下面配置
[rhel]
name=rhel6
baseurl=file:
///media/rhel6
enabled=1
gpgcheck=0
3.关闭SELINUX
[root@node1~]#vi/etc/selinux/config
SELINUX=disabled
4.配置NTP服务器
[root@node1~]#yuminstallntp-y
编辑/etc/ntp.conf,将ntp服务器替换
[root@node1~]#vi/etc/ntp.conf
0.xenserver.pool.ntp.org
1.xenserver.pool.ntp.org
2.xenserver.pool.ntp.org
3.xenserver.pool.ntp.org
[root@node1~]#servicentpdrestart;chkconfigntpdon//重启ntp服务,并且设置其开机启动
5.删除预安装好的qemu-kvm包.CloudStack提供了一个修改版本
#yumeraseqemu-kvm
6.安装CloudStack软件包中agent主机服务
下载软件包:
在此我们选用最新版本CloudStack-3.0.0-1-rhel6.2.tar.gz
#tar-zxvfCloudStack-3.0.0-1-rhel6.2.tar.gz//解压文件
#cdCloudStack-3.0.0-1-rhel6.2;
./install.sh//执行install脚本文件
>A//输入A安装Cloudagentsoftwares
直至出现Complete!
Done.表示安装完成!
7.管理主机和虚拟主机都要修改配置文件vi/etc/idmapd.conf
#vi/etc/idmapd.conf//取消Domain前的注释,并修改为管理主机和虚拟主机所在的实际域名,即修改
Domain=
运行命令启动nfs服务
#servicerpcbindstart
#servicenfsstart
#chkconfigrpcbindon
#chkconfignfson
查看是否能够访问的NFS服务器
showmount-e192.168.2.202
显示为:
/mnt/e/primary*
/mnt/e/secondary*
表明192.168.2.202的列出的目录可访问。
如果不可访问检查服务端NFS是否开启以及防火墙是否关闭。
8.在kvm主机中,配置/etc/libvirt/qemu.conf文件,取消“vnc_listen=0.0.0.0”前面的注释;
#vi/etc/libvirt/qemu.conf
//此时修改qemu.conf文件,修改后执行下面命令重启虚拟机服务
#/etc/init.d/libvirtdrestart
Ø进入管理服务器的WebConsole进行配置
1.登录Web管理界面(WebConsole)
管理服务器安装完成并启动后,可以通过WebConsole登陆进行操作:
使用Web浏览器输入CloudstackWebConsole的地址
http:
//192.168.2.202:
8080/client点击登陆,输入用户名admin,默认密码password
初始登录会提示新添加Zone、Pod、Host和PrimaryStorage
2.创建zonepodcluster等
上图中可看到当前运行的Zone,Pod,Cluster,Host及Host的CPU、内存等的数值。
概念介绍:
Zone(区域):
是CloudStack部署中最大的组织单位。
一个区域通常会对应到一个单一的数据中心,虽然它是允许有一个数据中心的多个区域。
将基础设施组织进区域的好处是提供物理隔离
和冗余。
例如,每个区域都可以有自己的电源和网络上行,区域可以被广泛的被地理分离(尽
管这不是必需的)Zone包含一个或者多个Pods,每个Pod包含一个或者多个主机组成的多个集
群,以及一个或者多个一级存储服务器。
区域中被所有pods进行共享的二级存储
Pod:
一般代表一个机架,同一pod中的主机处于同一子网内
Cluster:
就是集群,由多个主机组成的集群
Host:
一个主机,集群中的主机,此处可以理解成一台装有xenserver或KVM的物理机器
mysqlclouddb:
用于存放相关数据信息,诸如网络地址等等,可以通过mysql客户端登入查看相关表以及相关属性。
创建zone
创建pod
添加虚拟机ip段
所用的虚拟机类型
添加一台主机(可用于创建系统虚拟机)
添加主存储
添加第二存储
上面完成后启动zone
3.上传虚拟机需要的模板(Template)或ISO
上传模板前注意如果上传的模版或ISO为从本地局域网上下载,需到Web界面的GlobalSettings中修改全局配置(GlobalSetting),查找:
secstorage【非常重要】
点击操作下面的编辑选项,将这个参数的值(value)设置为192.168.2.0/24,表示允许跟192.168.2.0/24网段进行存储通讯,这一步必做,否则在下面上传模版的时候,查看上传状态会一直出现”connectionrefused”.
上传iso
上传template
显示上传后的iso或template信息
4.从iso或模板创建虚拟机
选择使用iso还是template
选取自己的iso或template
确定采用的computeoffering,区别在于可占用的系统资源如CPU、内存不同。
确定虚拟机磁盘大小
虚拟机显示名称
创建成功后显示虚拟机信息
使用console登录虚拟机,用户名root,密码为password
安装了SSH服务后也可以通过SSH连接虚拟机。
安装难点及常见问题
Ø登录web界面后,如果systemvms的状态总是starting不能running可以尝试启动虚拟机系统服务。
#servicecgconfigrestart//cgconfig是安全分组(SecurityGroups)的相关服务
#servicelibvirtdrestart//libvirtd为虚拟机服务
Ø登录we