Een Azure Machine Learning-rekenproces beheren

VAN TOEPASSING OP:Azure CLI ml-extensie v2 (huidig)Python SDK azure-ai-ml v2 (huidig)

Meer informatie over het beheren van een rekenproces in uw Azure Machine Learning-werkruimte.

Gebruik een rekenproces als uw volledig geconfigureerde en beheerde ontwikkelomgeving in de cloud. Voor ontwikkeling en testen kunt u het exemplaar ook gebruiken als rekendoel voor training. Een rekenproces kan meerdere taken parallel uitvoeren en heeft een taakwachtrij. Als ontwikkelomgeving kan een rekenproces niet worden gedeeld met andere gebruikers in uw werkruimte.

In dit artikel leert u hoe u een rekenproces kunt starten, stoppen, opnieuw opstarten en verwijderen. Zie Een Azure Machine Learning-rekenproces maken voor meer informatie over het maken van een rekenproces.

Notitie

In dit artikel wordt CLI v2 in de onderstaande secties beschreven. Als u nog steeds CLI v1 gebruikt, raadpleegt u Een Azure Machine Learning-rekencluster maken CLI v1.

Vereisten

  • Een Azure Machine Learning-werkruimte. Zie Een Azure Machine Learning-werkruimte maken voor meer informatie. In het opslagaccount moet de optie Toegang tot opslagaccountsleutel toestaan zijn ingeschakeld om het rekenproces te kunnen maken.

  • De Azure CLI-extensie voor Machine Learning Service (v2),Azure Machine Learning Python SDK (v2) of de Azure Machine Learning Visual Studio Code-extensie.

  • Als u de Python SDK gebruikt, stelt u uw ontwikkelomgeving in met een werkruimte. Nadat uw omgeving is ingesteld, koppelt u aan de werkruimte in uw Python-script:

    VAN TOEPASSING OP: Python SDK azure-ai-ml v2 (current)

    Voer deze code uit om verbinding te maken met uw Azure ML-werkruimte.

    Vervang uw abonnements-id, resourcegroepnaam en werkruimtenaam in de onderstaande code. Deze waarden zoeken:

    1. Meld u aan bij Azure Machine Learning Studio.
    2. Open de werkruimte die u wilt gebruiken.
    3. Selecteer in de rechterbovenhoek Azure Machine Learning-studio werkbalk de naam van uw werkruimte.
    4. Kopieer de waarde voor werkruimte, resourcegroep en abonnements-id naar de code.
    5. Als u een notitieblok in Studio gebruikt, moet u één waarde kopiëren, het gebied sluiten en plakken en vervolgens terugkomen voor de volgende waarde.
    # Enter details of your AML workspace
    subscription_id = "<SUBSCRIPTION_ID>"
    resource_group = "<RESOURCE_GROUP>"
    workspace = "<AML_WORKSPACE_NAME>"
    # get a handle to the workspace
    from azure.ai.ml import MLClient
    from azure.identity import DefaultAzureCredential
    
    ml_client = MLClient(
        DefaultAzureCredential(), subscription_id, resource_group, workspace
    )

    ml_client is een handler voor de werkruimte die u gebruikt voor het beheren van andere resources en taken.

Beheren

Een rekenproces starten, stoppen, opnieuw opstarten en verwijderen. Een rekenproces schaalt niet altijd automatisch omlaag, dus zorg ervoor dat u de resource stopt om doorlopende kosten te voorkomen. Als u een rekenproces stopt, wordt de toewijzing ervan ongedaan gemaakt. Start de app vervolgens opnieuw wanneer u deze nodig hebt. Terwijl het stoppen van het rekenproces de facturering voor rekenuren stopt, wordt u nog steeds gefactureerd voor schijf, openbaar IP-adres en standaard load balancer.

U kunt automatisch afsluiten inschakelen om het rekenproces na een opgegeven tijd automatisch te stoppen.

U kunt ook een planning maken voor het rekenproces om automatisch te starten en te stoppen op basis van een tijd en dag van de week.

Tip

Het reken-exemplaar heeft een besturingssysteemschijf van 120 GB. Als u onvoldoende schijfruimte hebt, gebruikt u de terminal om ten minste 1-2 GB te wissen voordat u het rekenproces stopt of opnieuw start. Stop het rekenproces niet door sudo uit te sluiten vanuit de terminal. De tijdelijke schijfgrootte op het rekenproces is afhankelijk van de gekozen VM-grootte en is gekoppeld aan /mnt.

VAN TOEPASSING OP: Python SDK azure-ai-ml v2 (current)

In de onderstaande voorbeelden wordt de naam van het rekenproces opgeslagen in de variabele ci_basic_name.

  • Status ophalen

    from azure.ai.ml.entities import ComputeInstance, AmlCompute
    
    # Get compute
    ci_basic_state = ml_client.compute.get(ci_basic_name)
  • Stoppen

    from azure.ai.ml.entities import ComputeInstance, AmlCompute
    
    # Stop compute
    ml_client.compute.begin_stop(ci_basic_name).wait()
  • Starten

    from azure.ai.ml.entities import ComputeInstance, AmlCompute
    
    # Start compute
    ml_client.compute.begin_start(ci_basic_name).wait()
  • Opnieuw starten

    from azure.ai.ml.entities import ComputeInstance, AmlCompute
    
    # Restart compute
    ml_client.compute.begin_restart(ci_basic_name).wait()
  • Verwijderen

    from azure.ai.ml.entities import ComputeInstance, AmlCompute
    
    ml_client.compute.begin_delete(ci_basic_name).wait()

Met Azure RBAC kunt u bepalen welke gebruikers in de werkruimte een rekenproces kunnen maken, verwijderen, starten, stoppen of opnieuw kunnen starten. Alle gebruikers in de rol inzender en eigenaar van de werkruimte kunnen rekenprocessen in de werkruimte maken, verwijderen, starten, stoppen en opnieuw starten. Alleen de maker van een specifiek rekenproces, of de gebruiker die is toegewezen als het namens hen is gemaakt, heeft echter toegang tot Jupyter, JupyterLab en RStudio voor dat rekenproces. Een rekenproces is toegewezen aan één gebruiker die hoofdtoegang heeft. Die gebruiker heeft toegang tot Jupyter/JupyterLab/RStudio die wordt uitgevoerd op het exemplaar. Het rekenproces heeft aanmelding met één gebruiker en alle acties gebruiken de identiteit van die gebruiker voor Azure RBAC en de toewijzing van experimenttaken. SSH-toegang wordt beheerd via een mechanisme met een openbare/persoonlijke sleutel.

Deze acties kunnen worden beheerd door Azure RBAC:

  • 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

Om u een rekenproces te maken, hebt u machtigingen nodig voor de volgende acties:

  • Microsoft.MachineLearningServices/workspaces/computes/write
  • Microsoft.MachineLearningServices/workspaces/checkComputeNameAvailability/action

Versie van rekenproces controleren en observeren

Zodra een rekenproces is geïmplementeerd, wordt deze niet automatisch bijgewerkt. Microsoft brengt maandelijks nieuwe VM-installatiekopieën uit. Zie Beheer van beveiligingsproblemen voor meer informatie over opties om recent te blijven met de nieuwste versie.

Als u wilt bijhouden of de versie van het besturingssysteem van een exemplaar actueel is, kunt u de versie ervan opvragen met behulp van de CLI, SDK of De Gebruikersinterface van Studio.

VAN TOEPASSING OP: Python SDK azure-ai-ml v2 (current)

from azure.ai.ml.entities import ComputeInstance, AmlCompute

# Display operating system version
instance = ml_client.compute.get("myci")
print instance.os_image_metadata

Zie de volgende referentiedocumenten voor meer informatie over de klassen, methoden en parameters die in dit voorbeeld worden gebruikt:

IT-beheerders kunnen Azure Policy gebruiken om de inventaris van exemplaren in werkruimten in Azure Policy complianceportal te bewaken. Wijs het ingebouwde beleid Azure Machine Learning Compute Instances met een verouderd besturingssysteem controleren toe voor een Azure-abonnement of Azure-beheergroep.

Volgende stappen