一、环境
1.软件信息
名称 |
版本 |
备注 |
CloudStack |
4.5.x |
|
Centos |
6.7 |
|
Mysql |
5.x |
系统自带 |
Tomcat |
6.x/7.x |
系统自带 |
XenServer |
6.5 |
2.硬件信息
名称 |
配置 |
类型 |
IP |
数量 |
CloudStack 管理节点 |
2C/4G |
管理节点 |
192.168.16.242 |
1 |
XenServer |
4C/8G |
资源节点 |
192.168.16.245/246 |
2 |
NFS存储 |
2c/4G |
存储节点 |
192.168.16.247 |
1 |
3.网络信息
CS中使用高级网络模式。
类型 |
Vlan |
用途 |
IP |
网关 |
Manage |
用于管理网络 |
192.168.16.242-248/24 |
192.168.16.2 |
|
Public |
用于公共网络 |
10.0.0.1-254/24 |
10.0.0.1 |
|
Guest |
用于共享网络 |
|||
Guest |
4000-4010 |
用于隔离网络 |
4.CloudStack高级网络相关概念
公共网络:经过隔离的私有来宾网络之间进行通信及对外通过的共享网络空间,所有隔离的私有来宾网络均需要经过公共网络与其他私有来宾网络通信(注意:同一来宾网络下客户虚拟机之间的通信不经过公共网络)
来宾网络:用户虚拟机直接使用的网络,一般属于用户的私有网络空间。基础网络模式中,多个用户将共用一个来宾网络(Share类型),彼此之间需要通过安全组进行隔离。在高级网络模式中,每个用户将拥有专属的来宾网络(Islate类型),这些来宾网络属于不同的VLAN,彼此之间通过VLAN进行隔离,通过虚拟路由器的设置进行互访。
管理网络:CLouStack内部资源之间的通信需要借助管理网络进行,这些内部资源包括管理服务器发出的管理流量、服务器主机节点的IP地址与管理服务器通信的流量、系统虚拟机(system VM)的管理IP地址与管理服务器及服务器主机节点IP地址之间的网络通信流量
存储网络:CloudStack中存储网络并没有严格含义,相反,其他它只不过是二级存储虚拟机(SSVM)与二级存储(Secondary Storage)设备之间通信的网络流量而已。如果没有设置这个网络,默认会使用管理网络。由于这个网络主要承担模板、快照及ISO文件的复制或迁移工作,因此对带宽的要求很高,有条件的话可以单独设置。
二、系统安装
1.XenServer6.5
第一步:请确认服务器的 VT 功能均已打开。
第二步: 将服务器配置为 U盘启动,并开机(此为VMware vsphere测试环境)
检测到没有开启虚拟化,在虚机配置文件中.vmx 加入vhv.enable="ture"
错误1:
Xenserver无法启动网卡
解决:
xenserver不支持 vmxnet3类型网卡
2.XenServer配置
(1)开启存储多路径
打开 XenCenter,点击添加服务器
待多路径开启后,点击主机右键,选择退出维护模式
(2)创建主机池
三、NFS存储配置
1.配置nfs
[[email protected] ~]# rpm -qa nfs-utils rpcbind [[email protected] ~]# yum install -y nfs-utils rpcbind [[email protected] ~]# mkdir /primary [[email protected] ~]# mkdir /secondary [[email protected] ~]# chown -R nfsnobody:nfsnobody /primary/ /secondary/ [[email protected] ~]# cat /etc/exports /primary 192.168.16.0/24(rw,sync) /secondary 192.168.16.0/24(rw,sync)
[[email protected] ~]# /etc/init.d/rpcbind start ; /etc/init.d/nfs start [[email protected] ~]# showmount -e localhost Export list for localhost: /secondary 192.168.16.0/24 /primary 192.168.16.0/24
四、安装CloudStack管理节点
1.将 CloudStack 4. 5.1 的安装包上传至服务器中
[[email protected] CloudStack4.5.2]# ls cloudstack-agent-4.5.2-1.el6.x86_64.rpm cloudstack-awsapi-4.5.2-1.el6.x86_64.rpm cloudstack-baremetal-agent-4.5.2-1.el6.x86_64.rpm cloudstack-cli-4.5.2-1.el6.x86_64.rpm cloudstack-common-4.5.2-1.el6.x86_64.rpm cloudstack-management-4.5.2-1.el6.x86_64.rpm cloudstack-mysql-ha-4.5.2-1.el6.x86_64.rpm cloudstack-usage-4.5.2-1.el6.x86_64.rpm systemvm64template-2015-05-14-4.5.1-kvm.qcow2.bz2 systemvm64template-4.5-vmware.ova systemvm64template-4.5-xen.vhd.bz2
[[email protected] CloudStack4.5.2]# mkdir /opt/cloudstack [[email protected] CloudStack4.5.2]# mv * /opt/cloudstack/ [[email protected] CloudStack4.5.2]# yum install -y createrepo [[email protected] CloudStack4.5.2]# createrepo -p -d -o /opt/cloudstack /opt/cloudstack/ [[email protected] CloudStack4.5.2]# yum clean all ; yum makecache [[email protected] CloudStack4.5.2]# yum -y install cloudstack-management
2.安装Mysql数据库
(1) 安装Mysql 服务器
[[email protected] ~]# yum install mysql-server -y #安装mysql [[email protected] ~]# vi /etc/my.cnf #在底部添加下面内容 innodb_rollback_on_timeout=1 innodb_lock_wait_timeout=600 max_connections=350 log-bin=mysql-bin binlog-format=‘ROW‘
[[email protected] ~]# /etc/init.d/mysqld start #启动 [[email protected] ~]# mysqladmin -uroot password root #增加密码 mysql> CREATE DATABASE `cloud` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; mysql> grant all on cloud.* to [email protected]‘localhost‘ IDENTIFIED by ‘cloud‘;
(2) 创建CloudStack 的初始化数据库文件
[[email protected] ~]# cloudstack-setup-databases cloud:[email protected] --deploy-as=root:root -e file -m password -k password -i 192.168.16.242 #尾部IP为本机
3.配置Cloudstack管理节点
(1) 挂载辅助存储
[[email protected] ~]# rpm -qa nfs-utils rpcbind #查看是否安装nfs [[email protected] ~]# yum install -y nfs-utils rpcbind #若没有安装则安装 [[email protected] ~]# /etc/init.d/rpcbind start ; /etc/init.d/nfs start #启动NFS服务(必须先启动RPC) [[email protected] ~]# mkdir /mnt/secondary/ [[email protected] ~]# mount -t nfs 192.168.16.247:/secondary /mnt/secondary/ #挂载辅助存储
(2) 编辑防火墙设置
[[email protected] ~]# vi /etc/sysconfig/iptables #编辑防火墙配置文件 ... -A INPUT -p tcp --dport 3306 -j ACCEPT -A INPUT -s 你的网段/24 -m state --state NEW -p udp --dport 111 -j ACCEPT -A INPUT -s 你的网段/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT -A INPUT -s 你的网段/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT -A INPUT -s 你的网段/24 -m state --state NEW -p tcp --dport 32803 -j ACCEPT -A INPUT -s 你的网段/24 -m state --state NEW -p udp --dport 32769 -j ACCEPT -A INPUT -s 你的网段/24 -m state --state NEW -p tcp --dport 892 -j ACCEPT -A INPUT -s 你的网段/24 -m state --state NEW -p udp --dport 892 -j ACCEPT [[email protected] ~]# /etc/init.d/iptables start [[email protected] ~]# /etc/init.d/iptables save
(3) 上传XEN系统虚拟机模版
[[email protected] /]# /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary –u http://你的服务器地址/cloudstack/systemvm64template-4.5-xen.vhd.bz2 -h xenserver -F #从网络导入XEN模板
或者:
[[email protected] ~]# /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary/ -f /opt/cloudstack/systemvm64template-4.5-xen.vhd.bz2 -h xenserver -F
#从本地路径中导入XEN模板
(4) 启动管理服务
[[email protected] ~]# cloudstack-setup-management
五、Cloudstack区域及云资源池配置
1.登录信息
登陆Cloustack管理节点平台
登录地址 |
账户 |
密码 |
备注 |
http://192.168.16.242:8080/client |
admin |
password |
首次登录会提示同意协议以及向导配置,点击跳过即可
2.新建区域
2016-08-12 19:42:37,453 WARN [c.c.r.ResourceManagerImpl] (catalina-exec-11:ctx-03abe7a3 ctx-c3297c08) Unable to connect due to
com.cloud.exception.ConnectionException: Incorrect Network setup on agent, Reinitialize agent after network names are setup, details : For Physical Network id:200, Guest Network is not configured on the backend by name network1
解决:
删除XenServer默认网络标签中的network 0中的空格
WARN [o.a.c.s.d.l.CloudStackPrimaryDataStoreLifeCycleImpl] (catalina-exec-15:ctx-df954fb4 ctx-81db588d) Can not create storage pool through host 1 due to Catch Exception com.cloud.utils.exception.CloudRuntimeException, create StoragePool failed due to com.cloud.utils.exception.CloudRuntimeException: There is a SR using the same configuration server:192.168.16.247, serverpath:/primary for pool 08325974-a670-3b4a-9362-cfd5a6e123c5 on host:e1cc90c7-6e18-4922-bb87-2141cc605a3b on host:e1cc90c7-6e18-4922-bb87-2141cc605a3b pool: 192.168.16.247/primary
解决:
XenServer已经挂载NFS存储,需删除
3.调整相关参数
在全局设置中,搜索相关参数名,对参数进行修改,优化整个应用。
编号 |
名称 |
默认值 |
修改值 |
001 |
secstorage.allowed.internal.sites 二级存储通讯地址范围 |
空 |
二级存储所在的网段 如二级存储为\ nfs://10.32.66.249/ 则此处可以设置为\ 10.32.66.0/16 |
002 |
expunge.interval 表示多少秒之后执行实例彻底删除的操作 |
86400 |
根据实际情况填写,比如 用户需要保留2小时,那就填写7200 |
003 |
expunge.delay 表示在彻底删除被销毁的实例前需要等待多少秒 |
86400 |
根据实际情况填写,默认跟变量expunge.interval相同,可以自行设置 |
004 |
expunge.workers 执行彻底删除实例的任务数 |
1 |
可以设置为8,同时可以对8个已经销毁的实例进行删除操作 |
005 |
cpu.overprovisioning.factor |
1 |
CPU超分值,一般3~4较合理 |
006 |
mem.overprovisioning.factor |
1 |
MEM超分值 |
007 |
storage.overprovisioning.factor |
2 |
存储超分值,默认2 |
4.启用区域
重新登录管理端页面,依次点击左侧 基础架构,区域,选择刚创建的区域,然后点击启用
如果配置无误,稍后CPVM和SSVM均已创建成功
安装成功
5.修改admin密码
略
6.上传ISO
注意:如上URL必须为http方式,且保证正常可以下载该文件。应保证服务器地址,处于secstorage.allowed.internal.sites参数配置的网段中
7.创建来宾网络
使用admin账户登录到CloudStack界面,依次点击:网络,点击右侧“添加来宾网络”
8.创建计算方案
使用admin账户登录到CloudStack界面,依次点击:服务方案,点击右侧“添加计算方案”
根据需求,依次创建合适的计算方案,主要定义CPU和内存
9.创建磁盘方案
使用admin账户登录到CLoudStack界面,依次点击:服务方案, 在右侧选择视图中选择“磁盘方案,然后点击右侧“””
添加磁盘方案:
例如:添加一个使用共享存储的20G磁盘方案
10.添加实例
#成功启动实例