Поделиться через


Создание вычислительного экземпляра Azure Machine Learning и управление ими с помощью CLI версии 1

ПРИМЕНИМО К:расширение Azure CLI ml v1Python SDK azureml v1

Внимание

В этой статье содержатся сведения об использовании пакета SDK Azure Machine Learning версии 1. Пакет SDK версии 1 устарел с 31 марта 2025 г. Поддержка будет завершена 30 июня 2026 г. Вы можете установить и использовать пакет SDK версии 1 до этой даты. Существующие рабочие процессы, использующие пакет SDK версии 1, будут продолжать работать после даты окончания поддержки. Однако они могут быть подвержены рискам безопасности или критическим изменениям в случае изменений архитектуры в продукте.

Рекомендуется перейти на пакет SDK версии 2 до 30 июня 2026 г. Дополнительные сведения о пакете SDK версии 2 см. в разделе Что такое Azure Machine Learning CLI и пакет Python SDK версии 2? и справочник по SDK версии 2.

Узнайте, как создать и управлять вычислительным экземпляром в рабочей области Azure Machine Learning с помощью версии 1 CLI.

Используйте вычислительный экземпляр в качестве полностью настроенной и управляемой среды разработки в облаке. Для разработки и тестирования можно также использовать экземпляр в качестве целевого ресурса вычислений для обучения или целевой платформы для вывода. Вычислительный экземпляр может параллельно запускать несколько заданий и иметь очередь заданий. Вычислительная среда в качестве среды разработки не может использоваться совместно с другими пользователями в вашей рабочей области.

Вычислительные экземпляры безопасно запускают задания в среде виртуальной сети, что не требует от предприятий открывать порт SSH. Задание выполняется в контейнерной среде и упаковывает зависимости модели в контейнер Docker.

В этой статье вы узнаете, как:

  • Создание вычислительного экземпляра
  • Управление (запуск, остановка, перезапуск и удаление) вычислительным экземпляром

Примечание.

В этой статье описывается только выполнение этих задач с помощью интерфейса командной строки версии 1. Более новые способы управления вычислительным экземпляром, смотрите в статье Создание экземпляра вычислений Azure Machine Learning.

Предварительные условия

  • Рабочая область Azure Machine Learning. Дополнительные сведения см. в разделе Создание рабочей области Azure Machine Learning.

  • Расширение Azure CLI для службы Machine Learning (версии 1) или пакета SDK Azure Machine Learning Python (версия 1).

    Внимание

    В некоторых командах Azure CLI в этой статье используется расширение azure-cli-ml или v1 для Azure Machine Learning. Поддержка CLI версии 1 закончилась 30 сентября 2025 г. Корпорация Майкрософт больше не будет предоставлять техническую поддержку или обновления для этой службы. Существующие рабочие процессы, использующие CLI версии 1, будут продолжать работать после даты окончания поддержки. Однако они могут быть подвержены рискам безопасности или критическим изменениям в случае изменений архитектуры в продукте.

    Рекомендуется как можно скорее перейти к расширению mlили версии 2. Дополнительные сведения о расширении версии 2 см. в разделе Azure Machine Learning расширение CLI и пакет SDK Python версии 2.

Создание

Примерное время: приблизительно 5 минут.

Создание вычислительного экземпляра — это однократный процесс для вашей рабочей области. Можно повторно использовать вычисления как рабочую станцию разработки или как целевой объект вычислений для обучения. К рабочей области можно присоединить несколько вычислительных экземпляров.

Выделенные ядра на регион для каждой квоты на семейство ВМ и общая региональная квота, которые применяются к созданию вычислительных экземпляров, унифицированы и разделяют квоту на вычислительные кластеры обучения Azure Machine Learning. При остановке вычислительного экземпляра квота не освобождается, чтобы можно было перезапустить вычислительный экземпляр. После создания вычислительного экземпляра размер его виртуальной машины невозможно изменить.

В следующем примере показано создание вычислительного экземпляра:

ПРИМЕНИМО К:Azure Machine Learning SDK версии 1 для Python

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

Дополнительные сведения о классах, методах и параметрах, используемых в этом примере, см. в следующих справочных документах.

Управление

Запуск, останов, перезапуск и удаление вычислительного экземпляра. Учитывая, что вычислительный экземпляр не масштабируется автоматически, убедитесь, что вы остановите ресурс, чтобы предотвратить дальнейшее взимание платы. Остановка вычислительного экземпляра деаллоцирует его. При необходимости снова запустите ее. Обратите внимание на то, что при остановке вычислительного экземпляра останавливается начисление платы за часы вычислений, однако будет продолжать начисляться плата за диск, общедоступный IP-адрес и стандартную подсистему балансировки нагрузки.

Совет

Размер диска ОС вычислительного экземпляра составляет 120 ГБ. Если у вас не было места на диске, используйте терминал для очистки не менее 1–2 ГБ перед остановкой или перезапуском вычислительного экземпляра. Не останавливайте виртуальную машину с помощью команды sudo shutdown в терминале. Размер временного диска в вычислительном экземпляре зависит от размера выбранного виртуального компьютера и монтируется на /mnt.

ПРИМЕНИМО К:Azure Machine Learning SDK версии 1 для Python

В приведенных ниже примерах имя вычислительного экземпляра — instance.

  • Получение состояния

    # get_status() gets the latest status of the ComputeInstance target
    instance.get_status()
    
  • Остановить

    # 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() is used to start the ComputeInstance if it is in stopped state
    instance.start(wait_for_completion=True, show_output=True)
    
  • Перезагрузить

    # restart() is used to restart the ComputeInstance
    instance.restart(wait_for_completion=True, show_output=True)
    
  • Удалить

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

Azure RBAC позволяет управлять тем, какие пользователи в рабочей области могут создавать, удалять, запускать, останавливать, перезапускать вычислительный экземпляр. Все пользователи с ролью участника или владельца рабочей области могут создавать, удалять, запускать, останавливать и перезапускать вычислительные экземпляры в рабочей области. Однако только создатель определенного вычислительного экземпляра или пользователь, назначенный, если он был создан от имени, может получить доступ к Jupyter, JupyterLab, RStudio и Posit Workbench (ранее RStudio Workbench) на этом вычислительном экземпляре. Вычислительный экземпляр предназначен для одного пользователя, имеющего корневой доступ. Этот пользователь имеет доступ к Jupyter/JupyterLab/RStudio/Posit Workbench, запущенным на экземпляре. Вычислительный экземпляр будет иметь персонализированный вход для одного пользователя, и действия будут выполняться с использованием удостоверения этого пользователя для Azure RBAC и для отслеживания и присвоения запусков экспериментов. Доступ по протоколу SSH контролируется с помощью открытого и закрытого ключей.

Эти действия можно контролировать с помощью 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

Чтобы создать вычислительный экземпляр, необходимо иметь разрешения на выполнение следующих действий:

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

Следующие шаги