Aggiornamento software

SKOOR 9.0: Poiché SKOOR 9.0 aggiorna PostgreSQL dalla versione 13 alla 17, sono necessari alcuni passaggi aggiuntivi, come descritto qui.

SKOOR 8.1: È necessario controllare i lavori Selenium con Python. Per evitare una perdita di risorse, l'operazione driver.quit() viene eseguita in ogni caso come descritto qui

Si prega di seguire tutte le istruzioni fornite dal supporto SKOOR prima di eseguire un aggiornamento. Potrebbero esserci passaggi preparatori obbligatori che, se ignorati, potrebbero causare errori

In generale, l'aggiornamento dei pacchetti SKOOR Engine e/o Collector già installati dal repository è molto semplice:

dnf clean all
dnf update skoor-repo
dnf dnf clean all

Se si desidera solo aggiornare all'ultima versione patch di una versione Major specifica (ad es. 8), utilizzare

dnf update "eranger-*-8.*"

Altrimenti utilizzare

dnf update "eranger-*"

Guida rapida

La procedura seguente può essere utilizzata come lista di controllo per un aggiornamento standard del software:

  1. Verifica i repository rpm e gli abbonamenti Redhat richiesti

  2. Verifica se sono disponibili backup completi e di configurazione. Tuttavia, è sempre consigliabile eseguire un backup completo prima di un aggiornamento

  3. Prendere nota dello stato generale del sistema o fare uno screenshot della barra di stato nella parte inferiore dell'interfaccia utente di SKOOR Engine

  4. Impostare la manutenzione generale su tutti i collettori relativi all'aggiornamento (i collettori esterni possono essere lasciati invariati o aggiornati in un secondo momento)

  5. Sui sistemi replicati (primario/standby):

    1. Controlla lo stato della replica e intervieni se lo stato non è OK

    2. Interrompi la replica

    3. Eseguire l'aggiornamento del server di standby

  6. Eseguire l'aggiornamento del server (primario)

  7. Avviare la replica se non è in esecuzione

  8. Aggiornare i collettori esterni se configurati

  9. Aggiornare Dashboard Viewer se configurato

  10. Verificare la presenza di nuovi file di configurazione con estensione .rpmnew e unire il contenuto ai file originali se necessario.
    Questo può essere fatto utilizzando:
    rpmconf -a

  11. Verifica

    1. Lo stato generale del sistema è lo stesso di prima oppure le differenze possono essere spiegate

    2. La replica funziona come prima

    3. È possibile accedere ai dashboard / al Dashboard Viewer

    4. Gli allarmi vengono inviati (e-mail, SMS, ecc.)

  12. Terminare la manutenzione

  13. Creare un nuovo backup completo

Dettagli della guida rapida

Le seguenti informazioni si applicano a un'installazione standard di SKOOR. È necessario tenere conto delle configurazioni personalizzate

Percorso standard dei backup:

/opt/eranger/server/backups

Eseguire il backup completo:

cd /var/lib/pgsql
sudo -u postgres /opt/eranger/bin/eranger-server-backup.sh full

Impostare la manutenzione generale su tutti i collettori relativi all'aggiornamento in /root /Collectors

Verifica dello stato di replica e arresto dello standby:

/opt/eranger/bin/eranger-server-replication.pl status
<standby-ip>
<standby-ip> checking ssh for user reranger
<primary-ip> is running
Last read on master(<primary-ip>) 0 seconds ago
/opt/eranger/bin/eranger-server-replication.pl stopstandby

Impronte digitali GPG:

RPM-GPG-KEY-SKOOR:

0C18 95B8 11D4 71E5 D043 EFA3 69E1 147C 2CB4 0F3A

RPM-GPG-KEY-PGDG:

68c9 e2b9 1a37 d136 fe74 d176 1f16 d2e1 442d f0f8

RPM-GPG-KEY-TIMESCALEDB:

1005 fb68 604c e9b8 f687 9cf7 59f1 8edf 47f2 4417

Aggiornamento a SKOOR 9.0

Assicurati che non ci siano collegamenti all'interno di /var/lib/pgsql/13/data verso posizioni al di fuori di /var/lib/pgsql poiché ciò potrebbe causare problemi durante l'aggiornamento. Assicurati inoltre che non ci siano punti di montaggio verso altri dispositivi all'interno di /var/lib/pgsql.

  • È necessaria una versione aggiornata di skoor-repo (9.0).
    Installarla utilizzando:

    dnf clean all
    dnf update skoor-repo.rpm
  • Se è in corso la replica, è necessario interromperla prima di eseguire l'aggiornamento

    /opt/eranger/bin/eranger-server-replication.pl stopstandby

Eseguire prima l'aggiornamento dello standby (senza eseguire lo script update-postgresql), quindi aggiornare il primario ed eseguire un createstandby.

  • L'aggiornamento deve essere eseguito utilizzando un aggiornamento completo, non solo dnf update “eranger-*” o simili.

    dnf clean all
    dnf update
  • Dopo dnf update, eseguire /opt/eranger/database-utils/bin/upgrade-postgresql.

    /opt/eranger/database-utils/bin/upgrade-postgresql

Questo aggiorna il cluster PostgreSQL 13 a un cluster PostgreSQL 17.

  • Dopo l'esecuzione di `/opt/eranger/database-utils/bin/upgrade-postgresql`, il nuovo cluster deve essere analizzato utilizzando

    su postgres -c "/usr/pgsql-17/bin/vacuumdb --all --analyze-in-stages"

Questo passaggio è molto importante. Non saltarlo. Il sistema può già essere utilizzato durante l'esecuzione.

  • Se tutto funziona come previsto, il vecchio cluster può essere rimosso utilizzando

     /var/lib/pgsql/delete_old_cluster.sh

Aggiornamento a SKOOR 8.1

I Selenium Jobs devono essere adattati quando si utilizzano script Python. È importante che l'operazione driver.quit() venga eseguita in ogni caso. In caso contrario si verificherà una perdita di risorse!

Con questa versione viene fornito un nuovo pacchetto RPM eranger-python, destinato principalmente agli script in SKOOR Studio. Si raccomanda di utilizzare questo ambiente Python anche per gli script di importazione legacy.

Aggiornamento a SKOOR 7.2

Ogni SKOOR Collector utilizza almeno una directory per memorizzare i file di misurazione temporanei. Con SKOOR 7.2, tutte le directory temporanee dei Collector verranno pulite regolarmente:

  • I file più vecchi di 72 ore vengono eliminati

  • Le directory vuote più vecchie di 24 ore vengono eliminate

Poiché il collettore invia tutti i dati di misurazione al server dopo l'esecuzione di ogni job, non vi è motivo di conservare questi file più a lungo nella directory dei file temporanei. Tuttavia, se in una di queste directory sono stati creati file quali script o altri dati persistenti, è necessario spostarli in una posizione diversa prima di effettuare l'aggiornamento alla versione 7.2.

Utilizzare il seguente comando per ottenere un elenco delle directory temporanee dei collector (da eseguire sia sul local che su tutti i collector esterni):

grep -oP "server\\d+_fetch_parse_dir\\s*=\\s*/var/opt/run/eranger/collector/.+" /etc/opt/eranger/eranger-collector.cfg | perl -pe 's/server\d+_fetch_parse_dir\s*=\s*//g'

Assicurarsi che tutti i file presenti in queste directory possano essere eliminati in modo sicuro.

Aggiornamento a SKOOR 7.0

Il pacchetto RPM sdaas-webservice è stato sostituito dal nuovo pacchetto eranger-etl, disponibile anche nel repository RPM di SKOOR.

Si prega di installare eranger-etl dopo l'aggiornamento alla versione 7.0 (è necessario consentire la cancellazione di sdaas-webservice per evitare un conflitto):

yum remove sdaas-webservice && yum install eranger-etl