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


Управление вычислительным экземпляром Машинное обучение Azure

ОБЛАСТЬ ПРИМЕНЕНИЯ:Расширение машинного обучения Azure CLI версии 2 (current)Python SDK azure-ai-ml версии 2 (current)

Узнайте, как управлять вычислительным экземпляром в рабочей области Машинное обучение Azure.

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

Из этой статьи вы узнаете, как запустить, остановить, перезапустить и удалить вычислительный экземпляр. Сведения о создании вычислительного экземпляра см. в статье "Создание Машинное обучение Azure вычислительного экземпляра".

Примечание.

В этой статье показан интерфейс командной строки версии 2 в разделах. Если вы по-прежнему используете CLI версии 1, см. статью "Создание вычислительного кластера машинного обучения Azure" версии 1.

Необходимые компоненты

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

  • Если код не запущен в вычислительном экземпляре, установите пакет SDK для Python Машинное обучение Azure. Этот пакет SDK уже установлен для вас в вычислительном экземпляре.

  • Подключитесь к рабочей области в скрипте Python:

    Запустите этот код, чтобы подключиться к рабочей области Машинное обучение Azure.

    Замените идентификатор подписки, имя группы ресурсов и имя рабочей области в следующем коде. Вот как найти эти значения:

    1. Войдите в Студию машинного обучения Azure.
    2. Откройте рабочую область, которую вы хотите использовать.
    3. Выберите имя рабочей области в правом верхнем углу панели инструментов Студия машинного обучения Azure.
    4. Скопируйте значение рабочей области, группы ресурсов и идентификатор подписки в код.

    ОБЛАСТЬ ПРИМЕНЕНИЯ: Пакет SDK для Python azure-ai-ml версии 2 (current)

    # 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 — это обработчик рабочей области, которая используется для управления другими ресурсами и заданиями.

Примечание.

При настройке виртуальной сети, расположенной в другой группе ресурсов из рабочей области машинного обучения Azure, ресурсы, такие как группы безопасности сети (NSG), общедоступные IP-адреса и подсистемы балансировки нагрузки создаются в той же группе ресурсов, что и виртуальная сеть. Это поведение обеспечивает надлежащее управление сетями и изоляцию.

Управление

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

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

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

Совет

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

ОБЛАСТЬ ПРИМЕНЕНИЯ: Пакет SDK для Python azure-ai-ml версии 2 (current)

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

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

    from azure.ai.ml.entities import ComputeInstance, AmlCompute
    
    # Get compute
    ci_basic_state = ml_client.compute.get(ci_basic_name)
  • Остановить

    from azure.ai.ml.entities import ComputeInstance, AmlCompute
    
    # Stop compute
    ml_client.compute.begin_stop(ci_basic_name).wait()
  • Начать

    from azure.ai.ml.entities import ComputeInstance, AmlCompute
    
    # Start compute
    ml_client.compute.begin_start(ci_basic_name).wait()
  • Перезагрузить

    from azure.ai.ml.entities import ComputeInstance, AmlCompute
    
    # Restart compute
    ml_client.compute.begin_restart(ci_basic_name).wait()
  • Удаление

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

Внимание

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

Azure RBAC дает возможность проконтролировать, кто из пользователей в рабочей области может создавать, удалять, запускать, останавливать и перезапускать вычислительный экземпляр. Все пользователи с ролью участника или владельца рабочей области могут создавать, удалять, запускать, останавливать и перезапускать вычислительные экземпляры в рабочей области. Однако доступ к Jupyter, JupyterLab и RStudio (если он был настроен) в этом вычислительном экземпляре разрешен только создателю определенного вычислительного экземпляра или пользователю, назначенному, если экземпляр был создан от его имени. Вычислительный экземпляр предназначен для одного пользователя, имеющего корневой доступ. Этот пользователь имеет доступ к Jupyter/JupyterLab и любым настроенным пользовательским приложениям, работающим в экземпляре. Вычислительный экземпляр имеет единый вход пользователя и все действия используют удостоверение пользователя для 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

Аудит и наблюдение за версией вычислительного экземпляра

После развертывания вычислительного экземпляра он не обновляется автоматически. Корпорация Microsoft ежемесячно выпускает новые образы виртуальных машин. Варианты хранения последних версий см. в процедурах управления уязвимостями.

Чтобы отслеживать текущую версию операционной системы экземпляра, можно запросить ее версию с помощью интерфейса командной строки, пакета SDK или пользовательского интерфейса Studio.

ОБЛАСТЬ ПРИМЕНЕНИЯ: Пакет SDK для Python azure-ai-ml версии 2 (current)

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

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

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

ИТ-администраторы могут использовать Политику Azure для мониторинга экземпляров в рабочих областях на портале соответствия требованиям Политики Azure. Назначьте встроенную политику "Аудит вычислительных экземпляров Машинного обучения Azure с устаревшей ОС" в области подписки Azure или группы управления Azure.

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