Condividi tramite


Cluster Manager: come gestire il Cluster Manager in Operatore Nexus

Il Cluster Manager viene distribuito nella sottoscrizione di Azure dell'operatore per gestire il ciclo di vita de cluster dell'infrastruttura Operatore Nexus.

Operazioni preliminari

Assicurarsi di avere le informazioni seguenti:

  • ID sottoscrizione di Azure: l'ID sottoscrizione di Azure in cui è necessario creare il Cluster Manager (deve essere lo stesso ID sottoscrizione di Network Fabric Controller).
  • ID Network Fabric Controller: Network Fabric Controller e Cluster Manager hanno un'associazione 1:1. È necessario che l'ID risorsa del controller di infrastruttura di rete sia associato a Gestione cluster.
  • ID area di lavoro Log Analytics: l'ID risorsa dell'area di lavoro Log Analytics usata per la raccolta dei log.
  • Area di Azure: il Cluster Manager deve essere creato nella stessa area di Azure del Network Fabric Controller. Questa area di Azure deve essere usata nel campo Location del Cluster Manager e in tutte le istanze di Operatore Nexus associate.

Limiti

  • Denominazione: le regole di denominazione sono disponibili qui.

Argomenti globali

Alcuni argomenti sono disponibili per tutti i comandi dell'interfaccia della riga di comando di Azure

  • --debug: stampa una quantità ancora maggiore di informazioni sulle operazioni dell'interfaccia della riga di comando, che vengono usate a scopo di debug. Se si rilevano bug, fornire l'output generato con il flag --debug attivato quando si invia la segnalazione.
  • --help -h: stampa le informazioni di riferimento dell'interfaccia della riga di comando sui comandi e i relativi argomenti ed elenca i sottogruppi e i comandi disponibili.
  • --only-show-errors: mostra solo gli errori, eliminando gli avvisi.
  • --output -o: specifica il formato di output. I formati di output disponibili sono JSON, JSONC (codice JSON colorato), TSV (valori delimitati da tabulazioni), tabella (tabelle ASCII leggibili) e YAML. Per impostazione predefinita, l'output dell'interfaccia della riga di comando è in formato JSON.
  • --query: usa il linguaggio di query JMESPath per filtrare l'output restituito dai servizi di Azure.
  • --verbose: stampa le informazioni sulle risorse create in Azure durante un'operazione e altre informazioni utili

Proprietà di Cluster Manager

Nome proprietà Descrizione
Nome, ID, posizione, tag, tipo Nome: nome descrittivo
ID: < ID risorsa >
Posizione: l'area di Azure in cui viene creato il Cluster Manager. Usare i valori ottenuti con az account list -locations.
Tag: tag delle risorse
Tipo: Microsoft.NetworkCloud/clusterManagers
managerExtendedLocation ExtendedLocation associato a Cluster Manager
managedResourceGroupConfiguration Informazioni sul gruppo di risorse gestite
fabricControllerId Riferimento al controller di infrastruttura di rete 1:1 con gestione cluster
analyticsWorkspaceId Area di lavoro Log Analytics in cui verranno inoltrati i log rilevanti per il cliente.
clusterVersions[] Elenco di versioni del cluster supportate da Cluster Manager. Viene usato come input nella proprietà cluster ClusterVersion.
provisioningState Stato del provisioning dell'operazione più recente in Gestione cluster. Uno di: Succeeded, Failed, Canceled, Provisioning, Accepted, Updating
detailedStatus Gli stati dettagliati che forniscono informazioni aggiuntive sullo stato di Gestione cluster.
detailedStatusMessage Messaggio descrittivo sullo stato dettagliato corrente.

Identità di Cluster Manager

A partire dalla versione dell'API 2024-07-01, un cliente può assegnare un'identità gestita a un Cluster Manager. Sono supportate sia le identità gestite assegnate dal sistema che le identità gestite assegnate dall'utente.

Se un cluster Manager viene creato con l'identità gestita assegnata dall'utente, è necessario che un cliente ese stato effettuato il provisioning dell'accesso a tale identità per la piattaforma Nexus. In particolare, Microsoft.ManagedIdentity/userAssignedIdentities/assign/action l'autorizzazione deve essere aggiunta all'identità assegnata dall'utente per AFOI-NC-MGMT-PME-PROD Microsoft Entra ID. Si tratta di una limitazione nota della piattaforma che verrà risolta in futuro.

L'assegnazione di ruolo può essere eseguita tramite il portale di Azure:

  • Aprire portale di Azure e individuare l'identità assegnata dall'utente in questione.
    • Se si prevede il provisioning di più identità gestite, è possibile aggiungere il ruolo a livello di gruppo di risorse o sottoscrizione.
  • In Access control (IAM)fare clic su Aggiungi nuova assegnazione di ruolo
  • Selezionare Ruolo: Managed Identity Operator. Vedere le autorizzazioni fornite dal ruolo.
  • Assegnare l'accesso a: utente, gruppo o entità servizio
  • Selezionare Membro: AFOI-NC-MGMT-PME-PROD applicazione
  • Rivedere e assegnare

Creare un Cluster Manager

Creare Cluster Manager usando l'interfaccia della riga di comando di Azure:

Usare il comando az networkcloud clustermanager create per creare un Cluster Manager. Creare un nuovo Cluster Manager o aggiornare le proprietà di uno esistente. Se si hanno più sottoscrizioni di Azure, selezionare l'ID sottoscrizione appropriato usando il comando az account set.

az networkcloud clustermanager create \
    --name "$CLUSTER_MANAGER_NAME" \
    --location "$LOCATION" \
    --analytics-workspace-id "$LAW_NAME" \
    --fabric-controller-id "$NFC_ID" \
    --managed-resource-group-configuration name="$MRG_NAME" location="$MRG_LOCATION" \
    --tags $TAG_KEY1="$TAG_VALUE1" $TAG_KEY2="$TAG_VALUE2"
    --resource-group "$CLUSTER_MANAGER_RG"
    --subscription "$SUB_ID"
  • Argomenti
    • --name -n [obbligatorio]: il nome del Cluster Manager.
    • --fabric-controller-id [obbligatorio]: l'ID risorsa del Network Fabric Controller associato al Cluster Manager.
    • --resource-group-g [obbligatorio]: il nome del gruppo di risorse. È possibile configurare il gruppo di risorse predefinito con az configure --defaults group=<name>.
    • --analytics-workspace-id: l'ID risorsa dell'area di lavoro Log Analytics usata per la raccolta dei log
    • --location -l: posizione. L'area di Azure in cui viene creato Cluster Manager. Usare i valori ottenuti con az account list -locations. È possibile configurare la posizione predefinito con az configure --defaults location="$LOCATION".
    • --managed-resource-group-configuration: la configurazione del gruppo di risorse gestite associato alla risorsa.
      • Sintassi: --managed-resource-group-configuration location=XX name=XX
      • location: l'area del gruppo di risorse gestite. Se non specificato, viene scelta l'area della risorsa padre.
      • name: il nome del gruppo di risorse gestite. Se non specificato, verrà generato automaticamente un nome univoco.
    • wait/--no-wait: specifica se attendere il completamento del comando o non attendere il completamento dell'operazione a esecuzione prolungata.
    • --tags: tag delimitati da spazi: chiave[=valore] [chiave[=valore]...]. Usare '' per cancellare i tag esistenti
    • --subscription: nome o ID della sottoscrizione. È possibile configurare la posizione predefinito usando az account set -s NAME_OR_ID.
    • --mi-system-assigned - Abilitare l'identità gestita assegnata dal sistema. Dopo l'aggiunta, l'identità può essere rimossa solo tramite la chiamata API in questo momento.
    • --mi-user-assigned - ID risorsa separati da spazio delle identità gestite assegnate dall'utente da aggiungere. Dopo l'aggiunta, l'identità può essere rimossa solo tramite la chiamata API in questo momento.

Creare il Cluster Manager usando l'editor modelli di Azure Resource Manager:

Un modo alternativo per creare un Cluster Manager è costituito dall'editor modelli di Resource Manager.

Per creare il cluster in questo modo, è necessario fornire un file di modello (clusterManager.jsonc) e un file di parametri (clusterManager.parameters.jsonc).

Ecco alcuni esempi di questi due file:

clusterManager.jsonc, clusterManager.parameters.jsonc

Nota

Per ottenere la formattazione corretta, copiare il file di codice non elaborato. I valori all'interno del file clusterManager.parameters.jsonc sono specifici del cliente e potrebbero non essere un elenco completo. Aggiornare i campi dei valori per l'ambiente specifico.

  1. In un Web browser passare al portale di Azure ed eseguire l'accesso.
  2. Nella barra di ricerca del portale di Azure cercare 'Distribuire un modello personalizzato' e quindi selezionarlo nei servizi disponibili.
  3. Fare clic su Crea un modello personalizzato nell'editor.
  4. Fare clic su Carica file. Individuare il file modello clusterManager.jsonc e caricarlo.
  5. Fare clic su Salva.
  6. Fare clic su Modifica parametri.
  7. Fare clic su Carica file. Individuare il file di parametri clusterManager.parameters.jsonc e caricarlo.
  8. Fare clic su Salva.
  9. Selezionare la sottoscrizione corretta.
  10. Cercare il gruppo di risorse se esiste già o crearne uno nuovo.
  11. Assicurarsi che tutti i dettagli dell'istanza siano corretti.
  12. Fare clic su Rivedi e crea.

Elencare/visualizzare i Cluster Manager

I comandi list e show consentono di ottenere un elenco dei Cluster Manager esistenti o delle proprietà di uno specifico.

Elencare i Cluster Manager in un gruppo di risorse

Questo comando elenca i Cluster Manager presenti nel gruppo di risorse specificato.

az networkcloud clustermanager list --resource-group "$CLUSTER_MANAGER_RG"

Elencare i Cluster Manager in una sottoscrizione

Questo comando elenca i Cluster Manager presenti nella sottoscrizione specificata.

az networkcloud clustermanager list  --subscription "$SUB_ID"

Mostrare le proprietà del Cluster Manager

Questo comando elenca le proprietà del Cluster Manager specificato.

az networkcloud clustermanager show \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"

Argomenti dei comandi list/show

  • --name -n: il nome del Cluster Manager.
  • --IDs: uno o più ID risorsa (delimitati da spazi). Deve essere un ID risorsa completo contenente tutte le informazioni degli argomenti di 'ID risorsa'.
  • --resource-group-g: nome del gruppo di risorse. È possibile configurare il gruppo predefinito con az configure --defaults group=<name>.
  • --subscription: nome o ID della sottoscrizione. È possibile configurare la posizione predefinito usando az account set -s NAME_OR_ID.

Aggiornare il Cluster Manager

Questo comando consente di applicare patch alle proprietà del Cluster Manager specificato o di aggiornare i tag assegnati. Gli aggiornamenti di proprietà e tag possono essere eseguiti in modo indipendente.

az networkcloud clustermanager update \
    --name "$CLUSTER_MANAGER_NAME" \
    --tags $TAG_KEY1="$TAG_VALUE1" $TAG_KEY2="$TAG_VALUE2" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"
  • Argomenti
    • --tags: tag delimitati da spazi: chiave[=valore] [chiave[=valore]...]. Usare '' per cancellare tag esistenti.
    • --name -n: il nome del Cluster Manager.
    • --IDs: uno o più ID risorsa (delimitati da spazi). Deve essere un ID risorsa completo contenente tutte le informazioni degli argomenti di 'ID risorsa'.
    • --resource-group-g: nome del gruppo di risorse. È possibile configurare il gruppo predefinito con az configure --defaults group=<name>.
    • --subscription: nome o ID della sottoscrizione. È possibile configurare la posizione predefinito usando az account set -s NAME_OR_ID.
    • --mi-system-assigned - Abilitare l'identità gestita assegnata dal sistema. Dopo l'aggiunta, l'identità può essere rimossa solo tramite la chiamata API in questo momento.
    • --mi-user-assigned - ID risorsa separati da spazio delle identità gestite assegnate dall'utente da aggiungere. Dopo l'aggiunta, l'identità può essere rimossa solo tramite la chiamata API in questo momento.

Aggiornare le identità di Gestione cluster tramite LE API

Le identità gestite di Cluster Manager possono essere assegnate tramite l'interfaccia della riga di comando. L'annullamento dell'assegnazione delle identità può essere eseguita tramite chiamate API. Si noti che <APIVersion> l'API è la versione 2024-07-01 o successiva.

  • Per rimuovere tutte le identità gestite, eseguire:

    az rest --method PATCH --url /subscriptions/$SUB_ID/resourceGroups/$CLUSTER_MANAGER_RG/providers/Microsoft.NetworkCloud/clusterManagers/$CLUSTER_MANAGER_NAME?api-version=<APIVersion> --body "{\"identity\":{\"type\":\"None\"}}"
    
  • Se sono state aggiunte identità gestite assegnate dall'utente e assegnate dal sistema, è possibile rimuovere l'attributo Assegnato dall'utente aggiornando in type SystemAssigned:

    az rest --method PATCH --url /subscriptions/$SUB_ID/resourceGroups/$CLUSTER_MANAGER_RG/providers/Microsoft.NetworkCloud/clusterManagers/$CLUSTER_MANAGER_NAME?api-version=<APIVersion> --body @~/uai-body.json
    

    Esempio del corpo della richiesta (uai-body.json):

    {
      "identity": {
          "type": "SystemAssigned"
      }
    }
    
  • Se sono state aggiunte identità gestite assegnate dall'utente e assegnate dal sistema, l'assegnazione del sistema può essere rimossa aggiornando in type UserAssigned:

    az rest --method PATCH --url /subscriptions/$SUB_ID/resourceGroups/$CLUSTER_MANAGER_RG/providers/Microsoft.NetworkCloud/clusterManagers/$CLUSTER_MANAGER_NAME?api-version=<APIVersion> --body @~/uai-body.json
    

    Esempio del corpo della richiesta (uai-body.json):

    {
      "identity": {
          "type": "UserAssigned",
      	"userAssignedIdentities": {
      		"/subscriptions/$SUB_ID/resourceGroups/$UAI_RESOURCE_GROUP/providers/Microsoft.ManagedIdentity/userAssignedIdentities/$UAI_NAME": {}
      	}
      }
    }
    
  • Se sono state aggiunte più identità gestite assegnate dall'utente, è possibile rimuoverle eseguendo:

    az rest --method PATCH --url /subscriptions/$SUB_ID/resourceGroups/$CLUSTER_MANAGER_RG/providers/Microsoft.NetworkCloud/clusterManagers/$CLUSTER_MANAGER_NAME?api-version=<APIVersion> --body @~/uai-body.json
    

    Esempio del corpo della richiesta (uai-body.json):

    {
      "identity": {
          "type": "UserAssigned",
      	"userAssignedIdentities": {
      		"/subscriptions/$SUB_ID/resourceGroups/$UAI_RESOURCE_GROUP/providers/Microsoft.ManagedIdentity/userAssignedIdentities/$UAI_NAME": null
      	}
      }
    }
    

Eliminare il Cluster Manager

Questo comando consente di eliminare il Cluster Manager specificato.

Avviso

Un cluster Manager a cui è associato un Network Fabric Controller esistente o qualsiasi cluster che fa riferimento a questo Cluster Manager potrebbe non essere eliminato.

az networkcloud clustermanager delete \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"
  • Argomenti
    • --no-wait: consente di specificare di non attendere il completamento dell'operazione a esecuzione prolungata.
    • --yes -y: consente di specificare di non richiedere una conferma.
    • --name -n: il nome del Cluster Manager.
    • --IDs: uno o più ID risorsa (delimitati da spazi). Deve essere un ID risorsa completo contenente tutte le informazioni degli argomenti di 'ID risorsa'.
    • --resource-group-g: nome del gruppo di risorse. È possibile configurare il gruppo predefinito con az configure --defaults group=<name>.
    • --subscription: nome o ID della sottoscrizione. È possibile configurare la posizione predefinito usando az account set -s NAME_OR_ID.

Passaggi successivi

Dopo aver creato correttamente il controller di infrastruttura di rete e Gestione cluster, il passaggio successivo consiste nel creare un'infrastruttura di rete.