Управление вычислительным экземпляром Машинного обучения Azure
ПРИМЕНИМО К:Расширение машинного обучения Azure CLI версии 2 (в настоящее время)Пакет SDK для Python azure-ai-ml версии 2 (текущая версия)
Узнайте, как управлять вычислительным экземпляром в рабочей области Машинного обучения Azure.
Используйте вычислительный экземпляр в качестве полностью настроенной и управляемой среды разработки в облаке. Для разработки и тестирования можно также использовать экземпляр в качестве целевого объекта вычислений для обучения. Вычислительный экземпляр может параллельно запускать несколько заданий и иметь очередь заданий. В качестве среды разработки вычислительный экземпляр не может использоваться совместно с другими пользователями в рабочей области.
Из этой статьи вы узнаете, как запустить, остановить, перезапустить и удалить вычислительный экземпляр. Сведения о создании вычислительного экземпляра см. в статье Создание вычислительного экземпляра Машинного обучения Azure .
Примечание
В разделах этой статьи ниже используется CLI версии 2. Если вы по-прежнему используете CLI версии 1, см. статью Создание вычислительного кластера Машинного обучения Azure CLI версии 1.
Предварительные требования
Рабочая область машинного обучения Azure. Дополнительные сведения см. в разделе Создание рабочей области Машинного обучения Azure. Для успешного создания вычислительного экземпляра в учетной записи хранения необходимо включить параметр "Разрешить доступ к ключу учетной записи хранения".
Расширение Azure CLI для Службы машинного обучения (версия 2),пакет SDK Python для Машинного обучения Azure (версия 2) или расширение Visual Studio Code Машинного обучения Azure.
При использовании пакета SDK для Python настройте среду разработки с использованием рабочей области. После настройки среды подключитесь к рабочей области в скрипте Python:
ОБЛАСТЬ ПРИМЕНЕНИЯ: пакет SDK для Python azure-ai-ml версии 2 (текущая версия)
Выполните этот код, чтобы подключиться к рабочей области Машинного обучения Azure.
Замените идентификатор подписки, имя группы ресурсов и имя рабочей области в приведенном ниже коде. Вот как найти эти значения:
- Войдите в Студию машинного обучения Azure.
- Откройте рабочую область, которую вы хотите использовать.
- На панели инструментов в правом верхнем углу Студии машинного обучения Azure выберите имя рабочей области.
- Скопируйте значение рабочей области, группы ресурсов и идентификатора подписки в код.
- Если вы используете записную книжку в студии, необходимо скопировать одно значение, закрыть область и вставить ее, а затем вернуться к следующему.
# 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
— это обработчик рабочей области, которая будет использоваться для управления другими ресурсами и заданиями.
Управление
Запуск, останов, перезапуск и удаление вычислительного экземпляра. Вычислительный экземпляр не всегда автоматически масштабируется, поэтому не забудьте остановить ресурс, чтобы предотвратить текущие расходы. Остановка вычислительного экземпляра обеспечивает его высвобождение. При необходимости снова запустите ее. Обратите внимание на то, что при остановке вычислительного экземпляра останавливается начисление платы за часы вычислений, однако будет продолжать начисляться плата за диск, общедоступный IP-адрес и стандартную подсистему балансировки нагрузки.
Вы можете включить автоматическое завершение работы , чтобы автоматически остановить вычислительный экземпляр через указанное время.
Вы также можете создать расписание для автоматического запуска и остановки вычислительного экземпляра в зависимости от времени и дня недели.
Совет
Размер диска ОС вычислительного экземпляра составляет 120 ГБ. Если на диске заканчивается свободное место, очистите с помощью терминала по крайней мере 1–2 ГБ, прежде чем остановить или перезапустить вычислительный экземпляр. Не выполняйте остановку вычислительного экземпляра путем отправки сигнала завершения работы sudo из терминала. Размер временного диска в вычислительном экземпляре зависит от размера выбранной виртуальной машины и подключается к расположению /mnt.
ОБЛАСТЬ ПРИМЕНЕНИЯ: пакет SDK для Python azure-ai-ml версии 2 (текущая версия)
В приведенных ниже примерах имя вычислительного экземпляра хранится в переменной ci_basic_name
.
Получение состояния
from azure.ai.ml.entities import ComputeInstance, AmlCompute # Get compute ci_basic_state = ml_client.compute.get(ci_basic_name)
Stop
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/RStudio, запущенным в экземпляре . Вычислительный экземпляр будет иметь однопользовательский вход, и все действия будут использовать удостоверение этого пользователя для 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
Аудит и просмотр версии вычислительного экземпляра
После развертывания вычислительного экземпляра он не обновляется автоматически. Корпорация Майкрософт выпускает новые образы виртуальных машин ежемесячно. Сведения о вариантах сохранения последних версий см. в статье Управление уязвимостями.
Чтобы отслеживать текущую версию операционной системы экземпляра, можно запросить ее версию с помощью интерфейса командной строки, пакета SDK или пользовательского интерфейса Студии.
ОБЛАСТЬ ПРИМЕНЕНИЯ: пакет SDK для Python azure-ai-ml версии 2 (текущая версия)
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 область.