Argomento precedente: Procedure di recupero della grigliaArgomento successivo: Errore della periferica di archiviazione


Errore del controller della griglia

La presente sezione descrive i vari tipi di errore che si verificano sul controller di griglia e che richiedono un intervento manuale da parte dell'amministratore al fine di ripristinare la normale operatività del controller di griglia.

Nota: si consiglia di leggere le informazioni di riferimento sulla disponibilità elevata (HA, high availability) di CA AppLogic® per conoscere le funzioni di HA di CA AppLogic®, in particolare in relazione all'HA del controller di griglia e ai tipi di errore che possono verificarsi.

Tipi di errore del controller di griglia

CA AppLogic® esegue un recupero automatico a seguito di due tipi di errore del controller di griglia:

In determinati scenari di errore, il controller di griglia diventa inaccessibile e non può essere recuperato automaticamente da CA AppLogic®. Questi casi sono riepilogati di seguito, così come sono stati riscontrati dagli utenti:

Un amministratore può visualizzare le informazioni di stato della GUI di recupero gestite da CA AppLogic®. Tali informazioni sono archiviate in un file che risiede in dom0 sul server del controller (laddove viene avviato il controller di griglia). Consultare l'ultima sezione nella parte inferiore del presente documento per scoprire il percorso e il formato del file di stato della GUI di recupero.

Come comportarsi se un controller di griglia diventa inaccessibile

Di seguito è riportato un elenco delle cause che possono impedire al controller di griglia di subire un riavvio automatico:

Per ripristinare l'operatività del controller di griglia, eseguire le seguenti operazioni:

  1. Recuperare tutti i server primari e secondari inattivi. Una volta che è stata ripristinata l'operatività dei server, il recupero del controller di griglia dovrebbe avvenire entro circa 5 minuti. Se questa operazione non risolve il problema, passare alla fase successiva.
  2. Utilizzando BFC, eseguire i passaggi seguenti per designare un nuovo server primario per la griglia e avviare il controller di griglia sul nuovo server primario.
    1. Selezionare Griglie dal menu a sinistra.

      Viene visualizzata la pagina Griglie. Lo stato della griglia può essere: In esecuzione, Arrestato, Non riuscito, Errore: esecuzione in corso... (la creazione della griglia non è riuscita ma i server sono ancora in esecuzione), Da controllare e Riavvio necessario.

    2. Selezionare la casella di controllo accanto alla griglia che si desidera utilizzare.
    3. Fare clic sul menu di azione della griglia e selezionare Modifica parametri della griglia.

      Verrà visualizzata la finestra di dialogo Modifica parametri della griglia.

    4. Immettere le seguenti informazioni relative ai parametri della griglia per designare un nuovo server primario per la griglia:

      primary=srvaddr

      Il valore srvaddr è l'ID (srvNN) o l'indirizzo del server che diventerà il nuovo controller. Gli indirizzi devono essere accessibili sulla LAN della backbone. Se viene specificato un nome, deve essere risolto in un indirizzo accessibile sulla backbone.

      Quando questa impostazione viene utilizzata su una griglia operativa (con un controller in esecuzione), il controller viene arrestato immediatamente e riavviato sul nuovo host. Ciò non dovrebbe interessare le applicazioni della griglia, ma può interrompere l'accesso tramite GUI al controller di griglia e ritardare o interrompere i comandi di gestione delle applicazioni in corso.

      Si consiglia inoltre di abbinare al server primario almeno due server secondari sulla griglia. Se la griglia non dispone di un server secondario o se i server secondari sono inattivi e non possono essere recuperati, eseguire i passaggi seguenti per configurare almeno due server secondari per la griglia. Se non sono presenti sufficienti server disponibili, si consiglia di aggiungere altri server alla griglia per garantire la high availability del controller di griglia.

    5. Immettere le seguenti informazioni relative ai parametri della griglia per designare due server secondari per la griglia:

      secondary=srvaddr,srvaddr,...

      I valori srvaddr sono gli ID o gli indirizzi dei server che possono assumere il ruolo di host del controller in caso di errore dell'host del controller primario. Questa impostazione può essere utilizzata per limitare o modificare l'assegnazione automatica di host del controller secondari. Possono essere specificati fino a 7 host secondari. Questa impostazione può essere specificata da sola o assieme all'impostazione primary= al fine di riassegnare gli host secondari e spostare contemporaneamente il controller in un nuovo host primario. L'impostazione secondary= non ha effetto su una griglia disabilitata. Per riassegnare gli host del controller secondari, recuperare dapprima la griglia utilizzando il parametro della griglia primary=srvaddr.

    6. Impostare l'opzione Riavvio necessario su Sì.
    7. Fare clic sul pulsante Salva nella finestra di dialogo Modifica parametri della griglia.

Se non è possibile recuperare il controller di griglia seguendo i suggerimenti riportati sopra, l'errore è di tipo irreversibile e richiede un intervento manuale. Contattare immediatamente il supporto tecnico di CA. Raccogliere le seguenti informazioni da sottoporre al supporto tecnico di CA:

File di stato della GUI di recupero

Un amministratore può visualizzare le informazioni di stato della GUI di recupero gestite da CA AppLogic®. Tali informazioni sono archiviate in un file che risiede in dom0 sul server del controller (il server in cui viene avviato il controller di griglia). Il file è denominato /usr/local/recovery/gui/chroot/data/status e contiene lo stato corrente dell'operazione di recupero del controller di griglia. Le informazioni archiviate in questo file vengono utilizzate dalla GUI di recupero del controller per visualizzare i dati relativi allo stato e all'avanzamento. Questo file utilizza il seguente formato, codificato in JSON (di seguito vengono utilizzati dei dati di esempio):

{
"grid_name"               : "my-grid-name",
"grid_version"            : "2.7.6",
"role"                    : "Recovery controller 2",
"status"                  : "Recovery in progress (master recovery controller is srv2)",
"recovery_start_time"     : "15:14:41 PDT (21/mar/09)",
"recovery_eta"            : "15:23:54 PDT",
"recovery_remaining_time" : 278,
"current_time"            : "15:19:12 PDT",
"stage"                   : 0,
"stage_remaining_time"    : 79,
"failure_reason"          : "srv1 down (no response for 30 sec on either network)",
"known_servers"           : "srv1:down,srv2:up",
"stages"                  : [
                            "Waiting for quorum (at least 3 of the N servers to connect)",
                            "Waiting for server with controller volumes to become available",
                            "Waiting for remaining controller volume streams",
                            "Verifying both networks are present",
                            "Sharing controller volumes",
                            "Mounting controller volumes",
                            "Starting grid controller",
                            "Grid controller started"
                            ],
"msgs"                    : [
                            {
                            "time"     : "15:15:23 PDT",
                            "severity" : "alert",
                            "text"     : "My alert message"
                            },
                            {
                            "time"     : "15:16:00 PDT",
                            "severity" : "info",
                            "text"     : "My info message"
                            }
                            ]
}

Alcune note sui campi riportati sopra:

Quando non è in corso il recupero di un controller di griglia, il file di stato prevede solo alcuni campi:

{
"grid_name"            : "my-grid-name",
"grid_version"         : "2.7.6",
"role"                 : "Recovery controller 2",
"status"               : "Okay",
"known_servers"        : "srv2:up,srv1:up"
}