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


Переменные среды выполнения пакетной службы Azure

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

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

Видимость переменных среды

Эти переменные среды видимы только в контексте пользователя задачи, т. е. учетной записи пользователя на узле, с помощью которой выполняется задача. Вы не увидите эти переменные, если удаленно подключитесь к вычислительному узлу через протокол удаленного рабочего стола (RDP) или Secure Shell (SSH) и откроете список переменных среды. Это вызвано тем, что учетная запись, используемая для удаленного подключения, отличается от учетной записи, используемой задачей.

Чтобы получить текущее значение переменной среды, запустите cmd.exe на вычислительном узле Windows или /bin/sh на узле Linux:

cmd /c set <ENV_VARIABLE_NAME>

/bin/sh -c "printenv <ENV_VARIABLE_NAME>"

Расширение переменных среды в командной строке

Командные строки, запускаемые задачами на вычислительных узлах, не выполняются в оболочке. Это означает, что эти командные строки не могут использовать встроенные функции оболочки, такие как расширение переменных среды (включая PATH). Чтобы воспользоваться этими функциями, нужно вызвать оболочку в командной строке. Например, запустите cmd.exe на вычислительных узлах Windows или /bin/sh на узлах Linux:

cmd /c MyTaskApplication.exe %MY_ENV_VAR%

/bin/sh -c "MyTaskApplication $MY_ENV_VAR"

Переменные среды

Примечание.

AZ_BATCH_AUTHENTICATION_TOKEN устарело и будет прекращено 30 сентября 2024 г. Дополнительные сведения и альтернативную реализацию см. в объявлении .

Имя переменной Description Availability Пример
AZ_BATCH_ACCOUNT_NAME Имя учетной записи пакетной службы, к которой относится задача. Все задачи. mybatchaccount
AZ_BATCH_ACCOUNT_URL URL-адрес учетной записи пакетной службы. Все задачи. https://myaccount.westus.batch.azure.com
AZ_BATCH_APP_PACKAGE Префикс всех переменных среды пакета приложения. Например, если приложение "Foo" версии "1" установлено в пуле, переменная окружения будет AZ_BATCH_APP_PACKAGE_FOO_1 (в Linux) или AZ_BATCH_APP_PACKAGE_FOO#1 (в Windows). AZ_BATCH_APP_PACKAGE_FOO_1 указывает на местоположение, в которое был загружен пакет (папка). При использовании версии пакета приложения по умолчанию используйте переменную среды AZ_BATCH_APP_PACKAGE без номеров версий. Если в Linux и имя пакета приложения — Agent-linux-x64, а версия — 1.1.46.0, имя среды — это фактически: AZ_BATCH_APP_PACKAGE_agent_linux_x64_1_1_46_0, используя подчеркивания и нижний регистр. Дополнительные сведения см. в разделе Выполнение установленных приложений. Любую задачу с помощью пакета связанного приложения. Доступно также для всех задач, если сам узел имеет пакеты приложений. AZ_BATCH_APP_PACKAGE_FOO_1 (Linux) или AZ_BATCH_APP_PACKAGE_FOO#1 (Windows)
AZ_BATCH_AUTHENTICATION_TOKEN Маркер проверки подлинности, который предоставляет доступ к ограниченному набору операций пакетной службы. Эта переменная среды присутствует, только если authenticationTokenSettings устанавливается при добавлении задачи. В API пакетной службы, например в API BatchClient.Open() для .NET, значение маркера используется в качестве учетных данных для создания клиента пакетной службы. Маркер не поддерживает частную сеть. Все задачи. Маркер доступа OAuth2
AZ_BATCH_CERTIFICATES_DIR Каталог в рабочем каталоге задачи, где хранятся сертификаты для вычислительных узлов Linux. Эта переменная среды не применяется к вычислительным узлам Windows. Все задачи. /mnt/batch/tasks/workitems/batchjob001/job-1/task001/certs
AZ_BATCH_HOST_LIST Список узлов, выделяемых для задачи с несколькими экземплярами, в формате nodeIP,nodeIP. Основные задачи и подзадачи с несколькими экземплярами. 10.0.0.4,10.0.0.5
AZ_BATCH_IS_CURRENT_NODE_MASTER Указывает, является ли текущий узел главным для задачи с несколькими экземплярами. Возможные значения: true и false. Основные задачи и подзадачи с несколькими экземплярами. true
AZ_BATCH_JOB_ID Идентификатор задания, к которому относится задача Все задачи, кроме задачи запуска. batchjob001
AZ_BATCH_JOB_PREP_DIR Полный путь к каталогу задачи подготовки задания на узле. Все задачи, кроме задачи запуска и задачи подготовки задания. Доступна, только если для задания настроена задача подготовки задания. C:\user\tasks\workitems\jobprepreleasesamplejob\job-1\jobpreparation
AZ_BATCH_JOB_PREP_WORKING_DIR Полный путь к рабочему каталогу задачи подготовки задания на узле. Все задачи, кроме задачи запуска и задачи подготовки задания. Доступна, только если для задания настроена задача подготовки задания. C:\user\tasks\workitems\jobprepreleasesamplejob\job-1\jobpreparation\wd
AZ_BATCH_MASTER_NODE IP-адрес и порт вычислительного узла, где выполняется основная задача для задачи с несколькими экземплярами. Не используйте указанный здесь порт для связи MPI или NCCL, поскольку он зарезервирован для пакетной службы Azure. Вместо этого можно использовать переменную MASTER_PORT, задав для нее значение, передаваемое через аргумент командной строки (по умолчанию подойдет порт 6105), или использовать значение, задаваемое AML, если оно задается. Основные задачи и подзадачи с несколькими экземплярами. 10.0.0.4:6000
AZ_BATCH_NODE_ID Идентификатор узла, которому назначена задача. Все задачи. tvm-1219235766_3-20160919t172711z
AZ_BATCH_NODE_IS_DEDICATED Если имеет значение true, то текущий узел является выделенным. Если имеет значение false, то это точечный узел Azure. Все задачи. true
AZ_BATCH_NODE_LIST Список узлов, выделяемых для задачи с несколькими экземплярами, в формате nodeIP;nodeIP. Основные задачи и подзадачи с несколькими экземплярами. 10.0.0.4;10.0.0.5
AZ_BATCH_NODE_MOUNTS_DIR Полный путь к расположению подключения файловой системы уровня узла, где находятся все каталоги подключения. Общие папки Windows используют букву диска, поэтому для Windows диск подключения является частью устройств и дисков. Все задачи, включая начальную задачу, имеют доступ к пользователю при условии, что у пользователя есть разрешения на подключение к подключенному каталогу. Например, в Ubuntu это следующее расположение: /mnt/batch/tasks/fsmounts
AZ_BATCH_NODE_ROOT_DIR Полный путь к корневому каталогу всех каталогов пакетной службы на узле. Все задачи. C:\user\tasks
AZ_BATCH_NODE_SHARED_DIR Полный путь к общему каталогу на узле. Все задачи, которые выполняются на узле, имеют доступ на чтение и запись для этого каталога. У задач, выполняемых на других узлах, нет удаленного доступа к этому каталогу (это не "общий" сетевой каталог). Все задачи. C:\user\tasks\shared
AZ_BATCH_NODE_STARTUP_DIR Полный путь к каталогу запуска задачи на узле. Все задачи. C:\user\tasks\startup
AZ_BATCH_POOL_ID Идентификатор пула, в котором выполняется задача Все задачи. batchpool001
AZ_BATCH_TASK_DIR Полный путь к каталогу задачи на узле. Этот каталог содержит stdout.txt и stderr.txt для задачи, а также AZ_BATCH_TASK_WORKING_DIR. Все задачи. C:\user\tasks\workitems\batchjob001\job-1\task001
AZ_BATCH_TASK_ID Идентификатор текущей задачи. Все задачи, кроме задачи запуска. task001
AZ_BATCH_TASK_SHARED_DIR Путь к каталогу, идентичный для основной задачи и всех подзадач задачи с несколькими экземплярами. Он существует на каждом узле, где выполняется задача с несколькими экземплярами, и доступен для чтения и записи командам, выполняющимся на этом узле (как команде координации, так и команде приложения). У подзадач или основной задачи, выполняемых на других узлах, нет удаленного доступа к этому каталогу (это не "общий" сетевой каталог). Основные задачи и подзадачи с несколькими экземплярами. C:\user\tasks\workitems\multiinstancesamplejob\job-1\multiinstancesampletask
AZ_BATCH_TASK_WORKING_DIR Полный путь к рабочему каталогу задачи на узле. Выполняемая задача имеет доступ на чтение и запись для этого каталога. Все задачи. C:\user\tasks\workitems\batchjob001\job-1\task001\wd
AZ_BATCH_TASK_RESERVED_EPHEMERAL_DISK_SPACE_BYTES Текущее пороговое значение места на диске, на котором виртуальная машина будет помечена как DiskFull. Все задачи. 1000 000
CCP_NODES Список узлов и число ядер на узел, выделяемых для задачи с несколькими экземплярами. Узлы и ядра указаны в формате numNodes<space>node1IP<space>node1Cores<space>
node2IP<space>node2Cores<space> ..., где за числом узлов следует один или несколько IP-адресов узла, а также число ядер для каждого узла.
Основные задачи и подзадачи с несколькими экземплярами. 2 10.0.0.4 1 10.0.0.5 1

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