Несогласованная структура папки узла пакетной службы Azure

Некоторое время я использую пул AzureBatch с развернутыми пакетами приложений и могу без проблем изменять / обновлять их через Azure в течение нескольких месяцев.

Я попытался создать новый пул, который настроен точно так же, как мой текущий пул, но с отдельным пакетом приложения.

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

Путь для исходного пула к нужным мне exes выглядит так: C: \ user \ tasks \ applications \ wd \ 'packagename' \ 'version' \ 'nodetimestamp' \ 'PACKAGENAME'

Но в этом новом пуле структура выглядит так:

C: \ user \ tasks \ apppackages \ 'packagenameNodetimestamp' \ 'PACKAGENAME'

Я не вижу, как эти пулы создаются по-разному, я пытался воссоздать этот новый пул несколько раз, но выходит то же самое. Не все параметры при создании пула доступны для просмотра на портале Azure после его создания, но я почти уверен, что это всего лишь пул облачных сервисов, Windows Server 2012 R2 для обоих.

Любая помощь будет принята с благодарностью, спасибо за ваше время.

РЕДАКТИРОВАТЬ:

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


person DMarczak    schedule 05.11.2018    source источник
comment
привет @DMarczak: быстрый вопрос: сколько лет было твоему старому пулу? и для каких экземпляров вам необходимо физически проверить файловую структуру для каталога. Причина в том, что если вы используете переменные env уровня пакетной службы Azure: Windows: AZ_BATCH_APP_PACKAGE_APPLICATIONID#version docs.microsoft.com/en-us/azure/batch/, вы получите доступ к лактации для вашего запуска заявление.   -  person Tats_innit    schedule 06.11.2018
comment
Здравствуйте, мой оригинальный пул был создан в июле. В настоящее время я использую %AZ_BATCH_APP_PACKAGE_'PKGNAME'% в качестве корня в структуре папок моего приложения. Если это будет новый способ, которым они всегда будут, я могу отбросить старый пул и воссоздать его, я просто беспокоюсь о том, что вещи постоянно меняются, или если я как-то неправильно создаю эти новые пулы. Кроме того, означает ли это, что я должен знать версию пакета приложения на сайте вызова пакетного задания? В моем исходном пуле переменные ENV всегда автоматически указывали на новейшие версии.   -  person DMarczak    schedule 06.11.2018
comment
Хм, по-видимому, это то же самое, мне просто нужно обновить мой построитель строк, чтобы в переменной среды был правильный APPLICATIONID, а не PKGNAME. Управление версиями по-прежнему работает так же, если вы не добавите / не укажете его, будет использоваться последняя версия. Спасибо.   -  person DMarczak    schedule 06.11.2018
comment
Круто, рад, что помог! Я установлю это как ответное сообщение, а также добавлю дополнительное примечание ниже.   -  person Tats_innit    schedule 06.11.2018


Ответы (1)


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

На узлах Windows переменная имеет следующий формат:

Windows: AZ_BATCH_APP_PACKAGE_APPLICATIONID#version

На узлах Linux формат немного отличается. Точки (.), Дефисы (-) и числовые знаки (#) сглаживаются до подчеркивания в переменной среды. Также обратите внимание, что регистр ID приложения сохраняется. Например:

Linux: AZ_BATCH_APP_PACKAGE_applicationid_version

Ссылка: https://docs.microsoft.com/en-us/azure/batch/batch-application-packages#execute-the-installed-applications

Далее добавить:

Внутренний механизм и структура Dir зависят от типа ОС и IMO (на мой взгляд), это не то место, где рекомендуется зависеть от жестко запрограммированного местоположения, поэтому механизм доступа к этой функции осуществляется через env vars, то есть любые основные изменения может случиться так, что env vars укажет на источник правильного каталога.

Если заинтересован: несколько месяцев назад было выполнено обновление, и уведомление о функции находится здесь: https://github.com/Azure/Batch/issues/1

Надеюсь, это покрывает сценарий и помогает!

person Tats_innit    schedule 06.11.2018
comment
Я пытался проголосовать за ваш ответ, но я должен быть скромным и скромным, чтобы отдать свой ответ. Еще раз спасибо за помощь в прояснении этого вопроса. - person DMarczak; 07.11.2018