Instalação dos dois servidores
A instalação do Proxmox VE é extremamente simples e fácil.
Todas as indicações que aqui coloco são para ser feitas nas duas máquinas, exceptuando um ponto.
Para efeitos de tirar printscreens, instalei o Proxmox dentro de uma máquina virtual em Virtualbox, mas a sua instalação e explicação também foi feita em duas máquinas físicas.
Nos dois computadores, arrancar com o cd de instalação e tem-se o menu de boot. A não ser que queiram passar algum parâmetro na instalação, podem carregar na tecla Enter.
O primeiro passo é aceitar a licença GPL.
A seguir é preciso escolher o disco onde vai ser instalado o Proxmox VE. Caso a máquina ainda só tenha o disco de instalação, pode-se continuar este passo. Caso tenha os dois, é escolher o disco que não vai ficar no cluster.
Temos que escolher o país onde nos encontramos, time zone e o teclado.
Temos que colocar qual é a password de root e a indicação de um email, que serve para o Proxmox enviar certos alertas.
Na primeira máquina, temos que configurar o nome e domínio onde vai estar, o ip, netmask, gateway e servidor de dns.
O nome e ip têm que ser diferentes nas duas máquinas, por isso, na primeira máquina, ficaria algo como:
proxmox1.nemesis11.com 192.168.1.100 255.255.255.0 192.168.1.254 192.168.1.254
Na segunda máquina pode ficar algo como:
proxmox2.nemesis11.com 192.168.1.101 255.255.255.0 192.168.1.254 192.168.1.254
Em seguida começa a instalação. A primeira acção que ele vai tomar é particionar o disco onde vai ser instalado.
Em seguida, vai instalar os pacotes incluídos no cd.
No fim, só temos que retirar o cd de instalação e efectuar um reboot à máquina.
No bootloader, podem verificar que o kernel é o 2.6.32, que tem incluídos o KVM e o OpenVZ.
No fim, temos a indicação que podemos gerir a máquina a partir do browser, a partir do ip configurado e um terminal, onde vamos aceder com o utilizador “root”.
Neste ponto, não se acede logo à consola de gestão, porque temos que configurar o cluster.
Depois de acedermos como root à consola, ou via ssh às duas máquinas, temos que fazer os updates, com o comando:
apt-get update && apt-get dist-upgrade
Depois dos updates, efectuem um reboot com o comando:
reboot
Caso, queiram ter um kernel mais recente, com mais funcionalidades do KVM e não precisarem ou quiserem usar OpenVZ, como é o meu caso, corram o comando:
apt-get install proxmox-ve-2.6.35
E efectuem um reboot.
Para confirmarem que têm a mesma versão do kernel e ferramentas, executem o comando:
pveversion -v
E devem ter como output o seguinte:
pve-manager: 1.8-18 (pve-manager/1.8/6070) running kernel: 2.6.35-1-pve proxmox-ve-2.6.35: 1.8-11 pve-kernel-2.6.32-4-pve: 2.6.32-33 pve-kernel-2.6.35-1-pve: 2.6.35-11 qemu-server: 1.1-30 pve-firmware: 1.0-11 libpve-storage-perl: 1.0-17 vncterm: 0.9-2 vzctl: 3.0.28-1pve1 vzdump: 1.2-14 vzprocps: 2.0.11-2 vzquota: 3.0.11-1 pve-qemu-kvm: 0.14.1-1 ksm-control-daemon: 1.0-6
Configuração do Cluster
Para configurarmos as duas máquinas em cluster, primeiro temos que colocar as duas máquinas a comunicarem uma com a outra e só depois a configuração do DRBD.
Na primeira máquina, como root, correr o comando:
pveca -c
Este comando vai criar o cluster e podemos ver o seu estado correndo o comando:
pveca -l
Com este comando podemos confirmar que o cluster está criado e que tem apenas 1 máquina. Devemos ter o seguinte output:
CID----IPADDRESS----ROLE-STATE--------UPTIME---LOAD----MEM---DISK 1 : 192.168.1.100 M A 00:44 0.01 5% 4%
Podemos ver que é o primeiro nó, tem a função de “Master” do cluster e está activo.
Na segunda máquina, vamos correr um comando para a adicionar ao cluster:
pveca -a -h 192.168.1.100
O ip é do computador master e podemos ver se tudo correu correctamente, com o comando:
pveca -l
Onde devemos ter o seguinte output:
CID----IPADDRESS----ROLE-STATE--------UPTIME---LOAD----MEM---DISK 1 : 192.168.1.100 M A 00:48 0.00 4% 4% 2 : 192.168.1.101 N A 00:48 0.00 5% 3%
Vemos assim que a segunda máquina, com o ip 192.168.1.101 é o segundo nó do cluster e que está activa.
Em seguida temos que configurar o DRBD nos segundos discos de cada máquina e para tal é preciso configurar a segunda placa de rede em cada uma das máquinas.
Para esta segunda placa de rede, tenho-as ligadas com um cabo cruzado, mas pode ser usado um switch e tem mesmo que ser usado, caso sejam mais que duas máquinas.
Na primeira máquina vamos editar o ficheiro de configuração da rede, com o comando:
nano /etc/network/interfaces
E vamos colocar a seguinte configuração:
auto lo iface lo inet loopback auto eth1 iface eth1 inet static address 10.0.0.100 netmask 255.255.255.0 auto vmbr0 iface vmbr0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.254 bridge_ports eth0 bridge_stp off bridge_fd 0
Nós só vamos alterar a configuração do dispositivo “eth1”. O “vmbr0” é configurado na instalação.
Como podem ver, dei o ip 10.0.0.100 com a subnet 255.255.255.0 à placa “eth1”
Em seguida efectuamos um restart às configurações da placa de rede, com o comando:
/etc/init.d/networking restart
Na segunda máquina, vamos fazer algo semelhante, editando o mesmo ficheiro:
nano /etc/network/interfaces
E vamos colocar a seguinte configuração:
auto lo iface lo inet loopback auto eth1 iface eth1 inet static address 10.0.0.101 netmask 255.255.255.0 auto vmbr0 iface vmbr0 inet static address 192.168.1.101 netmask 255.255.255.0 gateway 192.168.1.254 bridge_ports eth0 bridge_stp off bridge_fd 0
Como podem ver, dei o ip 10.0.0.101 com a subnet 255.255.255.0 à placa “eth1”
Em seguida efectuamos um restart às configurações da placa de rede, com o comando:
/etc/init.d/networking restart
O passo seguinte é confirmar que temos conectividade entre estas duas placas. No primeiro computador efectuamos um ping ao segundo computador, com o comando:
ping -c 4 10.0.0.101
Devemos ter como resposta o seguinte:
PING 10.0.0.101 (10.0.0.101) 56(84) bytes of data. 64 bytes from 10.0.0.101: icmp_seq=1 ttl=64 time=6.04 ms 64 bytes from 10.0.0.101: icmp_seq=2 ttl=64 time=0.089 ms 64 bytes from 10.0.0.101: icmp_seq=3 ttl=64 time=0.099 ms 64 bytes from 10.0.0.101: icmp_seq=4 ttl=64 time=0.094 ms --- 10.0.0.101 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 2999ms rtt min/avg/max/mdev = 0.089/1.581/6.044/2.576 ms
Na segunda máquina, temos que pingar a primeira, com o comando:
ping -c 4 10.0.0.100
E devemos ter como resposta:
PING 10.0.0.100 (10.0.0.100) 56(84) bytes of data. 64 bytes from 10.0.0.100: icmp_seq=1 ttl=64 time=0.108 ms 64 bytes from 10.0.0.100: icmp_seq=2 ttl=64 time=0.103 ms 64 bytes from 10.0.0.100: icmp_seq=3 ttl=64 time=0.087 ms 64 bytes from 10.0.0.100: icmp_seq=4 ttl=64 time=0.098 ms --- 10.0.0.100 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 2998ms rtt min/avg/max/mdev = 0.087/0.099/0.108/0.007 ms
Só se tivermos a ligação de rede bem efectuada, é que podemos passar à fase seguinte de configurar os segundos discos de cada máquina com DRBD.