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


Устранение задержек при создании пакетного узла при перезапуске или повторном создании

В этой статье описывается, как устранить задержки при создании пакетного узла при перезапуске или повторном создании узла. Избегайте проблем в Microsoft пакетная служба Azure, вызванных установкой больших пакетов среды выполнения Python и Python. Эта установка приводит к длительным задержкам и возможным непредвиденным ошибкам при первом добавлении пакетного узла в пул пакетной службы или при перезапуске или повторном вызове узла.

Симптомы

При создании пакетного пула и добавлении узла в пул или перезапуске узла установка приложения занимает слишком много времени или завершается сбоем после длительной установки.

Причина

Эта проблема возникает, так как пакет Python слишком велик для использования в качестве начальной задачи.

При создании пула пакетной службы в пакетная служба Azure и добавлении пакетного узла рекомендуется использовать начальную задачу для подготовки операционной среды. Эта начальная задача может выполнить следующие действия:

  • Установите приложения, выполняемые вашими задачами.

  • Запуск фоновых процессов при первом добавлении пакетного узла в пул или при перезапуске или повторном создании узла.

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

Решение

Чтобы устранить эту проблему, соответствующих виртуальным машинам и расположениям учетных записей пакетной службы и версиям ОС, а также предустановке python и его пакетам перед записью образа 1-го поколения.

Используйте предварительно упаковаированный пользовательский образ для выделения пакетных узлов. Общие сведения об этом процессе см. в разделе "Использование управляемого образа" для создания настраиваемого пула образов.

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

  • Укажите то же расположение или регион, которые следует использовать при создании учетной записи пакетной службы и создании узла пакетной службы виртуальной машины.

  • Выберите образ с именем 1-го поколения, например Windows Server 2019 Datacenter — 1-го поколения (узел Windows) или Ubuntu Server 18.04 LTS — 1-го поколения (узел Linux). Образ 1-го поколения необходим, так как некоторые семейства виртуальных машин не поддерживают образы 2-го поколения.

  • При создании пула узлов в портал Azure убедитесь, что список SKU в разделе операционной системы содержит указанную версию системы.

  • Настройте установку Python, чтобы она была предварительно установлена на образе и работает для всех пользователей.

Процедуры, относящиеся к системе

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

Узел Windows: установите требуемую версию Python на диске C и добавьте системный путь вручную.

Сводка процедуры

После создания и запуска виртуальной машины подключитесь к виртуальной машине с помощью протокола удаленного рабочего стола (RDP). Затем установите все необходимое на виртуальной машине, включая требуемую версию среды выполнения Python (например, Python 3.10.4) и измените системный путь. Наконец, захватите образ виртуальной машины, разверните его в пакетном пуле, использующего образ виртуальной машины, подключитесь к новому узлу пула пакетной службы, а затем проверьте его, чтобы убедиться, что предварительная среда выполнения Python и пакеты работают правильно.

Шаги процедуры

  1. Создайте виртуальную машину Windows в портал Azure, указав следующие параметры.

    Имя настройки Значение параметра
    Регион Тот же регион, который назначен вашей учетной записи пакетной службы
    Изображение Образ Windows с именем 1-го поколения (не 2-го поколения) и поддерживается пакетной службой.
  2. Подключитесь к виртуальной машине с помощью RDP.

  3. Запустите мастер установки Python и выберите параметр настройки установки . Затем на странице "Дополнительные параметры" перейдите в поле "Настройка расположения установки" и укажите путь на диске C.

  4. Измените системную переменную Path среды таким образом, чтобы она включает путь установки Python (например, C:\Python\) и путь к установленным пакетам Python (например, C:\Python\Scripts\).

    Примечание.

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

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

    1. Нажмите кнопку "Пуск", а затем найдите и выберите "Параметры".

    2. В приложении "Параметры" выберите >параметры системы "Дополнительные>параметры системы".

    3. В диалоговом окне " Свойства системы" выберите вкладку "Дополнительно " и выберите переменные среды.

    4. В диалоговом окне "Переменные среды" перейдите в раздел системных переменных, выберите переменную path и нажмите кнопку "Изменить".

    5. В диалоговом окне "Изменить переменную среды" нажмите кнопку "Создать", а затем введите путь к установленным пакетам Python. Затем повторите этот шаг, чтобы ввести путь к среде выполнения Python.

    6. Нажмите кнопку "ОК " три раза, чтобы применить изменения в трех диалоговых окнах.

  5. Проверьте установку Python в консоли.

    Например, после выполнения python --version проверки установленной версии Python можно запустить интерпретатор Python, чтобы попытаться импортировать пакет, который еще не установлен (например numpy). После получения ожидаемого ModuleNotFoundError исключения выполните pip install <package-name> команду, чтобы установить пакет, а затем снова запустите интерпретатор Python, чтобы импортировать этот пакет. Теперь команда импорта должна завершиться успешно.

  6. Захватить образ виртуальной машины, выполнив действия по созданию образа виртуальной машины на портале, но примените только следующие параметры на странице создания образа .

    Имя настройки Значение параметра
    Группа ресурсов Выберите из списка групп ресурсов или нажмите кнопку "Создать" , чтобы создать группу ресурсов.
    Целевая коллекция вычислений Azure Выберите из списка коллекций вычислений Azure или выберите "Создать" , чтобы создать коллекцию вычислений Azure.
    Определение образа целевой виртуальной машины Выберите Создать. На странице "Создание определения образа виртуальной машины" введите только имя определения образа виртуальной машины, которое требуется предоставить изображению. (Страница автоматически предоставит Параметры издателя, предложения и номера SKU .)
    Номер версии Введите номер версии, который требуется предоставить образу виртуальной машины.
  7. После применения параметров образа виртуальной машины нажмите кнопку "Проверить и создать ", чтобы проверить параметры, а затем нажмите кнопку "Создать ", чтобы создать образ. На этом шаге создаются следующие три типа ресурсов:

    • Коллекция вычислений Azure
    • Определение пользовательского изображения
    • Версия определения пользовательского изображения
  8. После создания трех ресурсов выполните следующие действия, чтобы создать новый пакетный пул, использующий образ виртуальной машины:

    1. В портал Azure найдите и выберите учетные записи пакетной службы.

    2. В списке учетных записей пакетной службы выберите свою учетную запись.

    3. В области меню учетной записи пакетной службы выберите "Пулы" и нажмите кнопку "Добавить ", чтобы создать пакетный пул.

    4. На странице "Добавление пула" введите следующие параметры и нажмите кнопку "ОК".

      Имя настройки Значение параметра
      Идентификатор пула Новое имя пула
      Тип образа Пользовательский образ — Общая коллекция образов *
      Общая коллекция образов. Имя целевой коллекции вычислений Azure, указанной при создании образа виртуальной машины.
      Изображение Имя определения образа виртуальной машины, указанное при создании образа виртуальной машины
      Версия Номер версии, указанный при создании образа виртуальной машины
      Операционная система Windows
      Дистрибутив ОС windowsserver
      SKU ОС Код продукта выбранной версии ОС (например, microsoftwindowsserver-2019-datacenter)

      * Общая коллекция образов — это другое имя коллекции вычислений Azure. Это один из ресурсов, созданных во время создания образа виртуальной машины.

  9. После выделения узла пакетного пула перейдите на страницу узла пула пакетной службы, а затем выберите "Подключиться " в меню заголовка.

  10. В области "Подключиться" выберите параметр "Создать пользователя", нажмите кнопку "Создать случайного пользователя" и нажмите кнопку "Скачать RDP-файл".

  11. Запустите скачанный RDP-файл, чтобы подключиться к новому пакетной узлу.

  12. Проверьте установку Python еще раз, чтобы убедиться, что предварительная версия работает правильно.

Ссылки

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.