Cloudstack安装
官方文档参考:
Cloudstack主要分Management和Agent两部分。
系统版本:CentOS 6.8
Management: cpu1,ram 2048MB,disk 50GB
Agent: cpu1,ram 4096MB,disk 50GB
1、安装epel源
1 | yum -y install epel-release |
2、安装 cloudstack 源
1 2 3 4 5 6 | vim /etc/yum .repos.d /cloudstack .repo [cloudstack] name=cloudstack baseurl=http: //cloudstack .apt-get.eu /centos/6/4 .8/ enabled=1 gpgcheck=0 |
或者直接至 下载rpm包进行安装
3、NTP安装
1 | yum -y install ntp |
设置服务开机启动
1 2 | chkconfig ntpd on service ntpd start |
4、NFS安装
1) Management
使用NFS做为主存储和辅助存储,它主要在Management上安装。他主要作为二级存储,用于存储模板文件,ISO 镜像和磁盘卷快照。
1 | yum -y install nfs-utils |
配置NFS提供两个不同的挂载点。通过编辑/etc/exports文件即可简单实现。
1 2 | vim /etc/exports /export/secondary *(rw,async,no_root_squash,no_subtree_check) |
注意配置文件中指定了系统中并不存在的目录,下面需要创建这些目录并设置合适的权限。
1 | mkdir -p /export/secondary |
查看需要使用的磁盘,格式化
1 | fdisk -l |
1 | mkfs.ext4 /dev/sdb |
输入y
挂载
1 2 | echo "/dev/sdb /export/secondary ext4 defaults 0 0" >> /etc/fstab mount -a |
配置NFS,在/etc/sysconfig/nfs文件中取消如下选项的注释:
1 2 3 4 5 6 | LOCKD_TCPPORT=32803 LOCKD_UDPPORT=32769 MOUNTD_PORT=892 RQUOTAD_PORT=875 STATD_PORT=662 STATD_OUTGOING_PORT=2020 |
如果服务器的防火墙开启,需配置防火墙策略,允许NFS客户端访问。编辑文件/etc/sysconfig/iptables
1 2 3 4 5 6 7 8 9 10 11 12 | -A INPUT -m state --state NEW -p udp --dport 111 -j ACCEPT -A INPUT -m state --state NEW -p tcp --dport 111 -j ACCEPT -A INPUT -m state --state NEW -p tcp --dport 2049 -j ACCEPT -A INPUT -m state --state NEW -p tcp --dport 32803 -j ACCEPT -A INPUT -m state --state NEW -p udp --dport 32769 -j ACCEPT -A INPUT -m state --state NEW -p tcp --dport 892 -j ACCEPT -A INPUT -m state --state NEW -p tcp --dport 892 -j ACCEPT -A INPUT -m state --state NEW -p udp --dport 892 -j ACCEPT -A INPUT -m state --state NEW -p tcp --dport 875 -j ACCEPT -A INPUT -m state --state NEW -p udp --dport 875 -j ACCEPT -A INPUT -m state --state NEW -p tcp --dport 662 -j ACCEPT -A INPUT -m state --state NEW -p udp --dport 662 -j ACCEPT |
重新启动iptables服务
1 | service iptables restart |
最后需要配置NFS服务为开机自启动,执行如下命令:
1 2 3 4 | service rpcbind start service nfs start chkconfig rpcbind on chkconfig nfs on |
hosts文件配置
1 | vi /etc/hosts |
2)Agent
1 | mkdir -p /export/primary |
查看需要使用的磁盘,格式化
1 | fdisk -l |
1 | mkfs.ext4 /dev/sdb |
输入y
挂载
1 2 | echo "/dev/sdb /export/primary ext4 defaults 0 0" >> /etc/fstab mount -a |
hosts文件配置
1 | vi /etc/hosts |
3) 测试nfs服务端是否能访问
在 agent端执行showmount -e 主机地址
mount -t nfs 192.168.137.13:/export/secondary /opt
管理服务器(Management)搭建
1、安装Management
1 | yum -y install cloudstack-management cloudstack-common |
2、数据库安装和配置
1 | yum -y install mysql-server |
配置文件/etc/my.cnf。在[mysqld]下添加下列参数:
1 2 3 4 5 | innodb_rollback_on_timeout=1 innodb_lock_wait_timeout=600 max_connections=350 log-bin=mysql-bin binlog- format = 'ROW' |
设置开机自启动
1 2 | service mysqld start chkconfig mysqld on |
设置mysql 密码及范围权限
1 2 | mysqladmin -uroot password 123456 mysql -uroot -p123456 -e "GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY '123456'" ; |
3、Cloudstack数据库初始化
1 | cloudstack-setup-databases cloud:123456@localhost --deploy-as=root:123456 |
4、启动Management服务
1 | cloudstack-setup-management |
5、上传系统模板
CloudStack通过一系列系统虚拟机提供功能,如访问虚拟机控制台,如提供各类网络服务,以及管理辅助存储的中的各类资源。该步骤会获取系统虚拟机模板,用于云平台引导后系统虚拟机的部署。
然后需要下载系统虚拟机模板,并把这些模板部署于刚才创建的辅助存储中;管理服务器包含一个脚本可以正确的操作这些系统虚拟机模板:
1 2 3 4 | /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 |
6、访问页面 http://IP:8080/client/
默认用户’admin’和密码’password’来登录。
Agent搭建
1、安装Agent
1 | yum -y install cloudstack-agent cloudstack-common |
2、虚拟化配置
KVM中我们有两部分需要进行配置, libvirt和QEMU
1)编辑QEMU VNC配置文件/etc/libvirt/qemu.conf
1 | vnc_listen=0.0.0.0 |
2)CloudStack使用libvirt管理虚拟机,/etc/libvirt/libvirtd.conf文件中进行配置
1 2 3 4 5 | listen_tls = 0 listen_tcp = 1 tcp_port = "16059" auth_tcp = "none" mdns_adv = 0 |
配置/etc/sysconfig/libvirtd文件
1 | LIBVIRTD_ARGS= "--listen" |
3)重启libvirtd
1 | service libvirtd restart |
4)检查
1 | lsmod | grep kvm |
如果没有结果执行
1 2 | modprobe kvm modprobe kvm_intel |