Controllo dello stato e dell'avanzamento del piano di aggiornamento di Private Cloud Appliance

L'Upgrader in Private Cloud Appliance genera un piano di upgrade e lo utilizza per orchestrare tutte le operazioni di upgrade necessarie. È possibile visualizzare lo stato di aggiornamento corrente in qualsiasi momento.

Nelle versioni software 3.0.2-b892153 e successive, l'Upgrader utilizza un piano di aggiornamento come tipo di lista di controllo per eseguire tutte le operazioni di upgrade, il che implica upgrade completi del cluster di gestione e upgrade dei singoli componenti. Il concetto di questo approccio è descritto in modo più dettagliato in Piano di aggiornamento e cronologia.

Il piano di aggiornamento viene generato quando l'upgrade dell'Upgrader stesso viene eseguito alla versione più recente. Il piano si basa su un confronto dei componenti attualmente installati nel rack, delle versioni dei componenti di destinazione e dei pacchetti più recenti scaricati nello storage condiviso durante la preparazione dell'ambiente di aggiornamento. Il piano di aggiornamento risultante mostra per quali componenti deve essere eseguita una procedura di aggiornamento nella fase successiva.

Tutti i componenti devono essere aggiornati in un ordine prescritto. Il piano di aggiornamento impedirà l'avvio di una procedura di aggiornamento dei componenti se gli aggiornamenti precedenti non sono stati completati. Un messaggio di errore informa l'amministratore dei componenti da aggiornare per primi.

Nota

In generale, è possibile aggiornare il firmware ogni volta che sono disponibili nuove versioni per il sistema in uso. Gli aggiornamenti del firmware possono essere applicati in nessun ordine particolare e indipendentemente da altri componenti. ZFS Storage Appliance fa un'eccezione: il firmware deve essere aggiornato prima di tutti gli altri componenti.

Questo è l'ordine delle operazioni applicate tramite il piano di aggiornamento:

  1. Preparare l'ambiente di upgrade (upgrade PreConfig)

  2. Aggiorna il programma di aggiornamento (PreUpgrade)

  3. Firmware di ZFS Storage Appliance

  4. Nodi di calcolo

  5. Sistema operativo host dei nodi di gestione

  6. Database cluster MySQL

  7. Servizio segreto (inclusi Etcd e Vault)

  8. Pacchetti di orchestrazione container Kubernetes (livello piattaforma)

  9. Microservizi containerizzati

  10. Immagini di Oracle Cloud Infrastructure

Controllare il piano di aggiornamento

Una volta preparato l'ambiente di upgrade, tutte le operazioni di upgrade necessarie per aggiornare il sistema sono elencate nel piano di upgrade. Ogni volta che una procedura di upgrade è stata completata correttamente, il piano di upgrade viene aggiornato con lo stato più recente: per i componenti aggiornati, le versioni di origine e destinazione sono identiche e il flag "upgrade richiesto" è disabilitato.

In qualsiasi momento è possibile controllare fino a che punto il sistema è progredito attraverso il piano di aggiornamento. Indica quali componenti sono già aggiornati e quali richiedono ancora l'aggiornamento. Il piano di aggiornamento fornisce una vista snapshot, accurata e utile al momento della consultazione. Per visualizzare l'avanzamento dettagliato dell'attività di aggiornamento, utilizzare invece il framework lavori.

Il piano di aggiornamento può essere visualizzato in due modi:

  • Nell'interfaccia utente Web del servizio, andare a Manutenzione nel menu di navigazione e selezionare Piano di aggiornamento.

  • Nell'interfaccia CLI del servizio immettere il comando seguente:

    PCA-ADMIN> getUpgradePlan
    Data: 
      id                          component    currentBuild     targetBuild      currentVersion                   targetVersion                              requireReboot   timeEstimation (min)   requireUpgrade   impactedInfra   
      --                          ---------    ------------     -----------      --------------                   -------------                              -------------   --------------------   --------------   -------------   
      generic                     zfssa        3.0.2-b1300385   3.0.2-b1300385   2013.06.05.8.73.1-2.73.5701.1    2013.06.05.8.73.1-2.73.5701.1              false           45                     false            host,compute    
      100.96.2.64                 compute      3.0.2-b1300130   3.0.2-b1300385   oraclelinux-release-7.9-1.0.9    3.0.202.3.11.0.0.0.5.7ea3f4ccbf3e17fc...   true            50                     true             compute         
      100.96.2.65                 compute      3.0.2-b1300130   3.0.2-b1300385   oraclelinux-release-7.9-1.0.9    3.0.202.3.11.0.0.0.5.7ea3f4ccbf3e17fc...   true            50                     true             compute         
      100.96.2.66                 compute      3.0.2-b1300130   3.0.2-b1300385   oraclelinux-release-7.9-1.0.9    3.0.202.3.11.0.0.0.5.7ea3f4ccbf3e17fc...   true            50                     true             compute         
      100.96.2.33                 host         3.0.2-b1300130   3.0.2-b1300385   oraclelinux-release-7.9-1.0.13   3.0.202.3.11.0.0.0.5.7ea3f4ccbf3e17fc...   true            40                     true             host            
      100.96.2.34                 host         3.0.2-b1300130   3.0.2-b1300385   oraclelinux-release-7.9-1.0.13   3.0.202.3.11.0.0.0.5.7ea3f4ccbf3e17fc...   true            40                     true             host            
      100.96.2.35                 host         3.0.2-b1300130   3.0.2-b1300385   oraclelinux-release-7.9-1.0.13   3.0.202.3.11.0.0.0.5.7ea3f4ccbf3e17fc...   true            40                     true             host            
      generic                     mysql        3.0.2-b1300385   3.0.2-b1300385   8.0.36-1.1                       8.0.36-1.1                                 false           15                     false            host            
      generic                     etcd         3.0.2-b1300385   3.0.2-b1300385   3.5.6                            3.5.6                                      false           5                      false            host            
      generic                     vault        3.0.2-b1300385   3.0.2-b1300385   v1.7.1-3.10.0.0.0.4.g5f2d5af     v1.7.1-3.10.0.0.0.4.g5f2d5af               false           5                      false            host            
      generic                     kubernetes   3.0.2-b1300385   3.0.2-b1300385   1.25.16-2                        1.25.16-2                                  false           60                     false            host,compute    
      generic                     platform     3.0.2-b1300130   3.0.2-b1300385   None                             None                                       false           40                     true             host,compute    
      Oracle-Linux-7.9            ociImages    3.0.2-b1300130   3.0.2-b1300385   None                             2024.07.31_0                               false           5                      true             host            
      Oracle-Linux8-OKE-1.28.8    ociImages    3.0.2-b1300130   3.0.2-b1300385   None                             20241201                                   false           5                      true             host            
      Oracle-Solaris-11           ociImages    3.0.2-b1300130   3.0.2-b1300385   None                             2024.08.26_0                               false           5                      true             host            
      Oracle-Linux8-OKE-1.27.12   ociImages    3.0.2-b1300130   3.0.2-b1300385   None                             20241201                                   false           5                      true             host            
      Oracle-Linux8-OKE-1.26.15   ociImages    3.0.2-b1300130   3.0.2-b1300385   None                             20241201                                   false           5                      true             host            
      Oracle-Linux-9              ociImages    3.0.2-b1300130   3.0.2-b1300385   None                             2024.07.31_0                               false           5                      true             host            
      Oracle-Linux-8              ociImages    3.0.2-b1300130   3.0.2-b1300385   None                             2024.07.31_0                               false           5                      true             host            
      100.96.0.33                 ilom         3.0.2-b1300130   3.0.2-b1300385   5.1.4.20                         5.1.4.25                                   true            10                     true             host,compute    
      100.96.0.34                 ilom         3.0.2-b1300130   3.0.2-b1300385   5.1.4.20                         5.1.4.25                                   true            10                     true             host,compute    
      100.96.0.35                 ilom         3.0.2-b1300130   3.0.2-b1300385   5.1.4.20                         5.1.4.25                                   true            10                     true             host,compute    
      100.96.0.64                 ilom         3.0.2-b1300130   3.0.2-b1300385   5.1.4.20                         5.1.4.25                                   true            10                     true             host,compute    
      100.96.0.65                 ilom         3.0.2-b1300130   3.0.2-b1300385   5.1.4.20                         5.1.4.25                                   true            10                     true             host,compute    
      100.96.0.66                 ilom         3.0.2-b1300130   3.0.2-b1300385   5.1.4.20                         5.1.4.25                                   true            10                     true             host,compute    
      leaf                        switch       3.0.2-b1300385   3.0.2-b1300385   10.3.4a                          10.3.4a                                    false           60                     false            host,compute    
      spine                       switch       3.0.2-b1300385   3.0.2-b1300385   10.3.4a                          10.3.4a                                    false           60                     false            host,compute    
      mgmt                        switch       3.0.2-b1300385   3.0.2-b1300385   10.3.4a                          10.3.4a                                    false           60                     false            host,compute    

Sfoglia Job Framework

L'Upgrader è integrato con il framework di lavoro del software del controller dell'appliance. Ogni operazione genera una richiesta di lavoro che attiva uno o più job. È possibile eseguire query su queste richieste di lavoro e su questi job. Lo stato e le proprietà dettagliate forniscono informazioni dettagliate sull'attività dell'Upgrader nel sistema.

Quando si immette un comando CLI del servizio, vengono restituiti un ID job e un ID richiesta di lavoro. Ciò consente di controllare lo stato, recuperare ulteriori dettagli, trovare job correlati nello stesso workflow e così via. Quando si crea una richiesta di aggiornamento (o patch) utilizzando l'interfaccia utente Web del servizio, tali ID non vengono visualizzati sullo schermo, ma sono disponibili nella tabella Job di aggiornamento. È inoltre possibile eseguire il drill-down delle richieste di lavoro e dei job.

Utilizzo dell'interfaccia utente Web del servizio

Per eseguire un'operazione di aggiornamento dall'interfaccia utente Web del servizio, utilizzare il menu di navigazione principale, andare a Manutenzione e fare clic su Aggiorna e applicazione patch. Viene visualizzata la pagina Job di aggiornamento, che visualizza tutti i job di upgrade recenti in una tabella, e consente di creare una nuova richiesta di upgrade (o patch) facendo clic sul pulsante nell'angolo in alto a destra.

La tabella Job di aggiornamento consente di sfogliare tutte le richieste e i job dell'upgrade, in modo da poterlo utilizzare per tenere traccia dell'avanzamento dell'attività dell'upgrade corrente, passata e pianificata.

  • La vista tabella predefinita mostra i job con il comando, la richiesta del workflow, gli indicatori orari e i risultati associati. L'ID job e l'ID richiesta sono collegamenti ipertestuali a pagine con informazioni più dettagliate.

    Il menu Azioni sul lato destro di ogni riga della tabella contiene opzioni equivalenti ai collegamenti ipertestuali e consente inoltre di copiare l'ID del job o della richiesta.

  • Se filtrata in base all'ID richiesta, la tabella Job di aggiornamento mostra solo i job creati nell'ambito della richiesta di upgrade selezionata. Utilizzarlo per tenere traccia dei flussi di lavoro multicomponente e controllare quali processi sono completati o in sospeso. Se si è verificato un errore, è possibile vedere quale job non è stato completato come previsto.

    Per tornare alla vista tabella predefinita, fare clic su Cancella filtro.

  • Per visualizzare i dettagli di un job, fare clic sul relativo ID job nella tabella Job di aggiornamento. Oltre alle informazioni visualizzate nella tabella dei job, la pagina dei dettagli del job di aggiornamento contiene la posizione del file di log, i dettagli di esecuzione del job e la lista dei task eseguiti nell'ambito del job di aggiornamento.

    Se il job di aggiornamento non è stato completato, è possibile eliminarlo facendo clic sul pulsante nell'angolo in alto a destra della pagina.

  • Per visualizzare i dettagli di una richiesta di upgrade, fare clic sull'ID della richiesta nella tabella Job di upgrade. Oltre alle informazioni visualizzate nella tabella dei job, la pagina Dettagli stato aggiornamento contiene le build di origine e di destinazione, i dettagli del workflow e una lista di job di aggiornamento associati.

    La lista dei job di aggiornamento è uguale alla tabella dei job di aggiornamento principale filtrata in base all'ID richiesta. Consente inoltre di accedere alla pagina dei dettagli di ogni job facendo clic sull'ID job.

    Oltre all'elenco dei job, la sezione Risorse della pagina Stato aggiornamento consente di visualizzare i componenti per i quali il job è stato completato e i componenti ancora in sospeso.

Uso dell'interfaccia CLI del servizio

Quando si esegue un'operazione di aggiornamento dall'interfaccia CLI del servizio, viene creata una richiesta. L'ID job e l'ID richiesta di upgrade vengono restituiti immediatamente. Utilizzare questi ID per eseguire query sui job e sulle richieste e trovare i dettagli necessari.

  • Quando si utilizza l'interfaccia CLI del servizio, gli ID delle richieste del servizio Workflow dell'upgrade sono l'elemento principale per accedere alle informazioni sull'attività dell'upgrade. Se non si nota l'ID della richiesta durante l'immissione del comando o si stanno cercando dati provenienti da flussi di lavoro precedenti, utilizzare il comando getUpgradeRequests per cercare quello che si desidera analizzare.

    PCA-ADMIN> getUpgradeRequests
    Data:
      id
      --
      PREUPGRADE-61b56867-7966-4096-9c74-08efe8d2d0ad
      UWS-496e26aa-2923-46f1-a485-c086a005077a
      UWS-da5d70ba-09ea-4ef0-b8ea-84d9f44c5e62
      PREUPGRADE-a6aa2c0e-ceff-4de4-aa23-de7d21b06668
    [...]
  • Con l'ID della richiesta di aggiornamento corretto è possibile controllare lo stato e l'avanzamento del flusso di lavoro di aggiornamento. Utilizzare il comando getUpgradeStatus per visualizzare i dettagli del workflow, inclusi l'elenco dei job e i componenti completati e in sospeso.

    PCA-ADMIN> getUpgradeStatus requestId=UWS-910dd8fd-28b3-4f97-a909-02c26085266c
    Data:
      Request id = UWS-910dd8fd-28b3-4f97-a909-02c26085266c
      Status = Failed
      Composition ID = fullrack
      Type = ISO
      Previous Build = 3.0.2-b1333709
      Target Build = 3.0.2-b1337789
      Jobs 1 = 1741252377283-zfssa-81712
      Jobs 2 = 1741253904337-compute-72870
    [...]
      Jobs 13 = 1741269765197-platform-663307
      Completed Components 1 = zfssa(generic)
      Completed Components 2 = compute(100.96.2.64)
    [...]
      Pending Components 1 = compute(100.96.2.68)
      Pending Components 2 = host(100.96.2.33)
    [...]
  • Utilizzando l'ID della richiesta di upgrade è inoltre possibile elencare i job associati alla richiesta ed eseguirne la scansione per individuare eventuali problemi di stato, avanzamento e potenziali. Utilizzare il comando getUpgradeJobs per visualizzare l'elenco dei job.

    PCA-ADMIN> getUpgradeJobs requestId=UWS-910dd8fd-28b3-4f97-a909-02c26085266c
    Data:
      id                                Upgrade Request Id                         Command Name   Result
      --                                ------------------                         ------------   ------
      1741269765197-platform-663307     UWS-910dd8fd-28b3-4f97-a909-02c26085266c   platform       Failed
      1741269703036-kubernetes-656961   UWS-910dd8fd-28b3-4f97-a909-02c26085266c   kubernetes     Passed
      1741267992739-host-422432         UWS-910dd8fd-28b3-4f97-a909-02c26085266c   host           Passed
      1741266155984-host-161315         UWS-910dd8fd-28b3-4f97-a909-02c26085266c   host           Passed
      1741264266152-host-11547          UWS-910dd8fd-28b3-4f97-a909-02c26085266c   host           Passed
      1741264201476-compute-87720       UWS-910dd8fd-28b3-4f97-a909-02c26085266c   compute        Passed
      1741264136546-compute-81124       UWS-910dd8fd-28b3-4f97-a909-02c26085266c   compute        Passed
      1741264070151-compute-74130       UWS-910dd8fd-28b3-4f97-a909-02c26085266c   compute        Passed
      1741252377283-zfssa-81712         UWS-910dd8fd-28b3-4f97-a909-02c26085266c   zfssa          Passed
  • Per analizzare un errore o visualizzare informazioni più dettagliate su un determinato job, utilizzare il comando getUpgradeJob. I dettagli del job includono il percorso del file di log, l'elenco completo dei task e i messaggi di errore acquisiti durante l'esecuzione.

    PCA-ADMIN> getUpgradeJob upgradeJobId=1741269765197-platform-663307
    Data:
      Upgrade Request Id = UWS-910dd8fd-28b3-4f97-a909-02c26085266c
      Composition Id = fullrack
      Name = platform
      Pid = 663307
      Host = pcamn01
      Log File = /nfs/shared_storage/pca_upgrader/log/pca-upgrader_platform_services_2025_03_06-14.02.45.log
      Arguments = {"component_names":null,"diagnostics":false,"display_task_plan":false,"dry_run_tasks":false,"expected_iso_checksum":null,[...]}
      Status = Failed
      Execution Time(sec) = 4068
      Tasks 1 - Name = Validate Upgrader Version
    [...]
      Tasks 31 - Name = Network Controllers Upgrade
      Tasks 31 - Description = Upgrade Network Controllers.
      Tasks 31 - Message = [{'name': 'auxiliary-metadata', 'version': 2, [...]
          Error: UPGRADE FAILED: release pcaswitchmgr failed, and has been rolled back due to atomic being set: 
          pre-upgrade hooks failed: timed out waiting for the condition }]
      Tasks 31 - Status = Failed
      Tasks 31 - Reason Phrase = Failed
      Tasks 31 - Execution Time(sec) = 1834
    [...]