Configurando a Rede
O Cluster pode operar em modo routed ou em modo bridge, o modo bridge, o padrão é que será abordado nesse artigo.
Configure a bridge manualmente, altere o IP para cada nó do seu cluster.
Edite e remova as entradas da sua interface eth0 e adicione os seguintes parâmetros no arquivo "/etc/network/interfaces":
auto xen-br0
iface xen-br0 inet static
address 192.168.1.65
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
bridge_ports eth0
bridge_stp off
bridge_fd 0
Verificando a operação da bridge:
# ip a show xen-br0
# brctl show xen-br0
Instalando o Cluster Manager - Ganeti
A instalação será feita sem o uso do gerenciado de pacotes apt, realizaremos a compilação do código fonte para obtermos a versão mais recente do pacote:
# wget http://ganeti.googlecode.com/files/ganeti-2.4.2.tar.gz
# tar xvzf ganeti-2.4.2.tar.gz
# cd ganeti-2.4.2
# ./configure --localstatedir=/var --sysconfdir=/etc
# make
# make install
# mkdir /srv/ganeti
# mkdir /srv/ganeti/os
# mkdir /srv/ganeti/export
Instalando o script de inicialização do cluster:
Junto com o pacote de instalação temos um diretório "examples" que pode ser encontrado alguns scripts úteis como por exemplo o script de inicialização do Ganeti, então vamos copiá-lo e adicionar para iniciar junto com o Sistema:
# cp /doc/examples/ganeti.initd /etc/init.d/ganeti
# chmod +x /etc/init.d/ganeti
# update-rc.d ganeti defaults 20 80
Instalando o Ganeti Cron job:
O cron job do Ganeti executa o comando "ganeti-wacth" periodicamente para verificar o status de todas as instancias do clusters.
Copie o arquivo abaixo para o diretório do cron:
# cp doc/examples/ganeti.cron /etc/cron.d/ganeti
Gerando as chaves de criptografia do Openssh:
Obs.: Esse procedimento somente foi necessário no Nó Master do Cluster.
# ssh-keygen
Instalando o instance script para instalação de instâncias Debian e Ubuntu.
Compilar e instalar o pacote para a criação de máquinas virtuais e a instalação do Sistema Operacional:
# wget http://ganeti.googlecode.com/files/ganeti-instance-debootstrap-0.9.tar.gz
# tar xzf ganeti-instance-debootstrap-0.9.tar.gz
# cd ganeti-instance-debootstrap-0.9
# ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc --with-os-dir=/srv/ganeti/os
# make
# make install