评论

收藏

[MySQL] CloudStack扁平化安装+KVM

数据库 数据库 发布于:2021-07-03 21:37 | 阅读数:361 | 评论:0

  一、环境
  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.新建区域
点击左侧,基础区域,区域,点击新建:
  

DSC0000.png

  
3.设置区域
输入区域信息:
DSC0001.png

  

DSC0002.png

DSC0003.png

  

3. 设置网络
编辑网络标签,按规划,分为两个网络:

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


DSC0004.png

  

  

DSC0005.png

  

  4.配置提供点
  

DSC0006.png

  

  5.配置来宾网络
  

DSC0007.png

  6.配置群集
DSC0008.png

  7.添加主机
  

DSC0009.png

  

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

  9.完成区域创建
  

  

  

  

  

DSC00011.png

  

DSC00012.png

  建议:
  打开管理端日志: tail -f /var/log/cloudstack/management/management-server.log
  打开计算端日志: tail -f /var/log/cloudstack/agent/agent.log
DSC00013.png

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,代理状态空
  


DSC00014.png

  解决:开启混杂模式
   DSC00015.png
  

  五、其他配置
1.上传ISO模版等
使用admin账户登录到CloudStack界面,依次点击:模版,再右侧选择视图中选择ISO,点击右侧注册ISO:
  

  

  

DSC00016.png

DSC00017.png

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

2.创建网络(基础网络无法添加,高级网络才可以
使用admin账户登录到CloudStack界面,依次点击:网络,点击右侧“添加来宾网络”:
  

  

DSC00018.png


  


  
关注下面的标签,发现更多相似文章