O ideal é a instalação mínima do
CentOS7.
Após a instalação, vamos efetuar o update do sistema:
# yum update -y
Vamos instalar alguns pacotes para o uso, no caso o Vim e o wget:
# yum install vim wget -y
Adicione o repositório do Epel:
# yum install epel-release -y
Instale o NFS:
# yum install nfs-utils -y
Ative-o na inicialização:
# systemctl enable rpcbind
# systemctl enable nfs
No arquivo do NFS, adicione as configurações:
# vim /etc/sysconfig/nfs
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
RQUOTAD_PORT=875
STATD_PORT=662
STATD_OUTGOING_PORT=2020
Vamos criar para o NFS que vamos usar para os storage do
Cloudstack, o primário e o secundário:
# mkdir -p /export/primary
# mkdir /export/secondary
Adicione no
/etc/exports:
/export/secondary *(rw,async,no_root_squash,no_subtree_check)
/export/primary *(rw,async,no_root_squash,no_subtree_check)
Inicie o NFS:
# systemctl start rpcbind
# systemctl start nfs
Coloque o SELinux em modo permissive. Edite o arquivo
/etc/selinux/config, deixando-o assim:
SELINUX=permissive
Caso saiba usar o SELinux, só não alterar e deixar ativado.
Interface de Rede
Vamos ajustar a interface de rede.
Instale o bridge-utils:
# yum install bridge-utils -y
Crie a interface "ifcfg-cloudbr0":
# vim /etc/sysconfig/network-scripts/ifcfg-cloudbr0
E adicione:
DEVICE=cloudbr0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=static
IPV6INIT=no
IPV6_AUTOCONF=no
DELAY=5
IPADDR=192.168.122.254
GATEWAY=192.168.122.1
NETMASK=255.255.255.0
DNS1=208.67.222.222
DNS2=208.67.220.200
STP=yes
USERCTL=no
NM_CONTROLLED=no
EM "IPADDR", coloque o IP de seu servidor. No exemplo, estou usando um já pré-determinado por mim, DNS1 e DNS2, use os DNS de sua preferência.
Agora, edite o arquivo "ifcfg-eth0", no meu caso é o "eth0", mas conforme o hardware, pode ser outro nome a sua interface de rede
# vim /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
DEVICE=eth0
ONBOOT=yes
BRIDGE=cloudbr0
Desative NetworkManager e ative o network:
# systemctl disable NetworkManager
# systemctl enable network
Ajuste o seu hostname, no caso, estou usando o hostname de Cloudstack:
# vim /etc/hosts
192.168.122.254 cloudstack
Instale e ative na inicialização o NTP:
# yum install ntp -y
# systemctl enable ntpd
Desative o Firewalld:
# systemctl disable firewalld
Edita o arquivo
/etc/idmapd.conf e descomente a linha "Domain", coloque o nome do seu host:
Domain = cloudstack
Agora vamos reiniciar o servidor.
# reboot
Instalando CloudStack
Após reiniciar o servidor, vamos instalar o Cloudstack.
Estamos usando a versão 4.11, que é LTS, pois a 4.12 é informada como não LTS.
Vamos adicionar o repositório do cloudstack:
# vim /etc/yum.repos.d/cloudstack.repo
[cloudstack]
name=cloudstack
baseurl=http://download.cloudstack.org/centos/7/4.11/
enabled=1
gpgcheck=0
Agora, vamos instalar o Cloudstack e também o banco de dados necessário, que no caso, vamos utilizar o MariaDB:
# yum install cloudstack-management cloudstack-usage mariadb-server mariadb -y
No
/etc/my.cnf, na seção "[mysqld]", adicione:
# vim /etc/my.cnf
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format = 'ROW'
Agora inicie o MariaDB e ative na inicialização:
# systemctl start mariadb
# systemctl enable mariadb
Defina a senha de root e algumas configurações do seu MariaDB:
# mysql_secure_installation
Vamos configurar o CloudStack:
# cloudstack-setup-databases cloud:cloud@localhost --deploy-as=root:SENHAMARIADB -i 192.168.122.254
Execute o comando novamente, para iniciar e se estiver tudo Ok:
# cloudstack-setup-management
Ative na inicialização:
# systemctl enable cloudstack-management
Vamos baixar a System VM:
# /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /export/secondary -u http://download.cloudstack.org/systemvm/4.11/systemvmtemplate-4.11.3-kvm.qcow2.bz2 -h kvm -F
Feito, instalado. Agora vamos para o
KVM.