RemoteCompute Klasse
Dient zum Verwalten eines Remotecomputeziels für die Verwendung in Azure Machine Learning
Azure Machine Learning unterstützt das Anfügen einer Remotecomputeressource an Ihren Arbeitsbereich. Die Remoteressource kann eine Azure-VM, ein Remoteserver in Ihrer Organisation oder ein lokaler Computer sein, solange Azure Machine Learning auf die Ressource zugreifen kann. Weitere Informationen finden Sie unter Was sind Computeziele in Azure Machine Learning?.
ComputeTarget-Konstruktor der Klasse.
Rufen Sie eine Clouddarstellung eines Compute-Objekts ab, das dem bereitgestellten Arbeitsbereich zugeordnet ist. Gibt einen instance einer untergeordneten Klasse zurück, die dem spezifischen Typ des abgerufenen Compute-Objekts entspricht.
- Vererbung
-
RemoteCompute
Konstruktor
RemoteCompute(workspace, name)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Arbeitsbereichsobjekt, das das abzurufende RemoteCompute-Objekt enthält |
name
Erforderlich
|
Name des abzurufenden RemoteCompute-Objekts |
workspace
Erforderlich
|
Das Workspace-Objekt, das das abzurufende Compute-Objekt enthält. |
name
Erforderlich
|
Der Name des abzurufenden Compute-Objekts. |
Hinweise
Die folgenden Azure-Regionen unterstützen die Verwendung der öffentlichen IP-Adresse eines virtuellen Computers oder HDInsight-Clusters zum Anfügen des Computeziels nicht.
USA, Osten
USA, Westen 2
USA, Süden-Mitte
Verwenden Sie stattdessen die Azure Resource Manager-ID der VM oder des HDInsight-Clusters. Die Ressourcen-ID der VM kann mithilfe der Abonnement-ID sowie des Ressourcengruppennamens und VM-Namens im folgendem Zeichenfolgenformat konstruiert werden: „/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.Compute/virtualMachines/<vm_name>“.
Im folgenden Beispiel wird gezeigt, wie sie eine DSVM-Instanz (Data Science Virtual Machine) als Computeziel erstellen und anfügen.
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)
Das vollständige Beispiel finden Sie unter https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/training/train-on-remote-vm/train-on-remote-vm.ipynb.
Methoden
attach |
VERALTET. Verwenden Sie stattdessen die Ordnet dem bereitgestellten Arbeitsbereich eine vorhandene Remotecomputeressource zu |
attach_configuration |
Erstellt ein Konfigurationsobjekt zum Anfügen eines Remotecomputeziels Das Anfügen einer VM mit deren öffentlicher IP-Adresse wird nicht mehr unterstützt. Verwenden Sie stattdessen die Ressourcen-ID (resourceId) der VM. Die Ressourcen-ID (resourceId) der VM kann mithilfe des folgenden Zeichenfolgenformats konstruiert werden: „/subscriptions/<subscription_id>/resourceGroups/<resource_group>/ providers/Microsoft.Compute/virtualMachines/<vm_name>“. Sie können „subscription_id“, „resource_group“ und „vm_name“ auch verwenden, ohne „resourceId“ zu konstruieren. Weitere Informationen finden Sie unter https://aka.ms/azureml-compute-vm. |
delete |
Das Löschen wird für ein RemoteCompute-Objekt nicht unterstützt. Verwenden Sie stattdessen detach. |
deserialize |
Konvertiert ein JSON-Objekt in ein RemoteCompute-Objekt |
detach |
Trennt das RemoteCompute-Objekt vom zugeordneten Arbeitsbereich Zugrunde liegende Cloudobjekte werden nicht gelöscht, nur die Zuordnung wird entfernt. |
get_credentials |
Ruft die Anmeldeinformationen für das RemoteCompute-Ziel ab |
refresh_state |
Führt eine direkte Aktualisierung der Eigenschaften des Objekts durch Mit dieser Methode werden die Eigenschaften basierend auf dem aktuellen Zustand des entsprechenden Cloud-Objekts aktualisiert. Sie wird in erster Linie zum manuellen Abrufen des Computestatus verwendet. |
serialize |
Konvertiert dieses RemoteCompute-Objekt in ein serialisiertes JSON-Wörterbuch |
attach
VERALTET. Verwenden Sie stattdessen die attach_configuration
-Methode.
Ordnet dem bereitgestellten Arbeitsbereich eine vorhandene Remotecomputeressource zu
static attach(workspace, name, username, address, ssh_port=22, password='', private_key_file='', private_key_passphrase='')
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Das Arbeitsbereichsobjekt, dem die Computeressource zugeordnet werden soll. |
name
Erforderlich
|
Name, der der Computeressource innerhalb des bereitgestellten Arbeitsbereichs zugeordnet werden soll. Muss nicht mit dem Namen der anzufügenden Computeressource übereinstimmen. |
username
Erforderlich
|
Der für den Zugriff auf die Ressource erforderliche Benutzername |
address
Erforderlich
|
Adresse der Ressource, die angefügt werden soll. |
ssh_port
|
Der für die Ressource verfügbar gemachte Port. Der Standardwert ist 22. Standardwert: 22
|
password
Erforderlich
|
Das für den Zugriff auf die Ressource erforderliche Kennwort |
private_key_file
Erforderlich
|
Der Pfad zu einer Datei, die den privaten Schlüssel für die Ressource enthält |
private_key_passphrase
Erforderlich
|
Der private Schlüsselbegriff, der für den Zugriff auf die Ressource erforderlich ist |
Gibt zurück
Typ | Beschreibung |
---|---|
Eine RemoteCompute-Objektdarstellung des Computeobjekts |
Ausnahmen
Typ | Beschreibung |
---|---|
attach_configuration
Erstellt ein Konfigurationsobjekt zum Anfügen eines Remotecomputeziels
Das Anfügen einer VM mit deren öffentlicher IP-Adresse wird nicht mehr unterstützt. Verwenden Sie stattdessen die Ressourcen-ID (resourceId) der VM. Die Ressourcen-ID (resourceId) der VM kann mithilfe des folgenden Zeichenfolgenformats konstruiert werden: „/subscriptions/<subscription_id>/resourceGroups/<resource_group>/ providers/Microsoft.Compute/virtualMachines/<vm_name>“.
Sie können „subscription_id“, „resource_group“ und „vm_name“ auch verwenden, ohne „resourceId“ zu konstruieren. Weitere Informationen finden Sie unter 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='')
Parameter
Name | Beschreibung |
---|---|
username
Erforderlich
|
Der für den Zugriff auf die Ressource erforderliche Benutzername |
subscription_id
|
Die ID des Azure-Abonnements, in dem sich die VM befindet. Standardwert: None
|
resource_group
|
Der Name der Ressourcengruppe, in der sich die VM befindet. Standardwert: None
|
vm_name
|
Name der VM Standardwert: None
|
resource_id
|
ARM-Ressourcen-ID (Azure Resource Manager) für die vorhandene Ressource Standardwert: None
|
address
|
Adresse für die vorhandene Ressource Standardwert: None
|
ssh_port
|
Der für die Ressource verfügbar gemachte Port. Der Standardwert ist 22. Standardwert: 22
|
password
Erforderlich
|
Das für den Zugriff auf die Ressource erforderliche Kennwort |
private_key_file
Erforderlich
|
Der Pfad zu einer Datei, die den privaten Schlüssel für die Ressource enthält |
private_key_passphrase
Erforderlich
|
Der private Schlüsselbegriff, der für den Zugriff auf die Ressource erforderlich ist |
Gibt zurück
Typ | Beschreibung |
---|---|
Ein Konfigurationsobjekt, das beim Anfügen eines Computeobjekts verwendet werden soll |
Ausnahmen
Typ | Beschreibung |
---|---|
delete
Das Löschen wird für ein RemoteCompute-Objekt nicht unterstützt. Verwenden Sie stattdessen detach.
delete()
Ausnahmen
Typ | Beschreibung |
---|---|
deserialize
Konvertiert ein JSON-Objekt in ein RemoteCompute-Objekt
static deserialize(workspace, object_dict)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Arbeitsbereichsobjekt, dem das RemoteCompute-Objekt zugeordnet ist |
object_dict
Erforderlich
|
JSON-Objekt, das in ein RemoteCompute-Objekt konvertiert werden soll |
Gibt zurück
Typ | Beschreibung |
---|---|
Die RemoteCompute-Darstellung des bereitgestellten JSON-Objekts |
Ausnahmen
Typ | Beschreibung |
---|---|
Hinweise
Wenn der bereitgestellte Arbeitsbereich nicht der Arbeitsbereich ist, dem das Compute-Objekt zugeordnet ist, wird ComputeTargetException ausgelöst.
detach
Trennt das RemoteCompute-Objekt vom zugeordneten Arbeitsbereich
Zugrunde liegende Cloudobjekte werden nicht gelöscht, nur die Zuordnung wird entfernt.
detach()
Ausnahmen
Typ | Beschreibung |
---|---|
get_credentials
Ruft die Anmeldeinformationen für das RemoteCompute-Ziel ab
get_credentials()
Gibt zurück
Typ | Beschreibung |
---|---|
Die Anmeldeinformationen für das RemoteCompute-Ziel |
Ausnahmen
Typ | Beschreibung |
---|---|
refresh_state
Führt eine direkte Aktualisierung der Eigenschaften des Objekts durch
Mit dieser Methode werden die Eigenschaften basierend auf dem aktuellen Zustand des entsprechenden Cloud-Objekts aktualisiert. Sie wird in erster Linie zum manuellen Abrufen des Computestatus verwendet.
refresh_state()
Ausnahmen
Typ | Beschreibung |
---|---|
serialize
Konvertiert dieses RemoteCompute-Objekt in ein serialisiertes JSON-Wörterbuch
serialize()
Gibt zurück
Typ | Beschreibung |
---|---|
Die JSON-Darstellung dieses RemoteCompute-Objekts |
Ausnahmen
Typ | Beschreibung |
---|---|