[FUG-BR] HA em Freebsd 7.1

Franklin França franca.franklin em gmail.com
Sexta Abril 23 16:14:17 BRT 2010


Em 23 de abril de 2010 15:45, André Ormenese <ormenese em unicamp.br> escreveu:

> Tem algum site que possa dar uma ajuda ou vai pelo man ???
>


Tenho esse exemplo e desculpa o nome correto é ifstated, também tem um bom
exemplo que o Thiago publico no site da fug
http://www.fug.com.br/content/view/504/77/

# Parâmetros globais
# estado de inicializacao padrão
init-state one

# definição de macros
# definimos as interfaces carp a serem monitoradas
carp_up = "carp0.link.up"
carp_down = "!carp0.link.up"

# definindo o bloco para o estado
state one {
# se a interface estiver como master assume as funcoes da maquina master
        if  ($carp_up) {
                run "cd /var/qmail/control"
        run "cp me.ns3a me"
        run "cp smtpgreeting.ns3a smtpgreeting"
        run "cp outgoingip.ns3a outgoingip"
        run "/usr/local/bin/svc -k /service/*"
                  run "cat /tmp/msg | mail -s "NS3A Caiu, Spare assumindo!"
xxx em mail.com"
# chama o estado dois
        set-state two
        }
}

# configurado o estado dois
state two {
# se a interface carp estiver como backup voltamos nossa configuracao de
spare.
        if ( $carp_down )  {
        run "cd /var/qmail/control/"
        run "cp me.spare me"
        run "cp smtpgreeting.spare smtpgreeting"
        run "cp outgoingip.spare outgoingip"
        run "/usr/local/bin/svc -k /service/*"
        run "cat /tmp/msg | mail -s "SPARE NS3a devolvendo as funcoes para
servidor principal!" xxx em mail.com"
# sincronizamos aqui os emails que chegaram na spare com a maquina master,
com #isso temos a maquina master em perfeito estado.

       run "/usr/local/bin/sudo -u vmail /usr/local/bin/rsync -Cravzp
-remove-sent-files /var/mail/domains/ vmail em ns3a.xxx.com.br:
/var/mail/domains"
       run "cat /tmp/msg | mail -s "SPARE NS3a fim de sincronismo!"
xxx em mail.com"
                set-state one
        }
}


-- 
atenciosamente,

Franklin de França


Mais detalhes sobre a lista de discussão freebsd