CentOS6.6安装CloudStack4.8

CloudStack官方是有非常详细的安装使用文档,不过可能稍显散乱。这里记录下一次安装配置的过程,备忘!整个过程参考官方安装文档!

CloudStack是一个开源的具有高可用性及扩展性的云计算平台。支持管理大部分主流的hypervisor,如KVM虚拟机,XenServer,VMware,Oracle VM,Xen等。

一、基础环境:

安装是在Centos6.6 64位版本的系统上进行的,使用的cloudstack版本为4.8目前官方最新版本,较之前的4.3有些改变,对后续的使用还是有些影响,后面会提出来。另外有两个在使用过程中的坑也会标出来,以免以后再次入坑。

这次安装一个最小规模的cloudstack系统,使用默认共享网络,即cloudstack服务器所在的网络环境,不涉及复杂的网络环境。

安装中需要的几个组件:

数据库: 172.16.10.5:3306 #存储云平台数据
nfs(辅助存储) 172.16.10.5 #用于辅助存储
ntp_server 172.16.10.5 #客户端与服务端的时间同步
management 172.16.10.5 #云平台管理中心
agent: 172.16.10.5 #受控端,正常应为虚拟化中的宿主机(可以是kvm,xen,vsphere等)

网络参数:

gateway 172.16.0.1
netmask 255.255.0.0
systemip 172.16.10.10-172.16.10.20
guest-gateway 172.16.0.1
netmask: 255.255.0.0
guest ips: 172.16.10.30--172.16.10.100

安装完成后的架构:

二、安装过程

操作系统安装时选择虚拟化平台组件,在些基础上配置以下所需要的软件。这次安装中将数据库、二级存储、cloudstack服务端、cloudstack客户端(即KVM宿主机)都集中安装到一台服务器上,根据需要依次安装以下软件(涉及到所有软件增均采用yum安装):

1.安装nfs

做为辅助存储

#yum install -y nfs-utils
#chkconfig nfs on
#mkdir -p /export/primary
#mkdir -p /export/secondary
#vi /etc/exports
/export 172.16.10.*(rw,async,no_root_squash,no_subtree_check)
#service nfs restart

2.安装mysql

#yum -y install mysql-server

修改配置文件my.cnf增加以下内容

innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format = 'ROW'

重启并将mysql配置成开机自启动:

#service mysqld restart
#chkconfig mysqld on

运行mysql安全脚本,根据提示设置mysql密码、禁Root用户远程登陆、删除空密码用户等

#mysql_secure_installation

3.安装ntp

# yum -y install ntp

实际上默认配置项即可满足的需求,仅需启用NTP并设置为开机启动,如下所示:

# chkconfig ntpd on
# service ntpd start

4.安装cloudstack-management

这里有一个问题,就是在前后几次安装过程中发现官方的yum源非常慢,所以一般我会把rpm文件全部下载到本地后用yum localinstall来进行安装。当然直接下载rpm包也不会很快,但可以在下次安装时使用,不至于把时间全部花在等待上。另外可以用百度云盘的离线下载,然后再从百度云盘下载到本地,可能会快一些!

<1>添加cloudstack软件仓库,创建/etc/yum.repos.d/cloudstack.repo文件,并添加如下信息。

[cloudstack]
name=cloudstack
baseurl=http://cloudstack.apt-get.eu/centos/6/4.8/
enabled=1
gpgcheck=0

虽然使用yum localinstall 但是依然需要cloudstack的软件库,否则在安装过程中可能会出现依赖找不到的情况。

<2>上传下载的Rpm包到/opt 下,一般就4个比较重要的包:

cloudstack-agent-4.8.0-1.el6.x86_64.rpm
cloudstack-common-4.8.0-1.el6.x86_64.rpm
cloudstack-management-4.8.0-1.el6.x86_64.rpm
cloudstack-usage-4.8.0-1.el6.x86_64.rpm
#cd /opt
#yum localinstall cloudstack-*

安装完成后:

<3>初始化数据库

#cloudstack-setup-databases cloud:123456@localhost --deploy-as root:123456

<4>配置管理服务器:

#cloudstack-setup-management

<5>上传系统模板

#/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt \
-m /export/secondary \
-u http://cloudstack.apt-get.eu/systemvm/4.6/systemvm64template-4.6.0-kvm.qcow2.bz2 -h kvm -F

这一步可以参考cloudstack包,先下载到本地,使用-f system-template.详细使用方法参考下面usage

Usage: cloud-install-sys-tmplt: -m <secondary storage mount point> -f <system vm template file> [-h <hypervisor name: kvm|vmware|xenserver|hyperv|ovm3> ] [ -s <mgmt server secret key, if you specified any when running cloudstack-setup-database, default is password>][-u <Url to system vm template>] [-F <clean up system templates of specified hypervisor>] [-e <Template suffix, e.g vhd, ova, qcow2>] [-o <Database server hostname or ip, e.g localhost>] [-r <Database user name, e.g root>] [-p <mysql database port>] [-d <Database password. Fllowed by nothing if the password is empty>]

以上全部完成后启动management

#/etc/init.d/cloudstack-management start

5.安装agent

# yum -y install cloudstack-agent #这是官方文档的命令

我在安装的时候依然使用

#yum localinstall cloudstack-agent-4.8.0-1.el6.x86_64.rpm cloudstack-common-4.8.0-1.el6.x86_64.rpm

安装完成后运行agent配置命令

cloudstack-setup-agent

根据提示输入,管理服务器的IP,监听的端口等信息。(待续)

6.配置hypervisor

<1>安装kvm

如果是最小化安装的系统运行以下命令

#yum groupinstall -y Virtualization " Virtualization Client"

或者在系统安装时选择虚拟化主机组件。

验证kvm是否已经正确安装

lsmod | grep kvm

如图为正确

<2>配置kvm

编辑QEMU VNC配置文件/etc/libvirt/qemu.conf并取消如下行的注释。

#vnc_listen=0.0.0.0

在/etc/libvirt/libvirtd.conf文件中,配置以下参数

listen_tls = 0
listen_tcp = 1
tcp_port = "16059"
auth_tcp = "none"
mdns_adv = 0

修改/etc/sysconfig/libvirtd中的参数:

取消如下行的注释:

#LIBVIRTD_ARGS="--listen"

完成后重启libvirtd

#/etc/init.d/libvirtd restart

至此cloudstack安装完毕, 打开浏览器输入172.16.10.5:8080/client/出现下面画面则成功安装完成了cloudstack。