Partager via


Gérer une instance de calcul Azure Machine Learning

S’APPLIQUE À :Extension Azure CLI v2 (actuelle)Kit de développement logiciel (SDK) Python azure-ai-ml v2 (version actuelle)

Découvrez comment gérer une instance de calcul dans votre espace de travail Azure Machine Learning.

Utilisez une instance de calcul comme environnement de développement complètement configuré et managé dans le cloud. Pour le développement et le test, vous pouvez également utiliser l’instance en tant que cible de calcul d’entraînement. Une instance de calcul peut exécuter plusieurs travaux en parallèle et dispose d’une file d’attente de travaux. Parce qu’il s’agit d’un environnement de développement, une instance de calcul ne peut pas être partagée avec d’autres utilisateurs dans votre espace de travail.

Dans cet article, vous apprenez à démarrer, arrêter, redémarrer et supprimer une instance de calcul. Pour apprendre à créer une instance de calcul, consultez Créer une instance de calcul Azure Machine Learning.

Remarque

Cet article présente l’interface CLI v2 dans les sections ci-dessous. Si vous utilisez toujours l’interface CLI v1, consultez Créer un cluster de calcul Azure Machine Learning avec l’Interface CLI v1.

Prérequis

Sélectionnez l’onglet adapté au reste des prérequis en fonction de votre méthode préférée pour gérer votre instance de calcul.

  • Si vous n’exécutez pas votre code sur une instance de calcul, installez le kit SDK Python Azure Machine Learning. Ce kit SDK est déjà installé pour vous sur une instance de calcul.

  • Connectez-vous à l’espace de travail via votre script Python :

    Exécutez ce code pour vous connecter à votre espace de travail Azure Machine Learning.

    Remplacez votre ID d’abonnement, le nom du groupe de ressources et le nom de l’espace de travail dans le code suivant. Pour rechercher ces valeurs :

    1. Connectez-vous à Azure Machine Learning Studio.
    2. Ouvrez l’espace de travail que vous souhaitez utiliser.
    3. Sélectionnez le nom de votre espace de travail dans la barre d’outils Azure Machine Learning studio en haut à droite.
    4. Copiez la valeur de l’espace de travail, du groupe de ressources et de l’ID d’abonnement dans le code.

    S’APPLIQUE À : Kit de développement logiciel (SDK) Python azure-ai-mlv2 (préversion)

    # 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 est un gestionnaire de l’espace de travail, qui vous permet de gérer d’autres ressources et travaux.

Gérer

Démarrez, arrêtez, redémarrez et supprimez une instance de calcul. Une instance de calcul ne fait pas automatiquement de scale-down. Veillez donc à arrêter la ressource pour éviter des frais continus. L’arrêt d’une instance de calcul a pour effet de la libérer. Ensuite, redémarrez-la quand vous en avez besoin. Si l’arrêt de l’instance de calcul met fin à la facturation des heures de calcul, vous êtes encore facturé pour le disque, l’IP publique et l’équilibreur de charge standard.

Vous pouvez activer l’arrêt automatique pour arrêter automatiquement l’instance de calcul après une heure spécifiée.

Vous pouvez également créer une planification pour que l’instance de calcul démarre et s’arrête automatiquement en fonction d’une heure et d’un jour de la semaine.

Conseil

L’instance de calcul a un disque de système d’exploitation de 120 Go. Si vous manquez d’espace disque, utilisez le terminal pour libérer au moins 5 Go avant d’arrêter ou de redémarrer l’instance de calcul. N’arrêtez pas l’instance de calcul en émettant la commande sudo shutdown depuis le terminal. La taille du disque temporaire sur l’instance de calcul dépend de la taille de machine virtuelle choisie et est montée sur/mnt.

S’APPLIQUE À : Kit de développement logiciel (SDK) Python azure-ai-mlv2 (préversion)

Dans ces exemples, le nom de l’instance de calcul est stocké dans la variable ci_basic_name.

  • Obtenir l’état

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

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

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

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

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

Le contrôle d'accès en fonction du rôle Azure (Azure RBAC) vous permet de contrôler les utilisateurs de l'espace de travail qui peuvent créer, supprimer, démarrer ou arrêter une instance de calcul. Tous les utilisateurs ayant les rôles Contributeur et Propriétaire dans l’espace de travail sont autorisés à créer, supprimer, démarrer, arrêter et redémarrer des instances de calcul dans tout l’espace de travail. Toutefois, seul le créateur d’une instance de calcul spécifique, ou l’utilisateur affecté si elle a été créée en son nom, est autorisé à accéder à Jupyter, JupyterLab et RStudio sur cette instance de calcul. Une instance de calcul est dédiée à un seul utilisateur qui a un accès racine. Cet utilisateur a accès à Jupyter/JupyterLab/RStudio s’exécutant sur l’instance. L’instance de calcul dispose d’une connexion à utilisateur unique et toutes les actions utilisent l’identité de cet utilisateur pour Azure RBAC et pour l’attribution des tâches d’expérience. L’accès SSH est contrôlé par le biais d’un mécanisme de clé publique/privée.

Ces actions peuvent être contrôlées par 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

Pour créer une instance de calcul, vous avez besoin d’autorisations pour les actions suivantes :

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

Audit et observation de la version de l’instance de calcul

Une fois déployée, une instance de calcul n’est pas mise à jour automatiquement. Microsoft publie de nouvelles images de machine virtuelle tous les mois. Pour connaître les options permettant de rester à jour avec la dernière version, consultez Gestion des vulnérabilités.

Pour savoir si la version du système d’exploitation d’une instance est à jour, vous pouvez interroger sa version en utilisant la CLI, le SDK ou l’interface utilisateur Studio.

S’APPLIQUE À : Kit de développement logiciel (SDK) Python azure-ai-mlv2 (préversion)

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

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

Pour plus d’informations sur les classes, les méthodes et les paramètres utilisés dans cet exemple, consultez les documents de référence suivants :

Les administrateurs informatiques peuvent utiliser Azure Policy pour surveiller l’inventaire des instances dans les espaces de travail du portail de conformité Azure Policy. Affectez la stratégie intégrée Auditer les instances de calcul Azure Machine Learning avec un système d’exploitation obsolète sur un abonnement Azure ou une étendue de groupe d’administration Azure.

Étapes suivantes