Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Premesse

Problema

Registri errori

Soluzione

Introduzione

Questo documento descrive come recuperare MGMTPOSTGRES_SLAVE quando non forma un cluster con MGMTPOSTGRESS_MASTER.

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza dei seguenti argomenti:

- Interfaccia Linux

- Ambiente macchina virtuale

- postgresql

- Sistema di configurazione Pacemaker/Corosync (PCS)

Componenti usati

Le informazioni di questo documento si basano sulle seguenti versioni software:

- CloudCenter versione 4.8.1.1

- Componente MGMTPOSTGRES_SLAVE

- Componente MGMTPOSTGRES_MASTER

Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

Premesse

Se si verifica un errore in entrambi i componenti MGMTPOSTGRES, MGMTPOSTGRES_SLAVE non formerà più un cluster con MGMTPOSTGRES_MASTER.

Problema

MGMTPOSTGRES_SLAVE non forma un cluster con MGMTPOSTGRES_MASTER. Per consentire a MGMTPOSTGRES di formare un cluster, è necessario eliminare il database MGMTPOSTGRES_SLAVE. Quindi, il database verrà recuperato da MGMTPOSTGRES_MASTER.

Registri errori

[root@mgmtpostgres_master etc]# pcs status

Cluster name: cliqrdbcluster

Stack: corosync

Current DC: dbmaster (version 1.1.15-11.e174ec8) – partition with quorum

Last updated: Mon Nov 13 19:15:30 2017                 Last changed: Mon Nov 13 16:59:51 2017 by root via crm_attribute on db master

2 nodes and 3 resources configured

Online: [ dbmaster dbslave ]

Full list of resrouces:

Resrouce Group: VIPGroup

PGMasterVIP             (ocf::heartbeat:IPaddr2):                    Started dbmaster

Master/Slave Set: mspostgresql [pgsql]

Masters: [ dbmaster ]

Stopped: [ dbslave ]

Failed Actions:

* pgsql_start_0 on dbslave ‘unknown error’ (1): call=11, status=Timed Out, exitreason=’none’,

last-rc-change=’Mon Nov 13 18:15:25 2017’, queued-0ms, exec=60003ms

Daemon Status:

corosyn: active/disabled

pacemaker: active/enabled

pcsd: inactive/disabled

Soluzione

Procedere al recupero del database MGMTPOSTGRES_SLAVE per consentire a MGMTPOSTGRES di formare un cluster.

Passaggio 1. In MGMTPOSTGRES_MASTER verificare che il cluster sia arrestato.

pcs cluster stop

pcs status

Passaggio 2. In MGMTPOSTGRES_SLAVE eliminare il database esistente.

rm -rf /var/lib/pgsql/9.5/data/*

Passaggio 3. In MGMTPOSTGRES_MASTER avviare nuovamente il cluster.

pcs cluster start

pcs status

Passaggio 4. In MGMTPOSTGRES_SLAVE, recuperare il database da MGMTPOSTGRES_MASTER.

/usr/pgsql-9.5/bin/pg_basebackup -h <MGMTPOSTGRES_MASTER-IP> -D /var/lib/pgsql/9.5/data/ -U replication -v -P --xlog-method=stream

Passaggio 5. In MGMTPOSTGRES_SLAVE modificare la proprietà del database recuperato.

chown postgres:postgres -R /var/lib/pgsql/9.5/data/*

Passaggio 6. In MGMTPOSTGRES_SLAVE avviare il cluster.

pcs cluster start

pcs cluster status

Passaggio 7. In MGMTPOSTGRES_MASTER, pulire le risorse e controllare lo stato del cluster.

pcs resource cleanup

pcs cluster status

Passaggio 8. In MGMTPOSTGRES_MASTER, verificare che esista una replica (cercare l'indirizzo IP nell'indirizzo IP MGMTPOSTGRES_SLAVE).

ps –ef | grep postgr