[CentOS-pt-br] Cluster no CentOS. Ajuda..

CássioElias . cassioelias em hotmail.com
Sexta Setembro 6 11:16:53 UTC 2013


É...vivendo e tentando aprender.... XD.
Acredito que a saga do Cluster no CentOS 6 chegou ao fim Antônio.Ontem fiquei até 00:00 "brincando" um pouco nesses servidores e nas replicações.Agora está funcionando beleza. Os servidores fazem a ajuda entre si e as replicações. As replicações está perfeitas. Configurei tudo ontem no pacemaker. O failover também está perfeito. Quando uma estação cái, ou entra em standby a outra assume na hora.Fiz tudo em 2 máquinas virtuais criadas no VMWare ESXi.O ideal era eu deixar uma virtual e outra em Servidor Físico. Mas isso eu vejo com a parte financeira da empresa depois..hehe.
Outra pergunta, o DRBD não trabalha com mais de 2 servidores não né? Andei lendo que ele trabalha apenas com 2 servidores. Se quiser trabalhar com mais de 2 tem que ser com a ferramenta paga deles.
Bom, veja como ficou minhas configurações:
Informações do Servidor Urano1 que são as mesmas do Urano2:
[root em urano1 ~]# uname -aLinux urano1 2.6.32-358.18.1.el6.x86_64 #1 SMP Wed Aug 28 17:19:38 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
# /etc/corosync/corosync.conf
#Opção do protocolo totemtotem {        version: 2
        #Tempo para verificar perca de pacotes em (ms)        token: 3000
        #Quantas verificações antes de gerar notificações        token_retransmits_before_loss_const: 10
        #Quanto tempo esperar para agrupar as notificações em (ms)        join: 60
        #Quanto tempo esperar para uma solução antes de começar uma nova verificação (ms)        consensus: 3600
        #Filtro de sincronismo virtual desabilitado        vsftype: none
        #Número de mensagens processadas na recepção de pacotes        max_messages: 20
        #Limite de cluster assinados        clear_node_high_bit: yes
        #Criptografia desabilitada        secauth: off
        #Quantas threads usadas para criptografar/descriptografar        threads: 0
        #Atribui ID em um cluster fixo (opcional)        # nodeid: 1234
        #Especifica que em modo de redundancia, não pode havar nenhum cluster ativo ou passivo.        rrp_mode: none
        interface {                #Número de clusters (0 default)                ringnumber: 0                #Início de ips utilizados por cluster 10.101.0.0 é 10.101.0.0/24 aqui mude para                #O endereço da sua rede ex: 192.168.0.0 que seria 192.168.0.0/24                bindnetaddr: 192.168.0.0                #Fim de ips utilizados por cluster                mcastaddr: 226.94.1.1                #Porta utilizaad pelo corosync                mcastport: 5405        }}
#Configuração de AIS Availability Management Frameworkamf {        mode: disabled}
service {        #Carregamento do serviço para gerenciamento        ver:       1        name:      pacemaker}
#Temos que setar o usuário e grupo como root para o ais ser capaz de gerenciar os recursos do pacemakeraisexec {        user:   root        group:  root}

#Configuração de loglogging {        fileline: off        to_stderr: yes        to_logfile: yes        logfile: /var/log/corosync/corosync.log        #Aqui estou desabilitando os logs para o syslog, pq senão zoa demais o arquivo        to_syslog: no        syslog_facility: daemon        debug: off        timestamp: on        logger_subsys {                subsys: AMF                debug: off                tags: enter|leave|trace1|trace2|trace3|trace4|trace6        }
[root em urano1 ~]# ls /etc/drbd.dglobal_common.conf  http.res  mysql.res
[root em urano1 ~]# cat /etc/drbd.d/http.resresource http {        on urano1{                device /dev/drbd1;                disk /dev/vg_urano1/lv_web;                address 192.168.0.181:7789;                meta-disk internal;        }
        on urano2{                device /dev/drbd1;                disk /dev/vg_urano2/lv_web;                address 192.168.0.182:7789;                meta-disk internal;        }}
[root em urano1 ~]# cat /etc/drbd.d/mysql.resresource mysql {        on urano1{                device /dev/drbd0;                disk /dev/vg_urano1/lv_mysql;                address 192.168.0.181:7790;                meta-disk internal;        }
        on urano2{                device /dev/drbd0;                disk /dev/vg_urano2/lv_mysql;                address 192.168.0.182:7790;                meta-disk internal;        }}
[root em urano1 ~]# lvs  LV       VG        Attr      LSize Pool Origin Data%  Move Log Cpy%Sync Convert  lv_home  vg_urano1 -wi-ao--- 4,88g  lv_mysql vg_urano1 -wi-ao--- 4,88g  lv_root  vg_urano1 -wi-ao--- 4,88g  lv_swap  vg_urano1 -wi-ao--- 3,94g  lv_usr   vg_urano1 -wi-ao--- 4,88g  lv_var   vg_urano1 -wi-ao--- 4,88g  lv_web   vg_urano1 -wi-ao--- 4,88g
[root em urano1 ~]# crm configure shownode urano1 \        attributes standby="off"node urano2 \        attributes standby="off"primitive Failover ocf:heartbeat:IPaddr2 \        params ip="192.168.0.200" cidr_netmask="24" nic="eth0" \        op monitor interval="10s"primitive Httpd lsb:httpdprimitive MysqlData ocf:linbit:drbd \        params drbd_resource="mysql" \        op monitor interval="60s"primitive MysqlFS ocf:heartbeat:Filesystem \        params device="/dev/drbd0" directory="/var/lib/mysql" fstype="ext4"primitive Mysqld lsb:mysqldprimitive Vsftpd lsb:vsftpdprimitive WebData ocf:linbit:drbd \        params drbd_resource="http" \        op monitor interval="60s"primitive WebFS ocf:heartbeat:Filesystem \        params device="/dev/drbd1" directory="/var/www/html" fstype="ext4"ms MysqlDataClone MysqlData \        meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true"ms WebDataClone WebData \        meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true"location cli-prefer-Httpd Httpd \        rule $id="cli-prefer-rule-Httpd" inf: #uname eq urano1location cli-prefer-Mysqld Mysqld \        rule $id="cli-prefer-rule-Mysqld" inf: #uname eq urano1location cli-prefer-Vsftpd Vsftpd \        rule $id="cli-prefer-rule-Vsftpd" inf: #uname eq urano1colocation Htpd-with-WebFS inf: Httpd WebFScolocation Mysqld-with-MysqlFS inf: Mysqld MysqlFScolocation fs_on_drbd inf: MysqlFS MysqlDataClone:Mastercolocation fs_on_drbd1 inf: WebFS WebDataClone:Mastercolocation website-with-ip inf: Httpd Failoverorder Httpd-after-WebFS inf: WebFS Httpdorder MysqlFS-after-MysqlData inf: MysqlDataClone:promote MysqlFS:startorder Mysqld-after-MysqlFS inf: MysqlFS Mysqldorder WebFS-after-WebData inf: WebDataClone:promote WebFS:startorder httpd-after-ip inf: Failover Httpdproperty $id="cib-bootstrap-options" \        dc-version="1.1.9-2.2-2db99f1" \        cluster-infrastructure="classic openais (with plugin)" \        expected-quorum-votes="2" \        stonith-enabled="false" \        no-quorum-policy="ignore"
[root em urano1 ~]# crm_mon -1Last updated: Fri Sep  6 08:13:19 2013Last change: Fri Sep  6 07:44:54 2013 via crm_attribute on urano1Stack: classic openais (with plugin)Current DC: urano2 - partition with quorumVersion: 1.1.9-2.2-2db99f12 Nodes configured, 2 expected votes10 Resources configured.

Online: [ urano1 urano2 ]
 Failover       (ocf::heartbeat:IPaddr2):       Started urano1 Httpd  (lsb:httpd):    Started urano1 Mysqld (lsb:mysqld):   Started urano1 Vsftpd (lsb:vsftpd):   Started urano1 Master/Slave Set: MysqlDataClone [MysqlData]     Masters: [ urano1 ]     Slaves: [ urano2 ] MysqlFS        (ocf::heartbeat:Filesystem):    Started urano1 Master/Slave Set: WebDataClone [WebData]     Masters: [ urano1 ]     Slaves: [ urano2 ] WebFS  (ocf::heartbeat:Filesystem):    Started urano1
[root em urano1 ~]# cat /proc/drbdversion: 8.3.15 (api:88/proto:86-97)GIT-hash: 0ce4d235fc02b5c53c1c52c53433d11a694eab8c build by phil em Build64R6, 2012-12-20 20:09:51 0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----    ns:372 nr:316 dw:688 dr:4109 al:0 bm:7 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0 1: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----    ns:104 nr:180 dw:284 dr:792 al:0 bm:4 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0

Tudo funcionando redondinho...Agradeço muito a sua ajuda Antônio. Você foi peça chave para eu conseguir fazer essa configuração. Muito obrigado mesmo. E muito obrigado a comunidade também que também me ajudou muito!
Fica a dica ai para quem quiser fazer cluster no CentOS. Funciona, tem que ralar um pouco mais funciona!
Hehe :)
> Date: Fri, 6 Sep 2013 07:46:50 -0300
> From: asmartins em uem.br
> To: centos-pt-br em centos.org
> Subject: Re: [CentOS-pt-br] Cluster no CentOS. Ajuda..
> 
> 
> ----- "CássioElias ." <cassioelias em hotmail.com> escreveu:
> 
> > De: "CássioElias ." <cassioelias em hotmail.com>
> > Para: "Lista de Discussão CentOS-BR" <centos-pt-br em centos.org>
> > Enviadas: Quinta-feira, 5 de Setembro de 2013 17:12:49 (GMT-0300) Auto-Detected
> > Assunto: Re: [CentOS-pt-br] Cluster no CentOS. Ajuda..
> >
> > Certo...entendido..
> > 
> > 
> > Outra pergunta. Mas para o pacemaker entender isso, eu terei que
> > configura-lo ou ele entende isso por padrão?
> > 
> 
> Olá Cássio,
> 
>    Você tem que configurar o Pacemaker, da mesma forma que faz para o
> Apache/MySQL/IPAddr2 são recursos. Você vai configurar um recurso DRBD,
> tem OCF::Resource para isso também (é preferivel a usar o lsb, como você
> fez com o Apache).
> 
>    De uma olhada aqui: http://www.drbd.org/users-guide-8.3/ch-pacemaker.html
> 
>    E por falar em documentação! Você deveria ler a documentação do Pacemaker e
> do DRBD toda, e não ficar atrás de receita de bolo (HowTo). :D Tem muita coisa
> que a turma faz errado nestes HowTos, a principal é instalar a partir dos fontes
> quando existem pacotes nos repositórios! Se é para usar fonte, use Slackware!
> 
>    Att.,
> 
>        Antonio.
> 
> -- 
> Antonio da Silva Martins Jr. 
> Analista de Suporte
> NPD - Núcleo de Processamento de Dados
> UEM - Universidade Estadual de Maringá
> email: asmartins em uem.br 
> fone: +55 (44) 3011-4015 / 3011-4411
> inoc-dba: 263076*100                     
> 
>      "Real Programmers don’t need comments — the code is obvious."
> 
> -- 
> Esta mensagem foi verificada pelo sistema de antivirus e
>  acredita-se estar livre de perigo.
> 
> _______________________________________________
> CentOS-pt-br mailing list
> CentOS-pt-br em centos.org
> http://lists.centos.org/mailman/listinfo/centos-pt-br
 		 	   		  
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://lists.centos.org/pipermail/centos-pt-br/attachments/20130906/11e5633f/attachment.html 


Mais detalhes sobre a lista de discussão CentOS-pt-br