Certifique-se que o template do LVS Load Balancer, disponível no Painel de Controle, foi instalado no Cloud Server.
LVS.cf
Pare o serviço “pulse” com o comando service pulse stop.

A configuração do servidor LVS é feita através do arquivo lvs.cf, que precisa ser editado pelo comando vi /etc/sysconfig/ha/lvs.cf
Abaixo está o conteúdo do arquivo e em vermelho o que precisa ser modificado conforme suas configurações. Foi adicionado o número da linha (#) para facilitar o entendimento porém ele NÃO deve estar presente no arquivo de configuração, assim como o cabeçalho também não. Tecle “a” para entrar em modo de edição.
# TEXTO
- serial_no = 101
- primary = xxx.xxx.xxx.xxx
- service = lvs
- backup = 0.0.0.0
- heartbeat = 1
- heartbeat_port = 539
- keepalive = 6
- deadtime = 18
- network = direct
- debug_level = NONE
- virtual HTTP {
- active = 1
- address = xxx.xxx.xxx.xxx eth0:1
- vip_nmask = xxx.xxx.xxx.xxx
- port = 80
- send = "GET / HTTP/1.0\r\n\r\n"
- expect = "HTTP"
- use_regex = 0
- load_monitor = none
- scheduler = wlc
- protocol = tcp
- timeout = 6
- reentry = 15
- quiesce_server = 1
- server retaguarda1 {
- address = xxx.xxx.xxx.xxx
- active = 1
- weight = 1
- }
- server retaguarda2 {
- address = xxx.xxx.xxx.xxx
- active = 1
- weight = 1
- }
- }
- virtual MYSQL {
- active = 0
- address = xxx.xxx.xxx.xxx eth0:1
- vip_nmask = xxx.xxx.xxx.xxx
- port = 3306
- send = "GET / HTTP/1.0\r\n\r\n"
- expect = "HTTP"
- use_regex = 0
- load_monitor = none
- scheduler = wlc
- protocol = tcp
- timeout = 6
- reentry = 15
- quiesce_server = 1
- server retaguarda1 {
- address = xxx.xxx.xxx.xxx
- active = 1
- weight = 1
- }
- server retaguarda2 {
- address = xxx.xxx.xxx.xxx
- active = 1
- weight = 1
- }
- }
- virtual SSL {
- active = 0
- address = xxx.xxx.xxx.xxx eth0:1
- vip_nmask = xxx.xxx.xxx.xxx
- port = 443
- send = "GET / HTTP/1.0\r\n\r\n"
- expect = "HTTP"
- use_regex = 0
- load_monitor = none
- scheduler = wlc
- protocol = tcp
- timeout = 6
- reentry = 15
- quiesce_server = 1
- server retaguarda1 {
- address = xxx.xxx.xxx.xxx
- active = 1
- weight = 1
- }
- server retaguarda2 {
- address = xxx.xxx.xxx.xxx
- active = 1
- weight = 1
- }
- }
Na linha (1) o campo serial_no refere-se à versão deste script, devendo ser acrescido de 1 cada vez que alterá-lo.
Linha (2) é o IP do servidor LVS, devendo substituir os “x” pelo correto.
Começa a configuração dos blocos de cada servidor virtual, tendo três disponíveis neste exemplo. Servidor virtual HTTP (da linha 11 até 35), servidor virtual MYSQL (da linha 36 até 60) e servidor virtual SSL (da linha 61 até o final). Cada bloco destes contém características semelhantes, sendo:
Variável active (linhas 12; 37; 62) indica se o bloco estará sendo balanceado. 0 para desligado e 1 para ligado.
Campo address (linhas 13; 38; 63) indica o IP virtual que será implementado. ATENÇÃO: não coloque um IP que já esteja em uso!
No campo vip_nmask (linhas 14; 39; 64) é a máscara de rede do IP virtual utilizado.
Por último é necessário informar o IP dos servidores de retaguarda que serão balanceados, trocando “x” pelo endereço. Neste exemplo de configuração, cada serviço (HTTP, SSL e MYSQL) possui dois servidores de retaguarda, sendo representados conforme segue:
HTTP: linhas 26 e 31
MYSQL: linhas 51 e 56
SSL: linhas 76 e 81
Caso deseje adicionar mais servidores de retaguarda, basta inserir o trecho de código abaixo depois das linhas 34, 59 ou 84 para HTTP, MYSQL e SSL respectivamente, trocando os valores dos campos conforme sua configuração.
- server retaguarda3 {
- address = xxx.xxx.xxx.xxx
- active = 1
- weight = 1
- }
Caso queira fazer o balanceamento para outras portas, copie o bloco da linha (11) até (35) e troque as informações pertinentes. Troque inclusive o nome HTTP por outro, no campo virtual (linha 11).
Salve e saia do arquivo (Esc, digite :x! e dê Enter). Inicie o serviço pulse com o comando service pulse start.

Você pode acompanhar o balanceamento através do comando watch ipvsadm
Configuração nos servidores de retaguarda
Execute o comando do iptables abaixo para ter o redirecionamento dos pacotes. É necessário repetir os comandos para cada porta balanceada e em cada servidor da retaguarda. Utilize usuário com privilégios de administrador!
iptables -t nat -A PREROUTING -p tcp -d IPVIRTUAL --dport PORTA -j REDIRECT
Os itens em vermelho devem ser substituídos por sua configuração, onde IPVIRTUAL é o inserido na linha (13) do arquivo LVS.cf e PORTA é o número da linha (15) do mesmo arquivo (atente-se para o fato de qual bloco de serviço está balanceando – HTTP, MYSQL ou SSL). Exemplo:

Siga os passos abaixo para tornar as regras do iptables persistentes entre reboots:
Fedora/CentOS/RedHat: Insira o comando /sbin/service iptables save e depois chkconfig iptables on
Ubuntu/Debian: Entre com o comando iptables-save > /etc/firewall.conf

É necessário editar um arquivo para que as configuração do iptables não desapareça ao reiniciar, bastando teclar vi/etc/network/if-up.d/iptables

Será aberto uma página vazia. Tecle “a” para entrar em modo de edição e insira as linhas:
#!/bin/sh
iptables-restore < /etc/firewall.conf

Salve e saia do arquivo (Esc, digite :x! e dê Enter).
Execute chmod +x /etc/network/if-up.d/iptables para dar permissão ao arquivo.

Conclusão