Condividi tramite


RemoteCompute Classe

Gestisce una destinazione di calcolo remota da usare in Azure Machine Learning.

Azure Machine Learning supporta l'uso del collegamento di una risorsa di calcolo remota all'area di lavoro. La risorsa remota può essere una macchina virtuale di Azure, un server remoto nell'organizzazione o in locale, purché la risorsa sia accessibile ad Azure Machine Learning. Per altre informazioni, vedere Che cosa sono le destinazioni di calcolo in Azure Machine Learning?

Costruttore ComputeTarget della classe.

Recuperare una rappresentazione cloud di un oggetto Compute associato all'area di lavoro specificata. Restituisce un'istanza di una classe figlio corrispondente al tipo specifico dell'oggetto Compute recuperato.

Costruttore

RemoteCompute(workspace, name)

Parametri

Nome Descrizione
workspace
Necessario

Oggetto workspace contenente l'oggetto RemoteCompute da recuperare.

name
Necessario
str

Nome dell'oggetto RemoteCompute da recuperare.

workspace
Necessario

Oggetto workspace contenente l'oggetto Compute da recuperare.

name
Necessario
str

Nome dell'oggetto Compute da recuperare.

Commenti

Le aree di Azure seguenti non supportano l'uso dell'indirizzo IP pubblico di una macchina virtuale o di un cluster HDInsight per collegare la destinazione di calcolo.

  • Stati Uniti orientali

  • Stati Uniti occidentali 2

  • Stati Uniti centro-meridionali

Usare invece l'ID di Azure Resource Manager della macchina virtuale o del cluster HDInsight. L'ID risorsa della macchina virtuale può essere costruito usando l'ID sottoscrizione, il nome del gruppo di risorse e il nome della macchina virtuale usando il formato stringa seguente: /subscriptions/subscription_id/<resourceGroups/>resource_group</providers/Microsoft.Compute/virtualMachines/>vm_name<>.

L'esempio seguente illustra come creare e collegare una Data Science Virtual Machine (DSVM) come destinazione di calcolo.


   from azureml.core.compute import ComputeTarget, RemoteCompute
   from azureml.core.compute_target import ComputeTargetException

   username = os.getenv('AZUREML_DSVM_USERNAME', default='<my_username>')
   address = os.getenv('AZUREML_DSVM_ADDRESS', default='<ip_address_or_fqdn>')

   compute_target_name = 'cpudsvm'
   # if you want to connect using SSH key instead of username/password you can provide parameters private_key_file and private_key_passphrase
   try:
       attached_dsvm_compute = RemoteCompute(workspace=ws, name=compute_target_name)
       print('found existing:', attached_dsvm_compute.name)
   except ComputeTargetException:
       attach_config = RemoteCompute.attach_configuration(address=address,
                                                          ssh_port=22,
                                                          username=username,
                                                          private_key_file='./.ssh/id_rsa')


   # Attaching a virtual machine using the public IP address of the VM is no longer supported.
   # Instead, use resourceId of the VM.
   # The resourceId of the VM can be constructed using the following string format:
   # /subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.Compute/virtualMachines/<vm_name>.
   # You can also use subscription_id, resource_group and vm_name without constructing resourceId.
       attach_config = RemoteCompute.attach_configuration(resource_id='<resource_id>',
                                                          ssh_port=22,
                                                          username='username',
                                                          private_key_file='./.ssh/id_rsa')

       attached_dsvm_compute = ComputeTarget.attach(ws, compute_target_name, attach_config)

       attached_dsvm_compute.wait_for_completion(show_output=True)

L'esempio completo è disponibile da https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/training/train-on-remote-vm/train-on-remote-vm.ipynb

Metodi

attach

DEPRECATO. Usare invece il attach_configuration metodo .

Associare una risorsa di calcolo remota esistente all'area di lavoro specificata.

attach_configuration

Creare un oggetto di configurazione per collegare una destinazione di calcolo remota.

Il collegamento di una macchina virtuale tramite l'indirizzo IP pubblico della macchina virtuale non è più supportato. Usare invece il valore resourceId della macchina virtuale. Il resourceId della macchina virtuale può essere costruito usando il formato stringa seguente: "/subscriptions/<subscription_id>/resourceGroups/<resource_group>/ providers/Microsoft.Compute/virtualMachines/<vm_name>".

È anche possibile usare subscription_id, resource_group e vm_name senza costruire resourceId. Per altre informazioni, vedere https://aka.ms/azureml-compute-vm.

delete

L'eliminazione non è supportata per un oggetto RemoteCompute. Utilizzare invece detach.

deserialize

Convertire un oggetto JSON in un oggetto RemoteCompute.

detach

Scollegare l'oggetto RemoteCompute dall'area di lavoro associata.

Gli oggetti cloud sottostanti non vengono eliminati, ma solo l'associazione viene rimossa.

get_credentials

Recuperare le credenziali per la destinazione RemoteCompute.

refresh_state

Eseguire un aggiornamento sul posto delle proprietà dell'oggetto .

Questo metodo aggiorna le proprietà in base allo stato corrente dell'oggetto cloud corrispondente. Viene usato principalmente per il polling manuale dello stato di calcolo.

serialize

Convertire questo oggetto RemoteCompute in un dizionario serializzato JSON.

attach

DEPRECATO. Usare invece il attach_configuration metodo .

Associare una risorsa di calcolo remota esistente all'area di lavoro specificata.

static attach(workspace, name, username, address, ssh_port=22, password='', private_key_file='', private_key_passphrase='')

Parametri

Nome Descrizione
workspace
Necessario

Oggetto workspace a cui associare la risorsa di calcolo.

name
Necessario
str

Nome da associare alla risorsa di calcolo all'interno dell'area di lavoro specificata. Non deve corrispondere al nome della risorsa di calcolo da associare.

username
Necessario
str

Nome utente necessario per accedere alla risorsa.

address
Necessario
str

Indirizzo della risorsa da associare.

ssh_port
int

Porta esposta per la risorsa. Il valore predefinito è 22.

Valore predefinito: 22
password
Necessario
str

Password necessaria per accedere alla risorsa.

private_key_file
Necessario
str

Percorso di un file contenente la chiave privata per la risorsa.

private_key_passphrase
Necessario
str

Frase chiave privata necessaria per accedere alla risorsa.

Restituisce

Tipo Descrizione

Rappresentazione dell'oggetto RemoteCompute dell'oggetto di calcolo.

Eccezioni

Tipo Descrizione

attach_configuration

Creare un oggetto di configurazione per collegare una destinazione di calcolo remota.

Il collegamento di una macchina virtuale tramite l'indirizzo IP pubblico della macchina virtuale non è più supportato. Usare invece il valore resourceId della macchina virtuale. Il resourceId della macchina virtuale può essere costruito usando il formato stringa seguente: "/subscriptions/<subscription_id>/resourceGroups/<resource_group>/ providers/Microsoft.Compute/virtualMachines/<vm_name>".

È anche possibile usare subscription_id, resource_group e vm_name senza costruire resourceId. Per altre informazioni, vedere https://aka.ms/azureml-compute-vm.

static attach_configuration(username, subscription_id=None, resource_group=None, vm_name=None, resource_id=None, address=None, ssh_port=22, password='', private_key_file='', private_key_passphrase='')

Parametri

Nome Descrizione
username
Necessario
str

Nome utente necessario per accedere alla risorsa.

subscription_id
str

ID sottoscrizione di Azure in cui si trova la macchina virtuale.

Valore predefinito: None
resource_group
str

Nome del gruppo di risorse in cui si trova la macchina virtuale.

Valore predefinito: None
vm_name
str

Nome della macchina virtuale.

Valore predefinito: None
resource_id
str

ID risorsa di Azure Resource Manager (ARM) per la risorsa esistente.

Valore predefinito: None
address
str

Indirizzo della risorsa esistente.

Valore predefinito: None
ssh_port
int

Porta esposta per la risorsa. Il valore predefinito è 22.

Valore predefinito: 22
password
Necessario
str

Password necessaria per accedere alla risorsa.

private_key_file
Necessario
str

Percorso di un file contenente la chiave privata per la risorsa.

private_key_passphrase
Necessario
str

Frase chiave privata necessaria per accedere alla risorsa.

Restituisce

Tipo Descrizione

Oggetto di configurazione da utilizzare per il collegamento di un oggetto Compute.

delete

L'eliminazione non è supportata per un oggetto RemoteCompute. Utilizzare invece detach.

delete()

Eccezioni

Tipo Descrizione

deserialize

Convertire un oggetto JSON in un oggetto RemoteCompute.

static deserialize(workspace, object_dict)

Parametri

Nome Descrizione
workspace
Necessario

L'oggetto workspace a cui è associato l'oggetto RemoteCompute.

object_dict
Necessario

Oggetto JSON da convertire in un oggetto RemoteCompute.

Restituisce

Tipo Descrizione

Rappresentazione RemoteCompute dell'oggetto JSON fornito.

Eccezioni

Tipo Descrizione

Commenti

Genera un oggetto ComputeTargetException se l'area di lavoro specificata non è l'area di lavoro a cui è associato l'ambiente di calcolo.

detach

Scollegare l'oggetto RemoteCompute dall'area di lavoro associata.

Gli oggetti cloud sottostanti non vengono eliminati, ma solo l'associazione viene rimossa.

detach()

Eccezioni

Tipo Descrizione

get_credentials

Recuperare le credenziali per la destinazione RemoteCompute.

get_credentials()

Restituisce

Tipo Descrizione

Credenziali per la destinazione RemoteCompute.

Eccezioni

Tipo Descrizione

refresh_state

Eseguire un aggiornamento sul posto delle proprietà dell'oggetto .

Questo metodo aggiorna le proprietà in base allo stato corrente dell'oggetto cloud corrispondente. Viene usato principalmente per il polling manuale dello stato di calcolo.

refresh_state()

serialize

Convertire questo oggetto RemoteCompute in un dizionario serializzato JSON.

serialize()

Restituisce

Tipo Descrizione

Rappresentazione JSON di questo oggetto RemoteCompute.