CloudStack系列4 管理节点安装

CloudStack在实验室实践过程,安装配置部分。

环境要求

管理节点OS版本及软件版本

  • RHEL versions 6.3, 6.5, 6.6 and 7.0
  • CentOS versions 6.6, 7.0
  • Ubuntu 14.04 LTS
  • Java 1.7
  • MySQL 5.6 (RHEL 7)
  • MySQL 5.1 (RHEL 6.x)

虚拟化版本

  • LXC Host Containers on RHEL 7
  • Windows Server 2012 R2 (with Hyper-V Role enabled)
  • Hyper-V 2012 R2
  • CentOS 6.2+ with KVM
  • Red Hat Enterprise Linux 6.2 with KVM
  • XenServer versions 6.1, 6.2 SP1 and 6.5 with latest hotfixes
  • VMware versions 5.0 Update 3a, 5.1 Update 2a, and 5.5 Update 2
  • Bare metal hosts are supported, which have no hypervisor.
    These hosts can run the following operating systems:
  • RHEL or CentOS, v6.2 or 6.3

    Note:Use libvirt version 0.9.10 for CentOS 6.3

  • Fedora 17

  • Ubuntu 12.04

外部设备

  • Netscaler VPX and MPX versions 9.3, 10.1e and 10.5
  • Netscaler SDX version 9.3, 10.1e and 10.5
  • SRX (Model srx100b) versions 10.3 to 10.4 R7.5
  • F5 11.X
  • Force 10 Switch version S4810 for Baremetal Advanced Networks

浏览器

  • Internet Explorer versions 10 and 11
  • Firefox version 31 or later
  • Google Chrome version 36.0.1985
  • Safari 6+

环境规划

设备配置说明

路由器

路由器连接公网和内部网络,路由器内部ip地址为192.168.6.1 ,与三层交换机g0/1连接。

设备 物理接口 地址 功能 备注
路由器 e0/0 172.28.23.1 连接internet 内部地址,非公网
e0/1 192.168.0.1/24 内部接口,连接交换机 内部地址

交换机

三层交换机负责物理网络vlan划分,开启vlan间路由器,交换机的g0/1属于vlan 2,和路由器内网接口连接,vlan 2 ip地址为:192.168.6.254
(二层交换机也可以,但是需要在路由器上做单臂路由)。

设备 vlan vlan ip 网关 功能 备注
交换机 2 192.168.0.254/24 连接出口路由器
20 192.168.20.1/24 Storage&Manage Network 计算节点出口网关
30 192.168.30.1/24 Public Network 公共网络,可以配置多个
300-999 Guest Network 来宾网络,用户自定义
接口序号 vlan 接口模式 连接设备 备注
g0/24 2 Access 路由器g0/1 路由器内网接口
g0/1 1 Trunk Pod0 g0/24 Pod0交换机(管理节点所在机柜)
g0/2 1 Trunk Pod1 g0/24 Pod1交换机
g0/3 1 Trunk Pod2 g0/24 Pod2交换机

流量分类规划

流量类型 VLAN CIDR 网关 起始IP 结束IP 备注
Public Network 30 192.168.30.0/24 192.168.30.1 192.168.30.10 192.168.20.250 公共流量
Manage Network 20 192.168.21.0/24 192.168.21.1 192.168.21.200 192.168.11.229 提供点,内部系统用的IP,如系统vm
Guest Network 300-999 10.1.1.0/24 10.1.1.1 10.1.1.10 10.1.1.250 来宾流量,用户vm使用
Storage Network 20 192.168.20.0/24 192.168.20.1 192.168.20.170 192.168.20.199 存储流量
  • 高级区域配置成功后,客户vm将获得一个10.1.1.0网段的私有ip地址;
  • 系统将建立一个虚拟路由器Vrouter,这个虚拟路由器将作为用户vm 10.1.2.0 guest网段网关;
  • 虚拟路由器还将获得一个public的网段的ip地址;
  • vm将通过Vrouter nat功能实现外部通信和对外提供服务。

Guest vm(10.1.1.x)→(10.1.1.1)Vrouter-nat(192.168.30.x) → (192.168.30.1)三层交换机(192.168.0.254)→(192.168.0.1)路由器(nat)→wan

主机规划

交换机连接计算节点的端口配置为trunk模式,允许所有vlan通过。

机柜 设备名称 IP地址 网关 vlan 用途 系统 备注
Pod0 cs 192.168.20.100 192.168.20.254 20 管理节点 centos6.6 x64 8核,8G,120G
Pod0 nfs 192.168.20.101 192.168.20.254 20 二级存储 centos6.6 x64 8核,8G,500G
Pod0 nfs1 192.168.20.102 192.168.20.254 20 机柜1主存储 centos6.6 x64 8核,8G,1024G
Pod0 nfs2 192.168.20.103 192.168.20.254 20 机柜2主存储 centos6.6 x64 8核,8G,1024G
Pod0 nfs3 192.168.20.104 192.168.20.254 20 机柜2主存储 centos6.6 x64 8核,,8G,1024G
Pod0 vcenter 192.168.20.105 192.168.20.254 20 vcenter VMWARE vCenter5.5U2 16核,8G
Pod1 nr1r01n05 192.168.20.5 192.168.20.254 20 计算节点 VMWARE esxi 5.5U2 8核,8G
Pod1 nr1r01n19 192.168.20.19 192.168.20.254 20 计算节 VMWARE esxi 5.5U2 8核,8G
Pod2 nr1r02n09 192.168.20.20 192.168.20.254 20 计算节点 VMWARE esxi 5.5U2 12核,8G
Pod2 nr1r02n28 192.168.20.27 192.168.20.254 20 计算节点 VMWARE esxi 5.5U2 12核,8G
Pod3 nr1r03n05 192.168.20.30 192.168.20.254 20 计算节点 VMWARE esxi 5.5U2 12核,64G
Pod3 nr1r03n10 192.168.20.35 192.168.20.254 20 计算节点 VMWARE esxi 5.5U2 12核,64G
Pod4 nr1r04n05 192.168.20.40 192.168.20.254 20 计算节点 VMWARE esxi 5.5U2 80核,128G
Pod4 nr1r04n14 192.168.20.49 192.168.20.254 20 计算节点 VMWARE esxi 5.5U2 80核,128G
Pod5 nr1r05n05 192.168.20.50 192.168.20.254 20 计算节点 VMWARE esxi 5.5U2 32核,64G
Pod5 nr1r05n10 192.168.20.55 192.168.20.254 20 计算节点 VMWARE esxi 5.5U2 32核,64G

Basic Zone

Basic Zone需要配置3种网络流量类型,分别为Management Network、Guest Network、Storage Network,具体规划信息如下表:

流量类型 VLAN CIDR 网关 起始IP 结束IP 备注
Public Network 30 192.168.30.0/24 192.168.30.1 192.168.30.10 192.168.30.250 公共流量,
Manage Network 20 192.168.20.0/24 192.168.20.1 192.168.20.200 192.168.20.229 提供点,内部系统用的IP,如系统vm
Guest Network 300-999 10.1.1.0/24 10.1.1.1 10.1.1.10 10.1.1.250 来宾流量,用户vm使用,
Storage Network 20 192.168.20.0/24 192.168.20.1 192.168.20.230 192.168.20.249 存储流量

Advanced Zone

流量类型 VLAN CIDR 网关 起始IP 结束IP 备注
Public Network 30 192.168.30.0/24 192.168.30.1 192.168.30.10 192.168.30.250 公共流量,后期可继续添加
Manage Network 20 192.168.20.0/24 192.168.10.1 192.168.10.120 192.168.10.169 提供点,内部系统用的IP,如系统vm
Guest Network 300-999 10.1.1.0/24 10.1.1.1 10.1.1.10 10.1.1.250 来宾流量,用户vm使用
Storage Network 20 192.168.20.0/24 192.168.20.1 192.168.20.170 192.168.20.199 存储流量,后期可继续添加

连接示意图如下图所示:

部署CloudStack

配置系统相关服务

1. 配置IP

#
echo "IPADDR=192.168.20.100
NETMASK=255.255.255.0
GATEWAY=192.168.20.254" >> /etc/sysconfig/network-scripts/ifcfg-eth0

sed -i 's/dhcp/static' /etc/sysconfig/network-script/ifcfg-eth0
sed -i 's/ONBOOT=no/ONBOOT=yes' /etc/sysconfig/network-script/ifcfg-eth0

2. 配置主机名

#
echo "cs"> /etc/sysconfig/network
hostname -F /etc/sysconfig/network
echo "192.168.20.100 cs cs.cloud.com">> /etc/hosts
hostname --fqdn

3. 关闭 selinux

#
getenforce
#查看当前 selinux 状态
setenforce 0
#临时设置 selinux 状态
sed -i 's/enforcing/disabled/' /etc/selinux/config
#修改 selinux 配置文件,重启永久禁用

4. 配置系统的本地 yum 源

#
yum clean all & yum makecache

5. 配置 ntp 服务器

#
yum install ntp -y
vi /etc/ntp.conf
#编辑 ntp 配置文件,将服务器替换成可用对时服务器。
service ntpd restart
chkconfig ntpd on
#重启 ntp 服务,并且设置其开机启动

6. 确认java版本

管理节点不能安装JDK6或者其他较低的版本,如有安装,先卸载该JDK,再进行进行下面的步骤。(cs4.4开始改用JDK7)

#
java -version

安装CloudStack

1. 配置cloudstack的yum源

#
echo "[cloudstack-source]
name=cloudstack
baseurl=http://192.178.102.249/cloudstack/centos/4.5/
enabled=1
gpgcheck=0" > /etc/yum.repos.d/cloudstack.repo

实验室已将yum源同步到本地,不同版本配置不同,具体配置时以实际版本为准。

2. 安装cloudstack

#
yum install -y cloudstack-management

4.5版本目前已经发布4.5.1和4.5.2,默认会安装4.5.2,可以通过指定版本安装4.5.1。

3. 安装cloudstack-agent

#
yum install -y cloudstack-agent

仅在KVM主机节点安装。

安装数据库

1. 安装mysql

#
yum install -y mysql-server

CloudStack使用mysql管理数据,但安装cloudstack-management时没有包含mysql,需要手动安装,并导入数据。数据库可以被安装到其它机器上。

2. 修改mysql配置

#
echo "[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format = 'ROW'
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid" >/etc/my.cnf

max_connections 的参数应设置 350 乘以你准备部署的管理节点的数量。这里假定只安装一个管理节点。

3. 修改mysql安全

#
service mysqld start
chkconfig mysqld on
mysql_secure_installation
service mysqld restart
#
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save

缺省安装的 mysql 安全级别比较低,需要手工设置 mysql 下密码、禁用远程访问,删除无用账户及测试数据库。
注意:可允许远程mysql连接,方便以后查找问题

4. 导入数据

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

数据库准备好后,需导入 CloudStack 的表及基础数据,这样云平台才能正常使用。如果没有意外的话,最后会输出 CloudStack has successfully initialized database
字样,表示数据库已经准备好了。

启动CloudStack

1. 配置管理服务器服务并启动服务,检查数据库版本,检查服务状态。

#
cloudstack-setup-management
service cloudstack-management status
mysql> select * from version;
tail -n 200 -f /var/log/cloudstack/management/catalina.out

配置系统模版

1. 确定模版版本

CloudStack使用一组系统虚机来提供访问虚机控台,各种网络服务和管理存储的功能。当你引导云的时候,该步骤会获取这些准备用于部署的系统镜像。现在我们要从刚刚挂载的共享存储上面下载虚机模板并部署它们。管理服务器上有一个脚本来操作这些系统虚机镜像。这里的模版已装好的数据库中看到系统使用的模版地址,下载对应版本即可:

mysql> SELECT NAME,URL FROM vm_template;

直接下载即可:

#
wget http://download.cloud.com/templates/4.5/systemvm64template-4.5-vmware.ova

2. 挂载nfs

#
mount -t nfs 192.168.20.111:/export/secondary /mnt

在管理服务器上挂载二级存储.

3. 导入系统模版

#
/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt \
-m /mnt \
-u http://192.178.102.249/cloudstack/systemvm/4.5/systemvm64template-4.5-vmware.ova \
-h vmware \
-F

配置项

  • 二级存储网段
    在 CloudStack 管理页面上,选择“全局设置”,在右上边的搜索框中输入 sites 搜索。
    修改secstorage.allowed.internal.sites为二级存储当前网段,如 192.168.0.0/24
  • 本地存储启用
    搜索 local,修改system.vm.use.local.storage为 true,允许系统虚机使用本地存储。
    重启 CloudStack 生效。
    service cloudstack-management restart