Condividi tramite


Come usare Commit Workflow v2 in Azure Operator Nexus

Questo articolo illustra come usare Commit Workflow Version 2 (Commit V2) in Azure Operator Nexus. Consente di preparare in modo sicuro le modifiche, esaminarle, eseguire il commit delle modifiche desiderate o rimuovere quelle non necessarie, tra le risorse supportate.

Prerequisiti

  • Versione di runtime: 5.0.1 o versioni successive sono necessarie per il flusso di lavoro di commit v2.

  • Versione Azure CLI8.0.0b3 o versioni successive sono installate

  • L'infrastruttura di rete deve essere nello Provisioned stato e lo stato di configurazione deve essere Succeeded.

  • L'infrastruttura e tutte le risorse interessate devono avere lo stato di amministratore impostato su Enabled.

  • È necessario configurare BYOS (Bring Your Own Storage) nell'infrastruttura per usare il passaggio di convalida facoltativo.

Panoramica del flusso di lavoro di commit v2

Commit V2 consente di aggiornare le risorse supportate in uno stato bozza, convalidare le modifiche di configurazione, visualizzare le differenze di configurazione e eseguire il commit esplicito o annullare le modifiche. Garantisce l'atomicità, il controllo operativo e un'esperienza utente migliorata per operazioni complesse dell'infrastruttura di rete.

Vantaggi del commit V2

  • Operazioni di commit più veloci: riduce il tempo necessario per applicare le modifiche di configurazione.

  • Esaminare la configurazione in sospeso: visualizzare e convalidare le differenze di configurazione prima di eseguire il commit.

  • Rimuovere il batch di commit: ripristinare le modifiche a fasi, se necessario.

  • Configurazione di blocco: prevenire modifiche in conflitto durante il staging e la revisione.

  • Base per scenari avanzati: abilita la strategia di commit A/B e le sessioni multiutente nelle versioni future.

Riepilogo del flusso di lavoro

Il flusso di lavoro Commit V2 include i passaggi seguenti:

  • Aggiornare le risorse supportate in modalità bozza usando le operazioni PATCH.

  • Bloccare la configurazione del fabric per esaminare o rimuovere le modifiche temporanee.

  • Facoltativamente, visualizzare le differenze di configurazione per ogni dispositivo.

  • Eseguire il commit o annullare le modifiche.

  • Dopo il commit o lo scarto, l'infrastruttura e tutte le risorse correlate tornano a uno stato provisionato.

Passaggio 1: Aggiornare le risorse in modalità bozza

Le risorse possono essere aggiornate usando operazioni PATCH che lasciano la risorsa in una bozza (ConfigurationState: Accepted) fino a quando non viene eseguito il commit esplicito. Queste modifiche non vengono applicate al piano dati fino a quando non vengono confermate.

Scenario di esempio

  • Creare un nuovo criterio di route e collegarlo alla rete interna 1

  • Creare un'altra rete interna 2

Tutte queste modifiche vengono raggruppate in batch, ma non ancora applicate ai dispositivi.

Passaggio 2: Bloccare la configurazione dell'infrastruttura

Prima di poter visualizzare il diff di configurazione o rimuovere il commit, l'infrastruttura deve essere bloccata in modalità di configurazione.

Bloccare la configurazione per segnalare che tutti gli aggiornamenti previsti sono stati completati. Dopo questo blocco, non è possibile apportare ulteriori aggiornamenti a qualsiasi risorsa correlata all'infrastruttura fino a quando non si sblocca.

Comando Azure CLI

az networkfabric fabric lock-fabric \
    --action Lock \
    --lock-type Configuration \
    --network-fabric-name "example-fabric" \
    --resource-group "example-rg"

Annotazioni

Verificare che lo stato di configurazione dell'infrastruttura sia Accettato.
L'infrastruttura non è in manutenzione a causa di operazioni non correlate (non di commit).
La versione di Network Fabric è >= 5.0.1.
Fabric è in stato di provisioning: Operazione riuscita.

Un'altra funzionalità chiave fornita dal commit V2 consiste nel visualizzare la configurazione del commit in sospeso e l'ultima configurazione di cui è stato eseguito il commit per ogni dispositivo (ad eccezione dei dispositivi NPB) di Network Packet Broker (NPB), in modo che gli utenti possano confrontarli per convalidare la configurazione prevista. In caso di discrepanza, gli utenti possono sbloccare il fabric, apportare le modifiche necessarie, bloccare il fabric, esaminare il commit in sospeso e quindi procedere con l'operazione di commit.

Convalidare la configurazione usando l'azione view-device-configuration successiva. Questo passaggio fornisce informazioni dettagliate sui risultati di configurazione previsti.

Importante

Il tessuto deve essere bloccato in modalità di configurazione.
BYOS deve essere configurato nell'infrastruttura di rete.

Comando Azure CLI


az networkfabric fabric view-device-configuration \
    --network-fabric-name "example-fabric"\
    --resource-group "example-rg"

Percorso delle modifiche di configurazione

I file diff di configurazione vengono archiviati nell'account di archiviazione fornito dal cliente nel formato seguente:

https://<storageAccountName>.blob.core.windows.net/<NF_name>/CommitOperations/DeviceConfigDiff/<CommitBatchId>

È possibile recuperare il CommitBatchId corrente eseguendo una richiesta GET nella risorsa di infrastruttura con versione 2024-06-15-preview API o successiva.

Passaggio 3a: Rimuovere il batch di commit (facoltativo)

Commit Discard è un'azione POST in NetworkFabric, consentita prima dell'esecuzione di un commit. Questa operazione consente a un utente di ripristinare le modifiche apportate alle risorse tramite operazioni PATCH per una sessione di commit specifica. Gli utenti possono scegliere di rimuovere gli aggiornamenti di configurazione in sospeso se vengono rilevati problemi durante la convalida tramite ViewDeviceConfiguration. Questa operazione ripristina lo stato della risorsa ARM fino all'ultima configurazione valida nota e reimposta lo stato dell'infrastruttura da Accepted & Locked a Succeeded.

Annotazioni

È possibile recuperare CommitBatchId eseguendo una richiesta GET nella risorsa di infrastruttura con versione 2024-06-15-preview API o successiva.

Annotazioni

È consigliabile non attivare un'operazione di rimozione dopo un commit non riuscito, perché ciò può causare configurazioni incoerenti tra Azure Resource Manager (ARM) e il dispositivo. In alcuni casi, potrebbe essere necessario un aggiornamento del dispositivo per riconciliare lo stato di configurazione tra ARM e il dispositivo.

Importante

Se la risorsa di Network Fabric è associata a un'identità gestita assegnata dall'utente (UAMI), ad esempio quando si usa un account di archiviazione gestito dal cliente, è necessario assicurarsi che il provider di risorse Microsoft.ManagedNetworkFabric abbia il ruolo Operatore identità gestita (MIO) nell'UAMI. Senza questa autorizzazione, l'operazione di eliminazione del commit ha esito negativo. Questo requisito è applicabile solo quando Network Fabric è collegato a un UAMI. Le infrastrutture di rete non associate a un'interfaccia utente non necessitano di autorizzazioni aggiuntive per l'eliminazione del commit.

az networkfabric fabric discard-commit-batch \
  --resource-group "example-rg" \
  --network-fabric-name "example-fabric"
  --commit-batch-id "example-commit-batch-id"

Annotazioni

Le risorse di rete interne/esterne passano allo stato amministratore: disabilitato e stato di configurazione: rifiutato.
Le risorse non vengono eliminate, l'utente deve eliminarle manualmente, se necessario.
La gestione di Monitoraggio di rete include vincoli aggiuntivi (i monitor disabilitati ripristinano lo stato rifiutato).

È necessario apportare altri aggiornamenti?

Sbloccare la configurazione per apportare altre modifiche, quindi ripetere i passaggi di blocco/convalida/commit.

Esempio di sblocco

az networkfabric fabric lock-fabric \
    --action Unlock \
    --lock-type Configuration \
    --network-fabric-name "example-fabric" \
    --resource-group "example-rg"

Passaggio 4: Confermare la configurazione (Obbligatorio)

Eseguire il commit della configurazione per applicare le modifiche in batch a tutti i dispositivi di infrastruttura pertinenti.

Comando Azure CLI

az networkfabric fabric commit-configuration \
  --resource-group "example-rg" \
  --resource-name "example-fabric"
  • L'operazione restituisce uno stato: Succeeded, InProgress, o Failed

  • Usare il polling della CLI o i Log di Attività di Azure per monitorare lo stato di avanzamento

Importante

  • Questo flusso di lavoro si applica solo quando l'infrastruttura è in stato Di provisioning e lo stato amministratore è Abilitato.
  • Il blocco è obbligatorio prima del commit; commit non può continuare senza prima bloccare.
  • Il rollback non è supportato . È necessario aggiornare e ripetere il commit di una configurazione non corretta.
  • Gli aggiornamenti all'esterno di questo flusso di lavoro (ad esempio, ai tag o alle risorse disconnesse) non richiedono il commit.