Skapa och hantera en Azure Machine Learning-beräkningsinstans med CLI v1

GÄLLER FÖR:Azure CLI ml-tillägg v1Python SDK azureml v1

Lär dig hur du skapar och hanterar en beräkningsinstans på din Azure Machine Learning-arbetsyta med CLI v1.

Använd en beräkningsinstans som din fullständigt konfigurerade och hanterade utvecklingsmiljö i molnet. För utveckling och testning kan du också använda instansen som träningsberäkningsmål eller för ett slutsatsdragningsmål. En beräkningsinstans kan köra flera jobb parallellt och ha en jobbkö. Som utvecklingsmiljö kan en beräkningsinstans inte delas med andra användare på din arbetsyta.

Beräkningsinstanser kan köra jobb på ett säkert sätt i en virtuell nätverksmiljö utan att företag behöver öppna SSH-portar. Jobbet körs i en containerbaserad miljö och paketera dina modellberoenden i en Docker-container.

I den här artikeln kan du se hur du:

  • Skapa en beräkningsinstans
  • Hantera (starta, stoppa, starta om, ta bort) en beräkningsinstans

Anteckning

Den här artikeln beskriver bara hur du utför dessa uppgifter med CLI v1. Mer information om hur du hanterar en beräkningsinstans finns i Skapa ett Azure Machine Learning-beräkningskluster.

Förutsättningar

Skapa

Viktigt

Objekt markerade (förhandsversion) nedan är för närvarande i offentlig förhandsversion. Förhandsversionen tillhandahålls utan serviceavtal och rekommenderas inte för produktionsarbetsbelastningar. Vissa funktioner kanske inte stöds eller kan vara begränsade. Mer information finns i Kompletterande villkor för användning av Microsoft Azure-förhandsversioner.

Tidsuppskattning: Cirka 5 minuter.

Att skapa en beräkningsinstans är en engångsprocess för din arbetsyta. Du kan återanvända beräkningen som en utvecklingsarbetsstation eller som beräkningsmål för träning. Du kan ha flera beräkningsinstanser kopplade till din arbetsyta.

De dedikerade kärnorna per region per VM-familjekvot och total regional kvot, som gäller för att skapa beräkningsinstanser, är enhetliga och delas med kvoten för Azure Machine Learning-träningsberäkningskluster. Om du stoppar beräkningsinstansen frigörs inte kvoten för att säkerställa att du kan starta om beräkningsinstansen. Det går inte att ändra storleken på den virtuella datorn för beräkningsinstansen när den har skapats.

I följande exempel visas hur du skapar en beräkningsinstans:

GÄLLER FÖR: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)

Mer information om klasser, metoder och parametrar som används i det här exemplet finns i följande referensdokument:

Hantera

Starta, stoppa, starta om och ta bort en beräkningsinstans. En beräkningsinstans skalas inte ned automatiskt, så se till att stoppa resursen för att förhindra löpande avgifter. Om du stoppar en beräkningsinstans frigörs den. Starta den sedan igen när du behöver den. När du stoppar beräkningsinstansen stoppas debiteringen för beräkningstimmar, men du debiteras fortfarande för disk, offentlig IP och standardlastbalanserare.

Tips

Beräkningsinstansen har en OS-disk på 120 GB. Om diskutrymmet tar slut använder du terminalen för att rensa minst 1–2 GB innan du stoppar eller startar om beräkningsinstansen. Stoppa inte beräkningsinstansen genom att utfärda sudo-avstängning från terminalen. Storleken på den temporära disken på beräkningsinstansen beror på den valda VM-storleken och är monterad på /mnt.

GÄLLER FÖR:Python SDK azureml v1

I exemplen nedan är namnet på beräkningsinstansen instansen.

  • Hämta status

    # get_status() gets the latest status of the ComputeInstance target
    instance.get_status()
    
  • Stoppa

    # 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)
    
  • Start

    # start() is used to start the ComputeInstance if it is in stopped state
    instance.start(wait_for_completion=True, show_output=True)
    
  • Starta om

    # restart() is used to restart the ComputeInstance
    instance.restart(wait_for_completion=True, show_output=True)
    
  • Ta bort

    # 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)
    

Med Azure RBAC kan du styra vilka användare på arbetsytan som kan skapa, ta bort, starta, stoppa och starta om en beräkningsinstans. Alla användare i arbetsytans deltagar- och ägarroll kan skapa, ta bort, starta, stoppa och starta om beräkningsinstanser på arbetsytan. Men endast skaparen av en specifik beräkningsinstans, eller den användare som tilldelats den om den skapades för deras räkning, får åtkomst till Jupyter, JupyterLab, RStudio och Posit Workbench (tidigare RStudio Workbench) på beräkningsinstansen. En beräkningsinstans är dedikerad till en enskild användare som har rotåtkomst. Den användaren har åtkomst till Jupyter/JupyterLab/RStudio/Posit Workbench som körs på instansen. Beräkningsinstansen har enkel inloggning och alla åtgärder använder användarens identitet för Azure RBAC och attributering av experimentkörningar. SSH-åtkomst styrs via offentlig/privat nyckelmekanism.

Dessa åtgärder kan styras av 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 du vill skapa en beräkningsinstans behöver du behörigheter för följande åtgärder:

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

Nästa steg