继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

CloudStack扁平化安装+KVM

largeQ
关注TA
已关注
手记 960
粉丝 92
获赞 585

一、环境

1.软件信息

名称

版本

备注

CloudStack

4.3.1

Centos

6.5

Mysql

5.x

系统自带

Tomcat

6.x/7.x

系统自带

二、配置Cloudstack计算节点

1.配置YUM源安装cloudstack-agent

[root@CloudStack ~]#  mkdir /opt/cloudstack     #创建Cloudstack文件夹,将安装包安装上传至此

[root@CloudStack cloudstack]# ls

cloudstack-agent-4.5.2-1.el6.x86_64.rpm            cloudstack-mysql-ha-4.5.2-1.el6.x86_64.rpm

cloudstack-awsapi-4.5.2-1.el6.x86_64.rpm           cloudstack-usage-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      

[root@CloudStack ~]# yum install -y createrepo   #可使用在线源或者本地源安装此包

[root@CloudStack ~]#  createrepo -p -d -o /opt/cloudstack /opt/cloudstack/    #建立本地安装源

[root@CloudStack ~]# vim CentOS-Base.repo     #在文件底部添加下面内容

[cloudstack]

name=cloudstack

gpgcheck=0

enabled=1

baseurl=file:///opt/cloudstack

[root@compter cloudstack]# yum install  -y cloudstack-agent  qemu-kvm  #安装cloudstack agent软件

2. 配置Libvirt

[root@compter cloudstack]# vi /etc/libvirt/libvirt.conf   #添加下面内容

listen_tls = 0

listen_tcp = 1

tcp_port = "16509"

auth_tcp = "none"

mdns_adv = 0

[root@compter cloudstack]# vi /etc/sysconfig/libvirtd

...   ##取消改行的注释

LIBVIRTD_ARGS="--listen"

[root@compter cloudstack]# vi /etc/libvirt/qemu.conf

...    ##取消如下行注释

vnc_listen = "0.0.0.0"

错误1:

2016-08-09 17:24:40.743+0000: 2982: error : virNetTLSContextCheckCertFile:113 : Cannot  directory

解决:

vim  /etc/libvirt/libvirtd.conf   #取消下面注释

listen_tls = 0

3.配置防火墙

iptables -I INPUT -p tcp -m tcp --dport 22 -j ACCEPT

iptables -I INPUT -p tcp -m tcp --dport 1798 -j ACCEPT

iptables -I INPUT -p tcp -m tcp --dport 16509 -j ACCEPT

iptables -I INPUT -p tcp -m tcp --dport 5900:6100 -j ACCEPT

iptables -I INPUT -p tcp -m tcp --dport 49152:49216 -j ACCEPT

iptables-save > /etc/sysconfig/iptables

4.配置网卡

[root@compter cloudstack]# cd /etc/sysconfig/network-scripts/

[root@compter cloudstack]# cp ifcfg-eth0 ifcfg-cloudbr0

分别编辑eth0和br0

ifcfg-eth0改成如下:

DEVICE=eth0

TYPE=Ethernet

ONBOOT=yes

NM_CONTROLLED=yes

BOOTPROTO=none

BRIDGE=br0

ifcfg-cloudbr0改成如下:

DEVICE=cloudbr0

TYPE=Bridge

ONBOOT=yes

NM_CONTROLLED=yes

BOOTPROTO=static

IPADDR=192.168.16.245

NETMASK=255.255.255.0

GATEWAY=192.168.16.1

[root@compter cloudstack]#  /etc/init.d/network restart

三、配置Cloudstack管理节点

1.安装cloudstack

[root@CloudStack ~]#  mkdir /opt/cloudstack     #创建Cloudstack文件夹,将安装包安装上传至此

[root@CloudStack cloudstack]# ls

cloudstack-agent-4.5.2-1.el6.x86_64.rpm            cloudstack-mysql-ha-4.5.2-1.el6.x86_64.rpm

cloudstack-awsapi-4.5.2-1.el6.x86_64.rpm           cloudstack-usage-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

[root@CloudStack ~]# yum install -y createrepo   #可使用在线源或者本地源安装此包

[root@CloudStack ~]#  createrepo -p -d -o /opt/cloudstack /opt/cloudstack/    #建立本地安装源

[root@CloudStack ~]# vim CentOS-Base.repo     #在文件底部添加下面内容

[cloudstack]

name=cloudstack

gpgcheck=0

enabled=1

baseurl=file:///opt/cloudstack

[root@CloudStack ~]#yum -y install cloudstack-management

2.安装Mysql数据库

(1) 安装Mysql 服务器

[root@CloudStack ~]# yum install mysql-server -y    #安装mysql

[root@CloudStack ~]# vi /etc/my.cnf       #在底部添加下面内容

innodb_rollback_on_timeout=1

innodb_lock_wait_timeout=600

max_connections=350

log-bin=mysql-bin

binlog-format='ROW'

[root@CloudStack ~]# /etc/init.d/mysqld start       #启动

[root@CloudStack ~]# mysqladmin  -uroot password root    #增加密码

(2) 创建CloudStack 的初始化数据库文件

[root@CloudStack ~]# cloudstack-setup-databases cloud:cloud@localhost --deploy-as=root:root -e file -m password -k password -i 192.168.16.245    

#尾部IP为本机

3.配置Cloudstack管理节点

(1) 挂载辅助存储

[root@CloudStack ~]#  rpm -qa nfs-utils rpcbind    #查看是否安装nfs

[root@CloudStack ~]# yum install -y nfs-utils rpcbind     #若没有安装则安装

[root@CloudStack ~]# /etc/init.d/rpcbind start ; /etc/init.d/nfs start    #启动NFS服务(必须先启动RPC)

[root@CloudStack ~]#  mount -t nfs 192.168.16.246:/data /mnt/secondary/    #挂载辅助存储

(2) 编辑防火墙设置

[root@CloudStack ~]# 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

[root@CloudStack ~]# /etc/init.d/iptables start

[root@CloudStack ~]# /etc/init.d/iptables save

(3) 上传KVM系统虚拟机模版

[root@CloudStack /]#

 

/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt 

-m /mnt/secondary -u http://

你的服务器地址 /systemvm64template-2014-01-14-master-kvm.qcow2.bz2 -h kvm –F  

#从网络导入KVM模板

或者:

[root@CloudStack /]# /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary/ -f /root/systemvm64template-2015-05-14-4.5.1-kvm.qcow2.bz2  -h kvm -F              

#从本地路径中导入KVM模板

(4) 启动管理服务

[root@CloudStack ~]# cloudstack-setup-management

(5) 相关错误解决

错误1:

clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)

解决:

/etc/init.d/iptables stop 

错误2:

mkdir: cannot create directory `/mnt/secondary/template': Permission denied

Failed to write to mount point /mnt/secondary -- is it mounted?

解决:

服务端:chown -R nfsnobody:nfsnobody /data 

错误3:

Checking hostname ... [Failed]

Please edit /etc/hosts, add a Fully Qualified Domain Name as your hostname

解决:

vi /etc/hosts 添加本地主机名

四、CLoudStack区域及云资源池配置

1.登录信息

登陆Cloustack管理节点平台

登录地址

账户

密码

备注

http://192.168.16.245:8080/client

admin

password

2.新建区域

点击左侧,基础区域,区域,点击新建:

wKiom1er2MeSVJ_rAAB7gllmHZs967.png-wh_50

3.设置区域

输入区域信息:

wKioL1er2MehAhodAACG7M6wMck602.png-wh_50

wKiom1er2MfQVNNmAAAicejvmTA398.png-wh_50

wKioL1er2MihKZvAAAAo1OMwWAw901.png-wh_50

3. 设置网络

编辑网络标签,按规划,分为两个网络:

使用一块网卡,并设置流量标签为:cloudbr0

wKiom1er2MiiWtsbAADa6tYLWhY189.png-wh_50

wKioL1er2MmQKRhAAAB7Tcy_mTo868.png-wh_50

4.配置提供点

wKioL1er2Mmh1MQtAABvFi5ZhrE553.png-wh_50

5.配置来宾网络

wKiom1er2MmCgQPuAABWQFLwj4o144.png-wh_50

6.配置群集

wKioL1er2MrCbfgDAAAN9wiqfk0017.png-wh_50

7.添加主机

wKiom1er2MrzkuYxAABBlOOHObI403.png-wh_50

8.由于使用本地存储,所以跳过主存储配置,直接添加二级存储wKiom1er2MqBZAa5AAA5Qn7xIyQ065.png-wh_50

9.完成区域创建

wKioL1er2MrjJOzlAAAgeXmmVLs186.png-wh_50

spacer.gif

建议:

打开管理端日志: tail -f /var/log/cloudstack/management/management-server.log

打开计算端日志: tail -f /var/log/cloudstack/agent/agent.log

wKioL1er2MuhA84EAAAL5uKURI0748.png-wh_50

10. 调整相关参数

在全局设置中,搜索相关参数名,对参数进行修改,优化整个应用。

编号

名称

默认值

修改值

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

11.相关错误解决

错误1:

FATAL: Error inserting kvm_intel (/lib/modules/2.6.32-573.el6.x86_64/kernel/arch/x86/kvm/kvm-intel.ko): Unknown symbol in module, or unknown parameter (see dmesg)

解决:

编辑虚拟机的vmx文件,添加 vhv.enable= "TRUE"

错误2:

无法添加KVM主机

解决:

KVM主机是否启动KVM模块, 管理节点网络便签是否更改,删除管理节点数据库 重新建立

错误3:

系统虚拟机啊状态running,代理状态空

wKiom1er2MvTcbVGAACdr87YFMU930.png-wh_50

解决:开启混杂模式

wKiom1er2MuR-0wuAABEB0UXxVQ446.png-wh_50

五、其他配置

1.上传ISO模版等

使用admin账户登录到CloudStack界面,依次点击:模版,再右侧选择视图中选择ISO,点击右侧注册ISO:

wKioL1er2Myi-AY6AADd3hfnVcY158.png-wh_50

wKiom1er2Mzh5g8ZAAA4Z8_d414746.png-wh_50

注意:如上URL必须为http方式,且保证正常可以下载该文件。应保证服务器地址,处于secstorage.allowed.internal.sites参数配置中的网段内。

2.创建网络(基础网络无法添加,高级网络才可以)

使用admin账户登录到CloudStack界面,依次点击:网络,点击右侧“添加来宾网络”:

wKioL1er2M3y5qrXAAFyciOpyF0088.png-wh_50

wKioL1er2M2j28IUAAAsqODHGmA611.png-wh_50

©著作权归作者所有:来自51CTO博客作者糖在兜兜里的原创作品,如需转载,请与作者联系,否则将追究法律责任

cloudstackIaaS


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP