Freigeben über


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
str

Name des abzurufenden RemoteCompute-Objekts

workspace
Erforderlich

Das Workspace-Objekt, das das abzurufende Compute-Objekt enthält.

name
Erforderlich
str

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 attach_configuration-Methode.

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
str

Name, der der Computeressource innerhalb des bereitgestellten Arbeitsbereichs zugeordnet werden soll. Muss nicht mit dem Namen der anzufügenden Computeressource übereinstimmen.

username
Erforderlich
str

Der für den Zugriff auf die Ressource erforderliche Benutzername

address
Erforderlich
str

Adresse der Ressource, die angefügt werden soll.

ssh_port
int

Der für die Ressource verfügbar gemachte Port. Der Standardwert ist 22.

Standardwert: 22
password
Erforderlich
str

Das für den Zugriff auf die Ressource erforderliche Kennwort

private_key_file
Erforderlich
str

Der Pfad zu einer Datei, die den privaten Schlüssel für die Ressource enthält

private_key_passphrase
Erforderlich
str

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
str

Der für den Zugriff auf die Ressource erforderliche Benutzername

subscription_id
str

Die ID des Azure-Abonnements, in dem sich die VM befindet.

Standardwert: None
resource_group
str

Der Name der Ressourcengruppe, in der sich die VM befindet.

Standardwert: None
vm_name
str

Name der VM

Standardwert: None
resource_id
str

ARM-Ressourcen-ID (Azure Resource Manager) für die vorhandene Ressource

Standardwert: None
address
str

Adresse für die vorhandene Ressource

Standardwert: None
ssh_port
int

Der für die Ressource verfügbar gemachte Port. Der Standardwert ist 22.

Standardwert: 22
password
Erforderlich
str

Das für den Zugriff auf die Ressource erforderliche Kennwort

private_key_file
Erforderlich
str

Der Pfad zu einer Datei, die den privaten Schlüssel für die Ressource enthält

private_key_passphrase
Erforderlich
str

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