This post is also available in: English
Neste artigo, vou mostrar como detectar em qual Hub Node o seu Leaf Node está conectado em uma arquitetura de Oracle Flex Cluster quando você possui múltiplos Hub Servers.
Antes de mais nada, vamos verificar o cenário atual:
[oracle@oranode3 ~]$ crsctl get node role status -all Node 'oranode1' active role is 'hub' Node 'oranode2' active role is 'hub' Node 'oranode3' active role is 'leaf'
Então na minha configuração atual eu possuo 2 Hub Nodes (oranode1 e oranode2) mas apenas 1 Leaf Node (oranode3).
Para verificar em quais dos 2 Hub Nodes o meu Leaf Node está conectado, eu preciso verificar no arquivo de trace ocssdrim.trc para qual nó o meu leaf está periodicamente enviando pings e verificando a disponibilidade:
[oracle@oranode3 ~]$ export GRID_BASE=/u01/app/grid [oracle@oranode3 ~]$ cat $GRID_BASE/diag/crs/$(hostname -s)/crs/trace/ocssdrim.trc | grep 'Sending a ping msg to' | tail -1 2017-03-10 13:57:32.916716 : CSSD:3347568384: clssbnmc_PeriodicPing_CB: Sending a ping msg to host oranode1, number 1, using handle (0x2525390) last msg to hub at 70720064, connection timeout at 70750064, current time 70722514
Portanto, pela mensagem acima, o oranode3 está periodicamente enviando pings para o oranode1, significando este é o node ao qual ele está conectado.
E o que acontece quando um Hub Node deixa de fazer parte do cluster? Nestes casos, o Leaf Nodes associado ao Hub Node vai fazer um failover para um dos nodes restantes no cluster.
Vamos fazer um teste. No oranode1:
[root@oranode1 ~]# crsctl stop crs CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'oranode1' CRS-2673: Attempting to stop 'ora.crsd' on 'oranode1' CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'oranode1' (...) CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'oranode1' has completed CRS-4133: Oracle High Availability Services has been stopped.
Agora de volta ao oranode3 vamos checar se existe alguma conexão finalizada:
[oracle@oranode3 ~]$ cat $GRID_BASE/diag/crs/$(hostname -s)/crs/trace/ocssdrim.trc | grep 'Destroying connection' | tail -1 2017-03-10 14:02:02.932005 : CSSD:3347568384: clssbnmConnDestroy: Destroying connection object (0x7f1ab4034310) for host oranode1
E uma nova conexão estabelecida para:
[oracle@oranode3 ~]$ cat $GRID_BASE/diag/crs/$(hostname -s)/crs/trace/ocssdrim.trc | grep 'Sending a ping msg to' | tail -1 2017-03-10 14:04:34.377566 : CSSD:3347568384: clssbnmc_PeriodicPing_CB: Sending a ping msg to host oranode2, number 2, using handle (0x1f83750) last msg to hub at 71141124, connection timeout at 71171124, current time 71143974
Como esperado, oranode2, o único Hub Node sobrevivente.
Referências:
Gostou? Não deixe de comentar ou deixar um 👍!