Condividi tramite


Aggiungere e configurare un catalogo da GitHub o Azure Repos

Questo articolo spiega come aggiungere e configurare un catalogo per il dev center o il progetto di Ambienti di distribuzione di Azure.

I cataloghi consentono di fornire un set di modelli di infrastruttura come codice (IaC) curati, noti come definizioni di ambiente per i team di sviluppo per creare ambienti. È possibile collegare il proprio repository di controllo del codice sorgente da GitHub o Azure Repos come catalogo e specificare la cartella con le definizioni dell'ambiente. Ambienti di distribuzione analizza la cartella per cercare le definizioni di ambiente e le rende disponibili ai team di sviluppo per la creazione di ambienti.

Per proteggere ulteriormente i modelli, il catalogo viene crittografato. Ambienti di distribuzione di Azure supporta la crittografia dei dati inattivi con chiavi di crittografia gestite dalla piattaforma, gestite da Microsoft per i servizi di Azure.

  • Per informazioni su come ospitare un repository in GitHub, vedere Introduzione a GitHub.
  • Per informazioni su come ospitare un repository Git in un progetto Azure Repos, vedere Azure Repos.

Microsoft offre un catalogo di guide introduttive che è possibile aggiungere al dev center o al progetto e un catalogo di esempio che è possibile usare come repository. È anche possibile usare il proprio repository privato oppure è possibile creare una copia tramite fork e personalizzare le definizioni di ambiente nel catalogo di esempio.

In questo articolo vengono illustrate le operazioni seguenti:

  1. Configurare i cataloghi a livello di progetto
  2. Configurare un'identità gestita
  3. Aggiungere un catalogo da Azure Repos o da GitHub
  4. Aggiornare un catalogo
  5. Eliminare un catalogo
  6. Risolvere gli errori di sincronizzazione del catalogo

Configurare i cataloghi a livello di progetto

L'associazione di cataloghi a livello di progetto consente ai tecnici della piattaforma di fornire definizioni di ambiente curate specifiche per i team di sviluppo. Inoltre, consente ai responsabili del team di sviluppo assegnati come amministratori di progetto di gestire le definizioni di ambiente rese disponibili ai team.

I tecnici della piattaforma hanno il controllo completo sull'uso dei cataloghi a livello di progetto. L'uso dei cataloghi a livello di progetto deve essere abilitato a livello di dev center prima che un catalogo possa essere aggiunto a un progetto. I tecnici della piattaforma possono anche configurare i tipi di elementi dei cataloghi, come le definizioni di ambiente, che possono essere utilizzati a livello di progetto.

Per impostazione predefinita, l'uso dei cataloghi a livello di progetto è disabilitato e nessuno dei tipi di elementi del catalogo è abilitato. Le definizioni di ambiente di un catalogo a livello di progetto sono sincronizzate e utilizzabili in due condizioni. Prima di tutto, è necessario abilitare cataloghi basati su progetti a livello di dev center corrispondente. In secondo luogo, è necessario abilitare l'uso delle definizioni di ambiente per il progetto.

Aggiungere un catalogo a un progetto

Per poter aggiungere un catalogo a un progetto, è necessario prima abilitare i cataloghi a livello di progetto a livello di dev center. In secondo luogo, è necessario abilitare l'uso delle definizioni di ambiente a livello di progetto.

Per abilitare l'uso di cataloghi a livello di progetto a livello di dev center:

  1. Nel portale di Azure passare al dev center.

  2. Nel menu di sinistra, in Impostazioni, selezionare Configurazione.

    Screenshot che mostra la pagina di panoramica di un dev center con l’opzione Configurazione evidenziata.

  3. Nel riquadro Cataloghi a livello di progetto selezionare Abilita cataloghi per progetto, quindi selezionare Applica.

    Screenshot che mostra il riquadro Cataloghi a livello di progetto con l'opzione Abilita cataloghi per progetto evidenziata.

In secondo luogo, è necessario abilitare le definizioni di ambiente nel progetto.

  1. Nel portale di Azure passare al progetto.

  2. Nel menu a sinistra, in Impostazioni selezionare Cataloghi.

    Screenshot che mostra la pagina di panoramica di un progetto con l’opzione Cataloghi evidenziata.

  3. Nella pagina Cataloghi selezionare Autorizzazioni per gli elementi del catalogo.

    Screenshot che mostra il riquadro Cataloghi, con l’opzione Autorizzazioni per gli elementi del catalogo evidenziata.

  4. Nel riquadro Impostazioni degli elementi del catalogo selezionare Definizioni di ambiente di distribuzione di Azure per abilitare l'uso delle definizioni di ambiente a livello di progetto.

    Screenshot che mostra il riquadro Impostazioni degli elementi del catalogo con l’opzione Definizioni di ambiente di distribuzione di Azure selezionata.

Ora è possibile aggiungere un catalogo al progetto.

Per i cataloghi che usano un'identità gestita o un token di accesso personale (PAT) per l'autenticazione, è necessario assegnare un'identità gestita per il progetto. Per i cataloghi che usano un token di accesso personale, è necessario archiviare il token di accesso personale in un insieme di credenziali delle chiavi e concedere all'identità gestita l'accesso al segreto dell'insieme di credenziali delle chiavi.

Configurare un'identità gestita

Prima di poter collegare un catalogo a un dev center o a un progetto, è necessario configurare un'identità gestita, detta anche identità del servizio gestita. È possibile associare un'identità gestita assegnata dal sistema (identità del servizio gestita assegnata dal sistema) o un'identità gestita assegnata dall'utente (identità del servizio gestita assegnata dall'utente). Si assegnano quindi ruoli all'identità gestita per consentire al dev center o al progetto di creare tipi di ambiente nella sottoscrizione e leggere il progetto Azure Repos che contiene il repository del catalogo.

Se al dev center o al progetto non è associata un'identità del servizio gestita, seguire i passaggi descritti in Configurare un'identità gestita per crearne una e assegnare i ruoli per l'identità gestita.

Per altre informazioni sulle identità gestite, vedere Informazioni sulle identità gestite per le risorse di Azure.

Aggiungere un catalogo

È possibile aggiungere un catalogo da un repository Azure Repos o da un repository GitHub. È possibile scegliere di eseguire l'autenticazione assegnando autorizzazioni a un'identità del servizio gestita o usando un token di accesso personale archiviato in un insieme di credenziali delle chiavi.

Selezionare la scheda per il tipo di repository e l'autenticazione da usare.

Per aggiungere un catalogo, completare le attività seguenti:

  • Assegnare le autorizzazioni in Azure Repos per l'identità gestita.
  • Aggiungere il repository come catalogo.

Assegnare le autorizzazioni in Azure Repos per l'identità gestita

È necessario concedere all'identità gestita le autorizzazioni per il repository in Azure Repos.

  1. Accedere all'Organizzazione di Azure DevOps.

    Nota

    L'organizzazione di Azure DevOps deve trovarsi nella stessa directory della sottoscrizione di Azure che contiene il dev center o il progetto.

  2. Seleziona Impostazioni organizzazione.

    Screenshot che mostra la pagina dell'organizzazione di Azure DevOps con l'opzione Impostazioni organizzazione evidenziata.

  3. Nella pagina Panoramica selezionare Utenti.

    Screenshot che mostra la pagina di panoramica dell'organizzazione con l'opzione Utenti evidenziata.

  4. Nella pagina Utenti selezionare Aggiungi utenti.

    Screenshot che mostra la pagina Utenti con l'opzione Aggiungi utenti evidenziata.

  5. Completare Aggiungi nuovi utenti immettendo o selezionando le informazioni seguenti e quindi selezionare Aggiungi:

    Nome Valore
    Utenti o Entità servizio Immettere il nome del dev center o del progetto.
    Quando si usa un'identità del servizio gestita assegnata dal sistema, specificare il nome del dev center o del progetto, non l'ID oggetto dell'account gestito. Quando si usa un'identità del servizio gestita assegnata dall'utente, usare il nome dell'account gestito.
    Livello di accesso Selezionare Basic.
    Aggiungi a progetti Selezionare il progetto che contiene il repository.
    Gruppi di Azure DevOps Selezionare Lettori di progetto.
    Inviare inviti tramite posta elettronica (solo agli utenti) Deselezionare la casella di controllo.

    Screenshot che mostra l'opzione Aggiungi utenti, con voci di esempio e il pulsante Aggiungi evidenziato.

Aggiungere il repository come catalogo

Ambienti di distribuzione di Azure supporta l'associazione di repository Azure Repos e repository GitHub. È possibile archiviare un set di modelli IaC curati in un repository. L'associazione del repository a un dev center o a un progetto come catalogo consente ai team di sviluppo di accedere ai modelli e di creare rapidamente ambienti coerenti.

La procedura seguente consente di associare un repository Azure Repos.

  1. Nel portale di Azure passare al dev center o al progetto.

  2. Nel menu a sinistra in Configurazione dell'ambiente selezionare Cataloghi e quindi selezionare Aggiungi.

    Screenshot che mostra il riquadro Cataloghi.

  3. In Aggiungi catalogo immettere le informazioni seguenti e quindi selezionare Aggiungi:

    Campo Valore
    Nome Immettere un nome per il catalogo.
    Posizione catalogo Selezionare Azure DevOps.
    Tipo di autenticazione Selezionare Identità gestita.
    Azienda Selezionare l'organizzazione di Azure DevOps.
    Progetto Nell'elenco dei progetti selezionare il progetto in cui è archiviato il repository.
    Repository Nell'elenco dei repository selezionare il repository da aggiungere.
    Ramo Selezionare il ramo.
    Percorso cartella Dev Box recupera un elenco di cartelle nel ramo. Selezionare la cartella in cui sono archiviati i modelli IaC.

    Screenshot che mostra il riquadro Aggiungi catalogo con voci di esempi e il pulsante Aggiungi evidenziato.

  4. In Cataloghi per il dev center o il progetto verificare che venga visualizzato il catalogo. Quando la connessione ha esito positivo, in Stato viene visualizzato Sincronizzazione riuscita. La prima connessione a un catalogo può richiedere alcuni minuti.

Visualizzare gli elementi del catalogo sincronizzati

Indipendentemente dal tipo di repository usato, è possibile visualizzare gli elementi del catalogo sincronizzati dal catalogo.

  1. Nel menu a sinistra del dev center o del progetto, in Configurazione dell'ambiente selezionare Cataloghi.

  2. Nel riquadro Cataloghi selezionare il nome del catalogo.

    Screenshot che mostra il riquadro Cataloghi con il nome del catalogo associato evidenziato.

  3. Viene visualizzato un elenco di elementi del catalogo sincronizzati correttamente.

    Screenshot che mostra gli elementi del catalogo sincronizzati correttamente dal catalogo associato.

Aggiornare un catalogo

Se si aggiorna il contenuto della definizione o del modello nel repository associato, è possibile fornire il set più recente di definizioni di ambiente ai team di sviluppo sincronizzando il catalogo. È possibile sincronizzare un catalogo manualmente o automaticamente.

Sincronizzare manualmente un catalogo

Quando si sincronizza manualmente un catalogo, Ambienti di distribuzione analizza il repository e rende disponibile l'elenco più recente di definizioni di ambiente a tutti i progetti associati nel dev center.

  1. Nel menu a sinistra del dev center, in Configurazione dell'ambiente selezionare Cataloghi.

  2. Selezionare il catalogo specifico e quindi nella barra dei comandi selezionare Sincronizza.

    Screenshot che mostra il pulsante Sincronizza nella barra dei comandi.

Sincronizzare automaticamente un catalogo

Quando si configura un catalogo per la sincronizzazione automatica, Ambienti di distribuzione analizza il repository ogni 30 minuti e rende disponibile l'elenco più recente di definizioni di ambiente a tutti i progetti associati nel dev center.

  1. Nel menu a sinistra del dev center o del progetto, in Configurazione dell'ambiente selezionare Cataloghi.

  2. Selezionare il catalogo specifico e quindi selezionare Modifica.

    Screenshot che mostra il pulsante Modifica di un catalogo.

  3. Nel riquadro Modifica catalogo selezionare Sincronizza automaticamente il catalogo e quindi selezionare Salva.

    Screenshot che mostra il riquadro Modifica catalogo, con Sincronizza automaticamente il catalogo evidenziato.

Se una sincronizzazione automatica ha esito negativo, è necessario eseguire una sincronizzazione manuale. Gli ambienti di distribuzione non effettuano ulteriori tentativi di sincronizzazione automatica fino a quando una sincronizzazione manuale non riesce.

Eliminare un catalogo

È possibile eliminare un catalogo per rimuoverlo dal dev center o dal progetto di Ambienti di distribuzione di Azure. I modelli in un catalogo eliminato non sono disponibili per i team di sviluppo quando distribuiscono nuovi ambienti. Aggiornare il riferimento alle definizioni di ambiente per tutti gli ambienti esistenti creati usando le definizioni di ambiente nel catalogo eliminato. Se il riferimento non viene aggiornato e l'ambiente viene ridistribuito, la distribuzione non riesce.

Per eliminare un catalogo:

  1. Nel menu a sinistra del dev center o del progetto, in Configurazione dell'ambiente selezionare Cataloghi.

  2. Selezionare il catalogo specifico e quindi selezionare Elimina.

  3. Nella finestra di dialogo Elimina catalogo selezionare Continua per eliminare il catalogo.

Risolvere gli errori di sincronizzazione del catalogo

Quando si aggiunge o si sincronizza un catalogo, è possibile che si verifichi un errore o un avviso di sincronizzazione. Un errore di sincronizzazione indica che la sincronizzazione di un catalogo non è riuscita. Un avviso di sincronizzazione indica che alcuni o tutti gli elementi del catalogo hanno errori. È possibile visualizzare lo stato di sincronizzazione e gli errori nel portale di Azure oppure usare l'interfaccia della riga di comando di Azure e l'API REST per risolvere gli errori.

Visualizzare lo stato di sincronizzazione del catalogo

Nel portale di Azure è possibile ottenere altre informazioni sullo stato di sincronizzazione del catalogo e sugli eventuali avvisi o errori selezionando il collegamento dello stato. Il collegamento dello stato apre un riquadro che mostra lo stato di sincronizzazione, il numero di definizioni di ambiente aggiunte e il numero di definizioni di ambiente ignorate o non riuscite.

Visualizzare gli errori di sincronizzazione del catalogo

  1. Nel menu a sinistra del dev center o del progetto, in Configurazione dell'ambiente selezionare Cataloghi.

  2. Nella colonna Stato selezionare il collegamento dello stato del catalogo la cui sincronizzazione non è riuscita.

    Screenshot che mostra il riquadro Cataloghi, con la sincronizzazione non riuscita evidenziata.

  3. Viene visualizzato un riquadro dei dettagli che mostra le modifiche dell'ultima sincronizzazione, il numero di errori di sincronizzazione e il tipo di errori.

    Screenshot che mostra il riquadro degli errori di sincronizzazione del catalogo.

Visualizzare gli avvisi di sincronizzazione del catalogo

  1. Nel menu a sinistra del dev center o del progetto, in Configurazione dell'ambiente selezionare Cataloghi.

  2. Nella colonna Stato selezionare il collegamento dello stato del catalogo sincronizzato ma che segnala un avviso.

    Screenshot che mostra il riquadro Cataloghi, con errori in tre elementi evidenziati.

  3. Viene visualizzato un riquadro dei dettagli che mostra le modifiche dell'ultima sincronizzazione, il numero di errori degli elementi e il tipo e l'origine di ogni errore.

    Screenshot che mostra il riquadro degli errori di sincronizzazione del catalogo.

  4. È possibile visualizzare gli elementi sincronizzati correttamente da un catalogo che segnala anche errori di sincronizzazione. Nel riquadro Cataloghi selezionare il nome del catalogo.

    Screenshot che mostra il riquadro Cataloghi con il nome di un catalogo evidenziato.

  5. Viene visualizzato un elenco di elementi del catalogo sincronizzati correttamente.

    Screenshot che mostra gli elementi del catalogo sincronizzati correttamente.

Risolvere gli errori di sincronizzazione del catalogo usando l'interfaccia della riga di comando di Azure

Usare l'interfaccia della riga di comando di Azure o l'API REST per ottenere tramite GET il catalogo. La risposta GET mostra il tipo di errore:

  • Definizioni di ambiente ignorate rilevate come duplicati.
  • Definizioni di ambiente non valide che hanno avuto esito negativo a causa di errori di schema, riferimento o convalida.

Risolvere gli errori di definizioni di ambiente ignorate

Se si aggiungono due o più definizioni di ambiente con lo stesso nome, si verifica un errore di definizioni di ambiente ignorate. È possibile risolvere questo problema rinominando le definizioni di ambiente in modo che ogni definizione di ambiente abbia un nome univoco all'interno del catalogo.

Risolvere gli errori di definizioni di ambiente non valide

Un errore di definizioni di ambiente non valide può verificarsi per diversi motivi:

  • Errori dello schema del manifesto. Assicurarsi che il file di ambiente delle definizioni di ambiente corrisponda allo schema richiesto.

  • Errori di convalida. Controllare gli elementi seguenti per risolvere gli errori di convalida:

    • Assicurarsi che il tipo di motore del file di ambiente sia configurato correttamente.
    • Assicurarsi che il nome della definizione di ambiente contenga un numero di caratteri compreso tra 3 e 63.
    • Assicurarsi che il nome della definizione di ambiente includa solo i caratteri validi per un URL, cioè i caratteri alfanumerici e questi simboli: ~ ! , . ' ; : = - _ + ( ) * & $ @
  • Errori di riferimento. Assicurarsi che il percorso del modello a cui fa riferimento il file di ambiente sia un percorso relativo valido di un file nel repository.