Gestire i registri di Azure Machine Learning
Le entità di Azure Machine Learning possono essere raggruppate in due categorie generali:
- Gli asset come modelli, ambienti, componenti e set di dati sono entità durevoli indipendenti dall'area di lavoro. Ad esempio, un modello può essere registrato con qualsiasi area di lavoro e distribuito in qualsiasi endpoint.
- Le risorse come calcolo, processo ed endpoint sono entità temporanee specifiche dell'area di lavoro. Ad esempio, un endpoint online ha un URI di assegnazione dei punteggi univoco per un'istanza specifica in un'area di lavoro specifica. Analogamente, un processo viene eseguito per una durata nota e genera log e metriche ogni volta che viene eseguito.
Gli asset si prestano a essere archiviati in un repository centrale e usati in aree di lavoro diverse, possibilmente in aree geografiche diverse. Le risorse sono specifiche dell'area di lavoro.
I registri di Azure Machine Learning consentono di creare e usare tali asset in aree di lavoro diverse. I registri supportano la replica in più aree geografiche per l'accesso a bassa latenza agli asset, quindi è possibile usare gli asset nelle aree di lavoro che si trovano in aree geografiche di Azure diverse. La creazione di un registro effettua il provisioning delle risorse di Azure necessarie per facilitare la replica. In primo luogo, gli account di archiviazione BLOB di Azure in ogni area supportata. In secondo luogo, un singolo Registro Azure Container con la replica abilitata per ogni area supportata.
Prerequisiti
Prima di seguire la procedura descritta in questo articolo, assicurarsi di disporre dei prerequisiti seguenti:
L'interfaccia della riga di comando di Azure e l'estensione
ml
per l'interfaccia della riga di comando di Azure. Per altre informazioni, vedere Installare, configurare e usare l'interfaccia della riga di comando (v2).Importante
Gli esempi dell'interfaccia della riga di comando in questo articolo presuppongono che si usi la shell Bash (o compatibile). Ad esempio, un sistema Linux o un sottosistema Windows per Linux.
Un'area di lavoro di Azure Machine Learning. Se non è disponibile, usare la procedura descritta in Installare, configurare e usare l'interfaccia della riga di comando (v2) per crearne una.
Suggerimento
Se si usa una versione precedente dell'estensione ml
per l'interfaccia della riga di comando, potrebbe essere necessario aggiornarla alla versione più recente prima di usare questa funzionalità. Per aggiornare la versione più recente, usare il comando seguente:
az extension update -n ml
Per altre informazioni, vedere Installare, configurare e usare l'interfaccia della riga di comando (v2).
Preparare la creazione del Registro di sistema
Prima di procedere con la creazione di un registro, è necessario decidere attentamente le informazioni seguenti:
Scegliere un nome
Considerare i fattori seguenti prima di scegliere un nome.
- I registri sono concepiti per facilitare la condivisione degli asset di Machine Learning tra i team all'interno dell'organizzazione in tutte le aree di lavoro. Scegliere un nome che rifletta l'ambito di condivisione. Il nome deve aiutare a identificare il gruppo, la divisione o l'organizzazione.
- Il nome del Registro di sistema è univoco con l'organizzazione (tenant Microsoft Entra). Ad esempio, è possibile anteporre il nome del team o dell'organizzazione ed evitare nomi generici.
- I nomi del Registro di sistema non possono essere modificati dopo la creazione perché vengono usati negli ID di modelli, ambienti e componenti a cui si fa riferimento nel codice.
- La lunghezza può essere di 2-32 caratteri.
- Sono consentiti caratteri alfanumerici, caratteri di sottolineatura e trattini. Nessun altro carattere speciale. Nessuno spazio: i nomi del Registro di sistema fanno parte di ID modello, ambiente e componente a cui è possibile fare riferimento nel codice.
- Il nome può contenere caratteri di sottolineatura o trattini, ma non può iniziare con un carattere di sottolineatura o un trattino. Deve iniziare con un carattere alfanumerico.
Scegliere le aree di Azure
I registri consentono la condivisione degli asset tra aree di lavoro. A tale scopo, un registro replica il contenuto in più aree di Azure. È necessario definire l'elenco di aree supportate da un Registro di sistema durante la creazione del Registro di sistema. Creare un elenco di tutte le aree geografiche in cui sono attualmente presenti aree di lavoro e pianificare l'aggiunta in un prossimo futuro. Questo elenco è un buon set di aree con cui iniziare. Quando si crea un registro, si definiscono un'area primaria e un set di altre aree. L'area primaria non può essere modificata dopo la creazione del Registro di sistema, ma le altre aree possono essere aggiornate in un secondo momento.
Verificare le autorizzazioni
Assicurarsi di essere il "Proprietario" o "Collaboratore" della sottoscrizione o del gruppo di risorse in cui si prevede di creare il Registro di sistema. Se non si ha uno di questi ruoli predefiniti, vedere la sezione relativa alle autorizzazioni per la fine di questo articolo.
Creare un registro
Creare la definizione YAML e denominarla registry.yml
.
Nota
Il percorso primario viene elencato due volte nel file YAML. Nell'esempio seguente, eastus
viene elencato per primo come posizione primaria (elemento location
) e anche nell'elenco replication_locations
.
name: DemoRegistry1
tags:
description: Basic registry with one primary region and to additional regions
foo: bar
location: eastus
replication_locations:
- location: eastus
- location: eastus2
- location: westus
Per altre informazioni sulla struttura del file YAML, vedere l'articolo di riferimento su YAML del Registro di sistema.
Suggerimento
In genere vengono visualizzati nomi di aree di Azure, ad esempio "Stati Uniti orientali" nel portale di Azure, ma la creazione del Registro di sistema YAML richiede nomi di aree senza spazi e lettere minuscole. Usare az account list-locations -o table
per trovare il mapping dei nomi visualizzati dell'area al nome dell'area che può essere specificato in YAML.
Eseguire il comando create del Registro di sistema.
az ml registry create --file registry.yml
Specificare il tipo di account di archiviazione e lo SKU (facoltativo)
Suggerimento
La specifica del tipo di account di archiviazione di Azure e dello SKU è disponibile solo dall'interfaccia della riga di comando di Azure.
L’archiviazione di Azure offre diversi tipi di account di archiviazione con funzionalità e prezzi diversi. Per altre informazioni, vedere l'articolo Tipi di account di archiviazione. Dopo aver identificato lo SKU ottimale dell'account di archiviazione più adatto alle proprie esigenze, trovare il valore per il tipo di SKU appropriato. Nel file YAML usare il tipo di SKU selezionato come valore del campo storage_account_type
. Questo campo si trova sotto ogni location
nell'elenco replication_locations
.
Decidere quindi se si vuole usare un account di archiviazione BLOB di Azure o Azure Data Lake Storage Gen2. Per creare Azure Data Lake Storage Gen2, impostare storage_account_hns
su true
. Per creare l'archiviazione BLOB di Azure, impostare storage_account_hns
su false
. Il campo storage_account_hns
si trova sotto ogni location
nell'elenco di replication_locations
.
Nota
La parte hns
di storage_account_hns
fa riferimento alla funzionalità dello spazio dei nomi gerarchico degli account Azure Data Lake Storage Gen2.
Il seguente file YAML di esempio illustra questa configurazione avanzata di archiviazione:
name: DemoRegistry2
tags:
description: Registry with additional configuration for storage accounts
foo: bar
location: eastus
replication_locations:
- location: eastus
storage_config:
storage_account_hns: False
storage_account_type: Standard_LRS
- location: eastus2
storage_config:
storage_account_hns: False
storage_account_type: Standard_LRS
- location: westus
storage_config:
storage_account_hns: False
storage_account_type: Standard_LRS
Aggiungere utenti al Registro di sistema
Decidere se si desidera consentire agli utenti di usare solo gli asset (modelli, ambienti e componenti) dal Registro di sistema o di usare e creare asset nel Registro di sistema. Esaminare i passaggi per assegnare un ruolo se non si ha familiarità con come gestire le autorizzazioni usando controllo degli accessi in base al ruolo di Azure.
Consentire agli utenti di usare gli asset dal Registro di sistema
Per consentire a un utente di leggere solo gli asset, è possibile concedere all'utente il ruolo di lettore predefinito. Se non si vuole usare il ruolo predefinito, creare un ruolo personalizzato con le autorizzazioni seguenti
Autorizzazione | Descrizione |
---|---|
Microsoft.MachineLearningServices/registries/read | Consente all'utente di elencare i registri e ottenere i metadati del Registro di sistema |
Microsoft.MachineLearningServices/registries/assets/read | Consente all'utente di esplorare gli asset e di usare gli asset in un'area di lavoro |
Consentire agli utenti di creare e usare asset dal Registro di sistema
Per consentire all'utente di leggere e creare o eliminare asset, concedere l'autorizzazione di scrittura seguente oltre alle autorizzazioni di lettura precedenti.
Autorizzazione | Descrizione |
---|---|
Microsoft.MachineLearningServices/registries/assets/write | Creare asset nei registri |
Microsoft.MachineLearningServices/registries/assets/delete | Eliminare gli asset nei registri |
Avviso
I ruoli collaboratore e proprietario predefiniti consentono agli utenti di creare, aggiornare ed eliminare registri. È necessario creare un ruolo personalizzato se si desidera che l'utente crei e usi gli asset dal Registro di sistema, ma non crea o aggiorna registri. Esaminare ruoli personalizzati per informazioni su come creare ruoli personalizzati dalle autorizzazioni.
Consentire agli utenti di creare e gestire registri
Per consentire agli utenti di creare, aggiornare ed eliminare registri, concedere loro il ruolo predefinito Contributore o Proprietario. Se non si desidera usare ruoli predefiniti, creare un ruolo personalizzato con le autorizzazioni seguenti, oltre a tutte le autorizzazioni precedenti per leggere, creare ed eliminare asset nel Registro di sistema.
Autorizzazione | Descrizione |
---|---|
Microsoft.MachineLearningServices/registries/write | Consente all'utente di creare o aggiornare registri |
Microsoft.MachineLearningServices/registries/delete | Consente all'utente di eliminare i registri |