L'istanza Db2 non riesce a riavviarsi automaticamente dopo un guasto
Dopo un guasto, l'istanza Db2® potrebbe non essere riuscita a riavviare automaticamente. Questo argomento mostrerà come identificare e risolvere il guasto.
Importante: nella versione 11.5 Mod Pack 4 e versioni successive, l'uso di Pacemaker come gestore cluster in un failover automatico per lo standby HADR è un'anteprima tecnica. Ciò indica che dovrebbe essere limitato solo agli ambienti di sviluppo, di test e all'installazione di prova.
Identificazione del problema
Le seguenti voci di log da pacemaker - execd e pacemaker - controld indicano che l'agent risorse db2inst non è riuscito ad avviare l'istanza dopo aver raggiunto il timeout di 900 second secondi.
/var/log/pacemaker/pacemaker.log
219 May 19 13:16:08 db2inst(db2_db2tea1_db2inst1_0)[29069]: INFO: start: 290: db2inst1: db2inst_start() entry.
220 May 19 13:16:08 db2inst(db2_db2tea1_db2inst1_0)[29069]: WARNING: start: 487: psdid not list any process for db2sysc on node 0 after 5 retries. db2inst_monitor() exit with rc=1.
<...>
234 May 19 13:16:08 db2inst(db2_db2tea1_db2inst1_0)[29069]: INFO: start: 184: db2inst1: Attempting to start partition(0) via db2gcf...
<...>
846 May 19 13:31:13 db2tea1.fyre.ibm.com pacemaker-based[12628] (cib_process_ping) info: Reporting our current digest to kedge1: 329366e809df79e8eee7385e29f376d6 for 61.5713.41 (0x556f3945d0c0 0)
847 May 19 13:31:13 db2tea1.fyre.ibm.com pacemaker-execd[12630] (child_timeout_callback) warning: db2_db2tea1_db2inst1_0_start_0 process (PID 29069) timed out
848 May 19 13:31:13 db2tea1.fyre.ibm.com pacemaker-execd[12630] (operation_finished) warning: db2_db2tea1_db2inst1_0_start_0:29069 -timed out after 900000ms
849 May 19 13:31:13 db2tea1.fyre.ibm.com pacemaker-execd[12630] (log_finished) info: finished -rsc:db2_db2tea1_db2inst1_0 action:startcall_id:54 pid:29069 exit-code:1 exec-time:900003ms queue-time:0ms
850 May 19 13:31:13 db2tea1.fyre.ibm.com pacemaker-controld[16247] (process_lrm_event) error: Result of start operation for db2_db2tea1_db2inst1_0 on db2tea1: Timed Out | call=54 key=db2_db2tea1_db2inst1_0_start_0 timeout=900000msLe linee 219 & 220 sono voci tipiche registrate mentre l'istanza viene arrestata. Possono ripetere fino all'avvio dell'istanza e non indicano un problema. La voce di registrazione sulla riga 234 indica che Pacemaker sta tentando di avviare l'istanza.
Le linee 847-850, registrate circa 15 minutes minuti dopo, indicano che Pacemaker è in timeout in attesa della risorsa di istanza da avviare.
Risoluzione
I log di cui sopra indicano tipicamente che un problema si è verificato durante db2start. Utilizzare i seguenti passaggi per effettuare un ulteriore debug e risolvere il problema.
- Da notare la registrazione data / ora del tentativo di avvio dell'istanza (19 maggio 13:16:08 in alto sulla Linea 234).
- Individuare il db2diag.log dell'host corrente.
- Cerca in avanti dalla data / ora notata al passo #1 per gli errori da "db2start", "db2star2" o "db2sysc".
- Una delle voci dovrebbe indicare l'SQLCODE o ci possono essere altri errori in precedenza che forniranno un indizio al guasto.
- Risolvere l'errore, eseguire
ipclean -acome proprietario dell'istanza. - Riavviare l'istanza manualmente.