Share via


Gestire e distribuire risorse nell'hub di Azure Stack con l'interfaccia della riga di comando di Azure

Si applica a: Sistemi integrati dell'hub di Azure Stack

Seguire la procedura descritta in questo articolo per configurare l'interfaccia della riga di comando di Azure Command-Line per gestire le risorse dell'hub di Azure Stack dalle piattaforme client Linux, Mac e Windows.

Preparare l'interfaccia della riga di comando di Azure

L'endpoint alias della macchina virtuale fornisce un alias, ad esempio "UbuntuLTS" o "Win2012Datacenter". Questo alias fa riferimento a un editore di immagini, a un'offerta, a SKU e a una versione come singolo parametro durante la distribuzione di macchine virtuali.

La sezione seguente descrive come configurare l'endpoint degli alias delle macchine virtuali.

Configurare l'endpoint degli alias delle macchine virtuali

È possibile configurare un endpoint accessibile pubblicamente che ospita un file alias della macchina virtuale. Il file alias della macchina virtuale è un file JSON che fornisce un nome comune per un'immagine. Il nome viene usato quando si distribuisce una macchina virtuale come parametro dell'interfaccia della riga di comando di Azure.

  1. Se si pubblica un'immagine personalizzata, prendere nota delle informazioni sull'editore, sull'offerta, sullo SKU e sulla versione specificate durante la pubblicazione. Se si tratta di un'immagine dal Marketplace, è possibile visualizzare le informazioni usando il Get-AzureVMImage cmdlet .

  2. Scaricare il file di esempio da GitHub.

  3. Creare un account di archiviazione nell'hub di Azure Stack. Al termine, creare un contenitore BLOB. Impostare i criteri di accesso su "public".

  4. Caricare il file JSON nel nuovo contenitore. Al termine, è possibile visualizzare l'URL del BLOB. Selezionare il nome del BLOB e quindi selezionare l'URL dalle proprietà del BLOB.

Installare o aggiornare l'interfaccia della riga di comando

Accedere alla workstation di sviluppo e installare l'interfaccia della riga di comando. L'hub di Azure Stack richiede la versione 2.0 o successiva dell'interfaccia della riga di comando di Azure. La versione più recente dei profili API richiede una versione corrente dell'interfaccia della riga di comando. Per installare l'interfaccia della riga di comando, seguire la procedura descritta nell'articolo Installare l'interfaccia della riga di comando di Azure.

Per verificare se l'installazione è riuscita, aprire una finestra del terminale o del prompt dei comandi ed eseguire il comando seguente:

az --version

Verrà visualizzata la versione dell'interfaccia della riga di comando di Azure e altre librerie dipendenti installate nel computer.

Interfaccia della riga di comando di Azure nel percorso Python dell'hub di Azure Stack

Windows/Linux (ID Microsoft Entra)

Questa sezione illustra come configurare l'interfaccia della riga di comando se si usa Microsoft Entra ID come servizio di gestione delle identità e si usa l'interfaccia della riga di comando in un computer Windows/Linux.

Connettersi all'hub di Azure Stack

  1. Registrare l'ambiente dell'hub di Azure Stack eseguendo il az cloud register comando .

  2. Registrare l'ambiente. Usare i parametri seguenti durante l'esecuzione az cloud registerdi :

    Valore Esempio Descrizione
    Nome ambiente AzureStackUser Usare AzureStackUser per l'ambiente utente. Se si è un operatore, specificare AzureStackAdmin.
    L'endpoint di Resource Manager https://management.local.azurestack.external ResourceManagerUrl nei sistemi integrati è: https://management.<region>.<fqdn>/ se si ha una domanda sull'endpoint di sistema integrato, contattare l'operatore cloud.
    Endpoint di archiviazione local.azurestack.external Per un sistema integrato, usare un endpoint per il sistema.
    Suffisso Keyvault .vault.local.azurestack.external Per un sistema integrato, usare un endpoint per il sistema.
    Endpoint doc dell'alias dell'immagine della macchina virtuale- https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm-compute/quickstart-templates/aliases.json URI del documento, che contiene gli alias dell'immagine della macchina virtuale. Per altre informazioni, vedere Configurare l'endpoint degli alias della macchina virtuale.
    az cloud register -n <environmentname> --endpoint-resource-manager "https://management.local.azurestack.external" --suffix-storage-endpoint "local.azurestack.external" --suffix-keyvault-dns ".vault.local.azurestack.external" --endpoint-vm-image-alias-doc <URI of the document which contains VM image aliases>
    
  3. Impostare l'ambiente attivo usando i comandi seguenti.

    az cloud set -n <environmentname>
    
  4. Aggiornare la configurazione dell'ambiente per usare il profilo di versione dell'API specifico dell'hub di Azure Stack. Per aggiornare la configurazione, eseguire il comando seguente:

    az cloud update --profile 2019-03-01-hybrid
    
  5. Accedere all'ambiente dell'hub di Azure Stack usando il az login comando . Accedere all'ambiente dell'hub di Azure Stack come utente o come entità servizio.

    • Accedere come utente:

      È possibile specificare il nome utente e una password direttamente all'interno del comando az login oppure eseguire l'autenticazione tramite un browser. È necessario eseguire quest'ultima operazione se l'account dispone dell'autenticazione a più fattori abilitata:

      az login -u <Active directory global administrator or user account. For example: username@<aadtenant>.onmicrosoft.com> --tenant <Azure Active Directory Tenant name. For example: myazurestack.onmicrosoft.com>
      

      Nota

      Se l'account utente ha abilitato l'autenticazione a più fattori, usare il az login comando senza specificare il -u parametro . L'esecuzione di questo comando fornisce un URL e un codice da usare per l'autenticazione.

    • Accedere come entità servizio:

      Prima di accedere, creare un'entità servizio tramite il portale di Azure o l'interfaccia della riga di comando e assegnargli un ruolo. A questo momento, accedere usando il comando seguente:

      az login --tenant <Azure Active Directory Tenant name. For example: myazurestack.onmicrosoft.com> --service-principal -u <Application Id of the Service Principal> -p <Key generated for the Service Principal>
      

Testare la connettività

Con tutti gli elementi configurati, usare l'interfaccia della riga di comando per creare risorse all'interno dell'hub di Azure Stack. Ad esempio, è possibile creare un gruppo di risorse per un'app e aggiungere una macchina virtuale. Usare il comando seguente per creare un gruppo di risorse denominato "MyResourceGroup":

az group create -n MyResourceGroup -l local

Se il gruppo di risorse viene creato correttamente, il comando precedente restituisce le proprietà seguenti della risorsa appena creata:

Output di creazione del gruppo di risorse

Windows/Linux (AD FS)

Questa sezione illustra come configurare l'interfaccia della riga di comando se si usa Active Directory Federated Services (AD FS) come servizio di gestione delle identità e si usa l'interfaccia della riga di comando in un computer Windows/Linux.

Connettersi all'hub di Azure Stack

  1. Registrare l'ambiente dell'hub di Azure Stack eseguendo il az cloud register comando .

  2. Registrare l'ambiente. Usare i parametri seguenti durante l'esecuzione az cloud registerdi :

    Valore Esempio Descrizione
    Nome ambiente AzureStackUser Usare AzureStackUser per l'ambiente utente. Se si è un operatore, specificare AzureStackAdmin.
    L'endpoint di Resource Manager https://management.local.azurestack.external ResourceManagerUrl nei sistemi integrati è: https://management.<region>.<fqdn>/ se si ha una domanda sull'endpoint di sistema integrato, contattare l'operatore cloud.
    Endpoint di archiviazione local.azurestack.external Per un sistema integrato, usare un endpoint per il sistema.
    Suffisso Keyvault .vault.local.azurestack.external Per un sistema integrato, usare un endpoint per il sistema.
    Endpoint doc dell'alias dell'immagine della macchina virtuale- https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm-compute/quickstart-templates/aliases.json URI del documento, che contiene gli alias dell'immagine della macchina virtuale. Per altre informazioni, vedere Configurare l'endpoint degli alias della macchina virtuale.
    az cloud register -n <environmentname> --endpoint-resource-manager "https://management.local.azurestack.external" --suffix-storage-endpoint "local.azurestack.external" --suffix-keyvault-dns ".vault.local.azurestack.external" --endpoint-vm-image-alias-doc <URI of the document which contains VM image aliases>
    
  3. Impostare l'ambiente attivo usando i comandi seguenti.

    az cloud set -n <environmentname>
    
  4. Aggiornare la configurazione dell'ambiente per usare il profilo di versione dell'API specifico dell'hub di Azure Stack. Per aggiornare la configurazione, eseguire il comando seguente:

    az cloud update --profile 2019-03-01-hybrid
    
  5. Accedere all'ambiente dell'hub di Azure Stack usando il az login comando . È possibile accedere all'ambiente dell'hub di Azure Stack come utente o come entità servizio.

    • Accedere come utente:

      È possibile specificare il nome utente e una password direttamente all'interno del comando az login oppure eseguire l'autenticazione tramite un browser. È necessario eseguire quest'ultima operazione se l'account dispone dell'autenticazione a più fattori abilitata:

      az cloud register  -n <environmentname>   --endpoint-resource-manager "https://management.local.azurestack.external"  --suffix-storage-endpoint "local.azurestack.external" --suffix-keyvault-dns ".vault.local.azurestack.external" --endpoint-vm-image-alias-doc <URI of the document which contains VM image aliases>   --profile "2019-03-01-hybrid"
      

      Nota

      Se l'account utente ha abilitato l'autenticazione a più fattori, usare il az login comando senza specificare il -u parametro . L'esecuzione di questo comando fornisce un URL e un codice da usare per l'autenticazione.

    • Accedere come entità servizio:

      Preparare il file con estensione pem da usare per l'account di accesso dell'entità servizio.

      Nel computer client in cui è stata creata l'entità, esportare il certificato dell'entità servizio come pfx con la chiave privata disponibile in cert:\CurrentUser\My. Il nome del certificato ha lo stesso nome dell'entità.

      Convertire il file pfx in pem (usare l'utilità OpenSSL).

      Accedere all'interfaccia della riga di comando:

      az login --service-principal \
      -u <Client ID from the Service Principal details> \
      -p <Certificate's fully qualified name, such as, C:\certs\spn.pem>
      --tenant <Tenant ID> \
      --debug 
      

Testare la connettività

Con tutti gli elementi configurati, usare l'interfaccia della riga di comando per creare risorse all'interno dell'hub di Azure Stack. Ad esempio, è possibile creare un gruppo di risorse per un'app e aggiungere una macchina virtuale. Usare il comando seguente per creare un gruppo di risorse denominato "MyResourceGroup":

az group create -n MyResourceGroup -l local

Se il gruppo di risorse viene creato correttamente, il comando precedente restituisce le proprietà seguenti della risorsa appena creata:

Output di creazione del gruppo di risorse

Problemi noti

Esistono problemi noti quando si usa l'interfaccia della riga di comando nell'hub di Azure Stack:

  • Modalità interattiva dell'interfaccia della riga di comando. Ad esempio, il az interactive comando non è ancora supportato nell'hub di Azure Stack.
  • Per ottenere l'elenco delle immagini di vm disponibili nell'hub di Azure Stack, usare il az vm image list --all comando anziché il az vm image list comando . Se si specifica l'opzione --all , la risposta restituisce solo le immagini disponibili nell'ambiente dell'hub di Azure Stack.
  • Gli alias di immagine della macchina virtuale disponibili in Azure potrebbero non essere applicabili all'hub di Azure Stack. Quando si usano immagini vm, è necessario usare l'intero parametro URN (Canonical:UbuntuServer:14.04.3-LTS:1.0.0) anziché l'alias dell'immagine. Questo URN deve corrispondere alle specifiche dell'immagine derivate dal az vm images list comando .

Passaggi successivi