Ao tentar iniciar a segunda instância em um cluster RAC de dois nós, a segunda instância não será iniciada. Se a instância no node1 estiver em execução, a instância no node2 não será iniciada. Se a instância no node2 estiver em execução, a instância no node1 não será iniciada. O log de alertas mostra o seguinte:
Error: KGXGN polling error (15)
Errors in file /u01/app/oracle/diag/rdbms/bsp/bsp1/trace/bsp1_lmon_9151.trc:
ORA-29702: error occurred in Cluster Group Service operation
LMON (ospid: 9151): terminating the instance due to error 29702
Infelizmente, o arquivo de rastreamento LMON fornece apenas as mesmas mensagens de erro, portanto, nada acontece lá.
Este erro está ocorrendo devido a uma configuração incorreta da interconexão de cluster. Se você observar o OCR para ver a interconexão do cluster, verá que o dispositivo NIC é eth4.1338:
[oracle@myhost bin]$ oifcfg getif -global
eth2 192.168.33.0 global public
eth4.1338 10.0.0.0 global cluster_interconnect
Em um nó, o dispositivo eth4 está correto. No entanto, no segundo nó, o dispositivo é eth5.1338 e o OCR é compartilhado entre os nós. O OCR espera que o dispositivo seja eth4.1338. Ambos os servidores precisam que a interconexão do cluster esteja no mesmo dispositivo de rede. A configuração de rede do servidor foi alterada para que ambos os nós fossem configurados no dispositivo eth5.1338. Uma vez que os servidores foram configurados de forma idêntica, redefinimos a configuração do OCR:
[oracle@myhost bin]$ ./oifcfg setif -global eth5.1338/10.0.0.0:cluster_interconnect
Observando a configuração, podemos ver que tanto a eth4 quanto a eth5 ainda estão em OCR:
[oracle@myhost bin]$ ./oifcfg getif -global
eth2 192.168.33.0 global public
eth4.1338 10.0.0.0 global cluster_interconnect
eth5.1338 10.0.0.0 global cluster_interconnect
Então, removemos o dispositivo eth4:
[oracle@myhost bin]$ ./oifcfg delif -global eth4.1338/10.0.0.0
Agora temos o OCR reconfigurado. Reiniciamos o CRS e ambas as instâncias apareceram em ambos os nós!
Este foi um daqueles erros em que as mensagens de erro realmente não apontavam para a causa raiz do problema. Em vez disso, tive que vasculhar as áreas que senti serem as mais prováveis culpadas quando descobri cegamente as diferenças de configuração.