Hantera en Azure Machine Learning-beräkningsinstans
GÄLLER FÖR:Azure CLI ml extension v2 (current)Python SDK azure-ai-ml v2 (aktuell)
Lär dig hur du hanterar en beräkningsinstans på din Azure Machine Learning-arbetsyta.
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. En beräkningsinstans kan köra flera jobb parallellt och har en jobbkö. Som utvecklingsmiljö kan en beräkningsinstans inte delas med andra användare på din arbetsyta.
I den här artikeln får du lära dig hur du startar, stoppar, startar om, tar bort en beräkningsinstans. Information om hur du skapar en beräkningsinstans finns i Skapa en Azure Machine Learning-beräkningsinstans.
Kommentar
Den här artikeln visar CLI v2 i avsnitten nedan. Om du fortfarande använder CLI v1 läser du Skapa ett Azure Machine Learning-beräkningskluster CLI v1.
Förutsättningar
- En Azure Machine Learning-arbetsyta. Mer information finns i Hantera Azure Machine Learning-arbetsytor.
Välj lämplig flik för resten av förhandskraven baserat på den metod som du föredrar för att hantera beräkningsinstansen.
Om du inte kör koden på en beräkningsinstans installerar du Azure Machine Learning Python SDK. Denna SDK är redan installerad åt dig på en beräkningsinstans.
Koppla till arbetsytan i Python-skriptet:
Kör den här koden för att ansluta till din Azure Machine Learning-arbetsyta.
Ersätt ditt prenumerations-ID, resursgruppsnamn och arbetsytenamn i följande kod. Så här hittar du följande värden:
- Logga in på Azure Machine Learning-studio.
- Öppna den arbetsyta som du vill använda.
- Välj namnet på arbetsytan i det övre högra Azure Machine Learning-studio verktygsfältet.
- Kopiera värdet för arbetsyta, resursgrupp och prenumerations-ID till koden.
GÄLLER FÖR: Python SDK azure-ai-ml v2 (aktuell)
# 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
är en hanterare för den arbetsyta som du använder för att hantera andra resurser och jobb.
Hantera
Starta, stoppa, starta om och ta bort en beräkningsinstans. En beräkningsinstans skalas inte alltid 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.
Du kan aktivera automatisk avstängning för att automatiskt stoppa beräkningsinstansen efter en angiven tid.
Du kan också skapa ett schema för beräkningsinstansen att automatiskt starta och stoppa baserat på en tid och en veckodag.
Dricks
Beräkningsinstansen har en OS-disk på 120 GB. Om diskutrymmet tar slut använder du terminalen för att rensa minst 5 GB innan du stoppar eller startar om beräkningsinstansen. Stoppa inte beräkningsinstansen genom att utfärda sudo-avstängning från terminalen. Den temporära diskstorleken på beräkningsinstansen beror på den valda VM-storleken och är monterad på /mnt.
GÄLLER FÖR: Python SDK azure-ai-ml v2 (aktuell)
I dessa exempel lagras namnet på beräkningsinstansen i variabeln ci_basic_name
.
Hämta status
from azure.ai.ml.entities import ComputeInstance, AmlCompute # Get compute ci_basic_state = ml_client.compute.get(ci_basic_name)
Stoppa
from azure.ai.ml.entities import ComputeInstance, AmlCompute # Stop compute ml_client.compute.begin_stop(ci_basic_name).wait()
Start
from azure.ai.ml.entities import ComputeInstance, AmlCompute # Start compute ml_client.compute.begin_start(ci_basic_name).wait()
Starta om
from azure.ai.ml.entities import ComputeInstance, AmlCompute # Restart compute ml_client.compute.begin_restart(ci_basic_name).wait()
Delete
from azure.ai.ml.entities import ComputeInstance, AmlCompute ml_client.compute.begin_delete(ci_basic_name).wait()
Med Azure RBAC kan du styra vilka användare på arbetsytan som kan skapa, ta bort, starta, stoppa, starta om en beräkningsinstans. Alla användare i arbetsytans deltagare och ägarroll kan skapa, ta bort, starta, stoppa och starta om beräkningsinstanser på arbetsytan. Men endast skaparen av en specifik beräkningsinstans, eller användaren som tilldelats om den skapades för deras räkning, får åtkomst till Jupyter, JupyterLab och RStudio på den 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 som körs på instansen. Beräkningsinstansen har enkel inloggning och alla åtgärder använder användarens identitet för Azure RBAC och tilldelning av experimentjobb. 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
Granska och observera beräkningsinstansversionen
När en beräkningsinstans har distribuerats uppdateras den inte automatiskt. Microsoft släpper nya VM-bilder varje månad. Information om hur du håller dig uppdaterad med den senaste versionen finns i hantering av säkerhetsrisker.
Om du vill hålla reda på om en instans operativsystemversion är aktuell kan du fråga dess version med hjälp av CLI, SDK eller Studio-användargränssnittet.
GÄLLER FÖR: Python SDK azure-ai-ml v2 (aktuell)
from azure.ai.ml.entities import ComputeInstance, AmlCompute
# Display operating system version
instance = ml_client.compute.get("myci")
print instance.os_image_metadata
Mer information om de klasser, metoder och parametrar som används i det här exemplet finns i följande referensdokument:
IT-administratörer kan använda Azure Policy för att övervaka inventeringen av instanser på arbetsytor i efterlevnadsportalen för Azure Policy. Tilldela den inbyggda principen Granska Azure Machine Learning-beräkningsinstanser med ett inaktuellt operativsystem i en Azure-prenumeration eller Azure-hanteringsgruppsomfång.