Apache Cloudstack - LinuxUserGroupUWSP/RackMesa GitHub Wiki
Installing Management
Prerequisites
Install NTP
yum -y install ntp
Create a repo for Cloudstack
vi /etc/yum.repos.d/cloudstack.repo
[cloudstack]
name=cloudstack
baseurl=http://cloudstack.apt-get.eu/centos/7/4.9/
enabled=1
gpgcheck=0
Install MariaDB
yum -y install mariadb-server
Configure MariaDB
vi /etc/my.cnf
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format = 'ROW'
Install MySQL connector for Python
vi /etc/yum.repos.d/mysqlcom.repo
[mysql-connectors-community]
name=MySQL Community connectors
baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/$releasever/$basearch/
enabled=1
gpgcheck=1
yum install -y mysql-connector-python
Start MariaDB
systemctl start mariadb
Temporarily disable SELinux
setenforce 0
Install the management components
Install the management package
yum -y install cloudstack-management
Run Cloudstack setup scripts
cloudstack-setup-databases cloud:password@localhost --deploy-as=root
cloudstack-setup-management --tomcat7
/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
Start Cloudstack's web UI
systemctl start tomcat
Browse to web UI
http://localhost:8080/client
Installing Agent
Install the agent package
yum -y install cloudstack-agent
Have QEMU's VNC listen on all interfaces
vi /etc/libvirt/qemu.conf
vnc_listen=0.0.0.0
Edit libvirtd's configuration to allow it to listen for TCP connections
vi /etc/libvirt/libvirtd.conf
listen_tls = 0
listen_tcp = 1
tcp_port = "16059"
auth_tcp = "none"
mdns_adv = 0
Edit libvirtd's service configuration to listen
vi /etc/sysconfig/libvirtd
#LIBVIRTD_ARGS="--listen"
cp cacert.pem /etc/pki/CA/cacert.pem
cp servercert.pem /etc/pki/libvirt/servercert.pem
cp serverkey.pem /etc/pki/libvirt/serverkey.pem
service libvirtd restart
Create an interface in VLAN 100 management
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3.100
DEVICE=enp0s3.100
HWADDR=08:00:27:36:3f:0d
ONBOOT=yes
HOTPLUG=no
BOOTPROTO=none
TYPE=Ethernet
VLAN=yes
IPADDR=192.168.42.11
GATEWAY=192.168.42.1
NETMASK=255.255.255.0
Create an interface in VLAN 200 public network
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3.200
DEVICE=enp0s3.200
HWADDR=08:00:27:36:3f:0d
ONBOOT=yes
HOTPLUG=no
BOOTPROTO=none
TYPE=Ethernet
VLAN=yes
BRIDGE=cloudbr0
Create an interface in VLAN 300 private network
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3.300
DEVICE=eth0.300
HWADDR=08:00:27:36:3f:0d
ONBOOT=yes
HOTPLUG=no
BOOTPROTO=none
TYPE=Ethernet
VLAN=yes
BRIDGE=cloudbr1
Create an interface to bridge the VMs to VLAN 200 public
vi /etc/sysconfig/network-scripts/ifcfg-cloudbr0
DEVICE=cloudbr0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=none
IPV6INIT=no
IPV6_AUTOCONF=no
DELAY=5
STP=yes
Create an interface to bridge the VMs to VLAN 300 private
vi /etc/sysconfig/network-scripts/ifcfg-cloudbr1
DEVICE=cloudbr1
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=none
IPV6INIT=no
IPV6_AUTOCONF=no
DELAY=5
STP=yes