Creare e gestire un'istanza di calcolo di Azure Machine Learning con l’interfaccia della riga di comando (CLI) v1
SI APPLICA A:estensione dell'interfaccia della riga di comando (CLI) di Azure Machine Learning v1
azureml Python SDKv1
Informazioni su come creare e gestire un'istanza di calcolo nell'area di lavoro di Azure Machine Learning con l'interfaccia della riga di comando (CLI) v1.
Usare un'istanza di calcolo come ambiente di sviluppo completamente configurato e gestito nel cloud. Per lo sviluppo e il test, è anche possibile usare l'istanza come destinazione di calcolo di training o per una destinazione di inferenza. Un'istanza di ambiente di calcolo può eseguire più processi in parallelo e ha una coda di processi. Come ambiente di sviluppo, non è possibile condividere un'istanza di ambiente di calcolo con altri utenti nell'area di lavoro.
Le istanze di ambiente di calcolo possono eseguire processi in modo sicuro in un ambiente di rete virtuale senza richiedere alle aziende di aprire porte SSH. Il processo viene eseguito in un ambiente basato su contenitori e crea un pacchetto delle dipendenze del modello in un contenitore Docker.
In questo articolo vengono illustrate le operazioni seguenti:
- Creare un'istanza di ambiente di calcolo
- Gestire (avviare, arrestare, riavviare, eliminare) un'istanza di ambiente di calcolo
Nota
Questo articolo illustra solo come eseguire queste attività usando l'interfaccia della riga di comando (CLI) v1. Per modi più recenti per gestire un'istanza di ambiente di calcolo, vedere Creare un cluster di calcolo di Azure Machine Learning.
Prerequisiti
Un'area di lavoro di Azure Machine Learning. Per ulteriori informazioni, vedere Creare un'area di lavoro di Azure Machine Learning.
Estensione dell'interfaccia della riga di comando (CLI) di Azure per il servizio Machine Learning (v1) o Azure Machine Learning Python SDK (v1).
Importante
Alcuni comandi dell'interfaccia della riga di comando (CLI) di Azure in questo articolo usano l'estensione
azure-cli-ml
, o v1, per Azure Machine Learning. L'assistenza per l'estensione v1 terminerà il 30 settembre 2025. È possibile installare e usare l'estensione v1 fino a tale data.Consigliamo di passare all'estensione
ml
, o v2, prima del 30 settembre 2025. Per altre informazioni sull'estensione v2, vedere Estensione dell'interfaccia della riga di comando di Azure Machine Learning e Python SDK v2.
Creazione
Importante
Gli elementi seguenti contrassegnati (come anteprima) sono attualmente in anteprima pubblica. La versione di anteprima viene messa a disposizione senza contratto di servizio e non è consigliata per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate. Per altre informazioni, vedere le Condizioni supplementari per l'uso delle anteprime di Microsoft Azure.
Tempo stimato: circa 5 minuti.
La creazione di un'istanza di ambiente di calcolo è un processo che viene eseguito una sola volta per l'area di lavoro. È possibile riutilizzare il calcolo come workstation di sviluppo o come destinazione di calcolo per il training. È possibile collegare diverse istanze di ambiente di calcolo all'area di lavoro.
I core dedicati per area e per quota di famiglia di macchine virtuali e quota totale a livello di area, che si applica alla creazione del cluster di istanze di ambiente di calcolo, è unificata e condivisa con la quota del cluster di elaborazione del training di Azure Machine Learning. L'arresto dell'istanza di ambiente di calcolo non rilascia la quota per assicurarsi di poterla riavviare. Non è possibile modificare le dimensioni della macchina virtuale dell'istanza di ambiente di calcolo dopo la creazione.
L'esempio seguente illustra come creare un'istanza di ambiente di calcolo:
SI APPLICA A:Python SDK azureml v1
import datetime
import time
from azureml.core.compute import ComputeTarget, ComputeInstance
from azureml.core.compute_target import ComputeTargetException
# Choose a name for your instance
# Compute instance name should be unique across the azure region
compute_name = "ci{}".format(ws._workspace_id)[:10]
# Verify that instance does not exist already
try:
instance = ComputeInstance(workspace=ws, name=compute_name)
print('Found existing instance, use it.')
except ComputeTargetException:
compute_config = ComputeInstance.provisioning_configuration(
vm_size='STANDARD_D3_V2',
ssh_public_access=False,
# vnet_resourcegroup_name='<my-resource-group>',
# vnet_name='<my-vnet-name>',
# subnet_name='default',
# admin_user_ssh_public_key='<my-sshkey>'
)
instance = ComputeInstance.create(ws, compute_name, compute_config)
instance.wait_for_completion(show_output=True)
Per altre informazioni sulle classi, i metodi e i parametri usati in questo esempio, vedere i documenti di riferimento seguenti:
Gestione
Avviare, arrestare, riavviare ed eliminare un'istanza di ambiente di calcolo. Un'istanza di calcolo non viene ridotta automaticamente, quindi assicurarsi di arrestare la risorsa per evitare addebiti continuativi. L'arresto di un'istanza di calcolo la dealloca. e quindi riavviarla quando è necessario. Durante l'arresto dell'istanza di calcolo si arresta la fatturazione per le ore di calcolo; verrà comunque addebitata la fatturazione per il disco, l'indirizzo IP pubblico e il servizio di bilanciamento del carico standard.
Suggerimento
L'istanza di ambiente di calcolo ha un disco del sistema operativo da 120 GB. Se si esaurisce lo spazio su disco, usare il terminale per cancellare almeno 1-2 GB prima di arrestare o riavviare l'istanza di ambiente di calcolo. Non arrestare l'istanza di ambiente di calcolo eseguendo l'arresto sudo dal terminale. Le dimensioni del disco temporaneo nell'istanza di ambiente di calcolo dipendono dalle dimensioni della macchina virtuale scelte e il montaggio viene eseguito in /mnt.
SI APPLICA A:Python SDK azureml v1
Negli esempi seguenti il nome dell'istanza di ambiente di calcolo è istanza.
Ottenere lo stato
# get_status() gets the latest status of the ComputeInstance target instance.get_status()
Arresta
# stop() is used to stop the ComputeInstance # Stopping ComputeInstance will stop the billing meter and persist the state on the disk. # Available Quota will not be changed with this operation. instance.stop(wait_for_completion=True, show_output=True)
Inizio
# start() is used to start the ComputeInstance if it is in stopped state instance.start(wait_for_completion=True, show_output=True)
Riavviare
# restart() is used to restart the ComputeInstance instance.restart(wait_for_completion=True, show_output=True)
Elimina
# delete() is used to delete the ComputeInstance target. Useful if you want to re-use the compute name instance.delete(wait_for_completion=True, show_output=True)
Il Controllo degli accessi in base al ruolo di Azure consente di controllare quali utenti nell'area di lavoro possono creare, eliminare, avviare, arrestare e riavviare un'istanza di ambiente di calcolo. Tutti gli utenti con il ruolo collaboratore e proprietario dell'area di lavoro possono creare, eliminare, avviare, arrestare e riavviare le istanze di calcolo nell'area di lavoro. Tuttavia, solo l'autore di un'istanza di ambiente di calcolo specifica o l'utente assegnato, se creato in sostituzione, è autorizzato ad accedere a Jupyter, JupyterLab, RStudio e Posit Workbench (in precedenza RStudio Workbench) in tale istanza di ambiente di calcolo. Un'istanza di ambiente di calcolo è dedicata a un singolo utente che ha accesso alla radice. Tale utente ha accesso a Jupyter/JupyterLab/RStudio/Posit Workbench in esecuzione sull'istanza. L'istanza di ambiente di calcolo avrà l'accesso in modalità utente singolo e tutte le azioni useranno l'identità dell'utente per il Controllo degli accessi in base al ruolo di Azure e l'attribuzione dei processi delle esecuzioni dell’esperimento. L'accesso SSH viene controllato tramite il meccanismo di chiave pubblica/privata.
Queste azioni possono essere verificate dal Controllo degli accessi in base al ruolo di Azure:
- Microsoft.MachineLearningServices/workspaces/computes/read
- Microsoft.MachineLearningServices/workspaces/computes/write
- Microsoft.MachineLearningServices/workspaces/computes/delete
- Microsoft.MachineLearningServices/workspaces/computes/start/action
- Microsoft.MachineLearningServices/workspaces/computes/stop/action
- Microsoft.MachineLearningServices/workspaces/computes/restart/action
- Microsoft.MachineLearningServices/workspaces/computes/updateSchedules/action
Per creare un'istanza di calcolo, sono necessarie autorizzazioni per le azioni seguenti:
- Microsoft.MachineLearningServices/workspaces/computes/write
- Microsoft.MachineLearningServices/workspaces/checkComputeNameAvailability/action