Compartir a través de


Variables de entorno de tiempo de ejecución de Azure Batch

El servicio Azure Batch establece las siguientes variables del entorno en nodos de proceso. Puede hacer referencia a estas variables del entorno en líneas de comandos de la tarea y en los programas y secuencias de comandos que ejecutan las líneas de comandos.

Para obtener más información sobre el uso de variables de entorno con Batch, consulte Configuración del entorno para las tareas.

Visibilidad de la variable del entorno

Estas variables del entorno solo son visibles en el contexto de la tarea del usuario, que es la cuenta de usuario en el nodo donde se ejecuta una tarea. No verá estas variables al conectarse de forma remota a un nodo de proceso a través de Protocolo de escritorio remoto (RDP) o Secure Shell (SSH) y mostrar las variables de entorno. Esto se debe a que la cuenta de usuario que se usa para la conexión remota no es la misma que la cuenta que utiliza la tarea.

Para obtener el valor actual de una variable de entorno, inicie cmd.exe en un nodo de proceso de Windows o /bin/sh en un nodo de Linux:

cmd /c set <ENV_VARIABLE_NAME>

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

Expansión de línea de comandos de las variables del entorno

Las líneas de comandos que ejecutan las tareas en nodos de proceso no se ejecutan en un shell. Esto significa que estas líneas de comandos no pueden usar de forma nativa características de shell como la expansión de variables de entorno (incluida PATH). Para usar estas características, debe invocar el shell en la línea de comandos. Por ejemplo, ejecute cmd.exe en nodos de proceso en Windows o /bin/sh en nodos de Linux:

cmd /c MyTaskApplication.exe %MY_ENV_VAR%

/bin/sh -c "MyTaskApplication $MY_ENV_VAR"

Variables de entorno

Nota:

AZ_BATCH_AUTHENTICATION_TOKEN está en desuso y se retirará el 30 de septiembre de 2024. Consulte el anuncio para obtener más información y una implementación alternativa.

Nombre de la variable Descripción Disponibilidad Ejemplo
AZ_BATCH_ACCOUNT_NAME El nombre de la cuenta de Batch a la que pertenece la tarea. Todas las tareas. mybatchaccount
AZ_BATCH_ACCOUNT_URL La dirección URL de la cuenta de Batch. Todas las tareas. https://myaccount.westus.batch.azure.com
AZ_BATCH_APP_PACKAGE Un prefijo de todas las variables de entorno de paquete de aplicación. Por ejemplo, si la aplicación "FOO" versión "1" se instala en un grupo, la variable de entorno es AZ_BATCH_APP_PACKAGE_FOO_1 (en Linux) o AZ_BATCH_APP_PACKAGE_FOO#1 (en Windows). AZ_BATCH_APP_PACKAGE_FOO_1 apunta a la ubicación en la que se descargó el paquete (una carpeta). Al usar la versión predeterminada del paquete de la aplicación, use la variable de entorno AZ_BATCH_APP_PACKAGE sin los números de versión. Si está en Linux y el nombre del paquete de aplicación es "Agent-linux-x64" y la versión es "1.1.46.0", el nombre del entorno es: AZ_BATCH_APP_PACKAGE_agent_linux_x64_1_1_46_0 (con guiones bajos y en minúsculas). Para más información, consulte Ejecución de las aplicaciones instaladas para obtener más detalles. Cualquier tarea con un paquete de aplicación asociado. También está disponible para todas las tareas si el nodo mismo tiene paquetes de aplicación. AZ_BATCH_APP_PACKAGE_FOO_1 (Linux) o AZ_BATCH_APP_PACKAGE_FOO#1 (Windows)
AZ_BATCH_AUTHENTICATION_TOKEN Token de autenticación que concede acceso a un conjunto limitado de operaciones de servicio de Batch. Esta variable de entorno solo está presente si authenticationTokenSettings está establecido al agregar la tarea. El valor del token se usa en las API de Batch como credenciales para crear un cliente de Batch, como en BatchClient.Open() .NET API. El token no admite redes privadas. Todas las tareas. Token de acceso de OAuth2
AZ_BATCH_CERTIFICATES_DIR Un directorio en el directorio de trabajo de la tarea en el que se almacenan los certificados para nodos de proceso de Linux. Esta variable de entorno no se aplica a los nodos de ejecución de Windows. Todas las tareas. /mnt/batch/tasks/workitems/batchjob001/job-1/task001/certs
AZ_BATCH_HOST_LIST La lista de nodos que se asignan a una tarea de varias instancias en el formato nodeIP,nodeIP. Tareas principales y secundarias de varias instancias. 10.0.0.4,10.0.0.5
AZ_BATCH_IS_CURRENT_NODE_MASTER Especifica si el nodo actual es el nodo maestro de una tarea de varias instancias. Los valores posibles son true y false. Tareas principales y secundarias de varias instancias. true
AZ_BATCH_JOB_ID El identificador de la cuenta a la que pertenece la tarea. Todas las tareas excepto la tarea de inicio. batchjob001
AZ_BATCH_JOB_PREP_DIR La ruta de acceso completa del directorio de tareas de preparación del trabajo en el nodo. Todas las tareas excepto la tarea de inicio y la tarea de preparación del trabajo. Solo está disponible si el trabajo está configurado con una tarea de preparación del trabajo. C:\user\tasks\workitems\jobprepreleasesamplejob\job-1\jobpreparation
AZ_BATCH_JOB_PREP_WORKING_DIR La ruta de acceso completa del directorio de trabajo de tareas de preparación del trabajo en el nodo. Todas las tareas excepto la tarea de inicio y la tarea de preparación del trabajo. Solo está disponible si el trabajo está configurado con una tarea de preparación del trabajo. C:\user\tasks\workitems\jobprepreleasesamplejob\job-1\jobpreparation\wd
AZ_BATCH_MASTER_NODE La dirección IP y puerto del nodo de ejecución en el que se ejecuta la tarea principal de una tarea de varias instancias. No use el puerto especificado aquí para la comunicación de MPI o NCCL: está reservado para el servicio Azure Batch. En su lugar, use la variable MASTER_PORT, ya sea estableciéndola con un valor pasado a través del argumento de la línea de comandos (el puerto 6105 es una buena opción predeterminada) o, usando el valor, AML establece si lo hace. Tareas principales y secundarias de varias instancias. 10.0.0.4:6000
AZ_BATCH_NODE_ID El identificador del nodo al que se asignó la tarea. Todas las tareas. tvm-1219235766_3-20160919t172711z
AZ_BATCH_NODE_IS_DEDICATED Si true, el nodo actual es un nodo dedicado. Si es false, es un nodo de Azure Spot. Todas las tareas. true
AZ_BATCH_NODE_LIST La lista de nodos que se asignan a una tarea de varias instancias en el formato nodeIP;nodeIP. Tareas principales y secundarias de varias instancias. 10.0.0.4;10.0.0.5
AZ_BATCH_NODE_MOUNTS_DIR Ruta de acceso completa de la ubicación de montaje del sistema de archivos de nivel de nodo donde residen todos los directorios de montaje. Los recursos compartidos de archivos de Windows usan una letra de unidad, por lo que, para Windows, la unidad de montaje forma parte de dispositivos y unidades. Todas las tareas, incluida la tarea de inicio, tienen acceso al usuario, dado que el usuario es consciente de los permisos de montaje para el directorio montado. En Ubuntu, por ejemplo, la ubicación es /mnt/batch/tasks/fsmounts.
AZ_BATCH_NODE_ROOT_DIR La ruta de acceso completa de la raíz de todos los directorios de Batch en el nodo. Todas las tareas. C:\user\tasks
AZ_BATCH_NODE_SHARED_DIR La ruta de acceso completa del directorio compartido en el nodo. Todas las tareas que se ejecutan en un nodo tienen acceso de lectura/escritura a este directorio. Las tareas que se ejecutan en otros nodos no tienen acceso remoto a este directorio (no es un directorio de red "compartido"). Todas las tareas. C:\user\tasks\shared
AZ_BATCH_NODE_STARTUP_DIR La ruta de acceso completa del directorio de la tarea de inicio en el nodo. Todas las tareas. C:\user\tasks\startup
AZ_BATCH_POOL_ID El identificador del grupo en el que se ejecuta la tarea. Todas las tareas. batchpool001
AZ_BATCH_TASK_DIR La ruta de acceso completa del directorio de tareas en el nodo. Este directorio contiene stdout.txt y stderr.txt para la tarea, y AZ_BATCH_TASK_WORKING_DIR. Todas las tareas. C:\user\tasks\workitems\batchjob001\job-1\task001
AZ_BATCH_TASK_ID El identificador de la tarea actual. Todas las tareas excepto la tarea de inicio. task001
AZ_BATCH_TASK_SHARED_DIR Una ruta de acceso de directorio que es idéntica para la tarea principal y cada tarea secundaria de una tarea de varias instancias. La ruta de acceso existe en cada nodo en el que se ejecuta la tarea de varias instancias y es accesible en modo lectura/escritura para los comandos de tarea que se ejecutan en ese nodo (tanto el comando de coordinación como el comando de la aplicación. Las tareas secundarias o la tarea principal que se ejecutan en otros nodos no tienen acceso remoto a este directorio (no es un directorio de red "compartido"). Tareas principales y secundarias de varias instancias. C:\user\tasks\workitems\multiinstancesamplejob\job-1\multiinstancesampletask
AZ_BATCH_TASK_WORKING_DIR La ruta de acceso completa del directorio de trabajo en tareas en el nodo. La tarea que se está ejecutando tiene acceso de lectura/escritura a este directorio. Todas las tareas. C:\user\tasks\workitems\batchjob001\job-1\task001\wd
AZ_BATCH_TASK_RESERVED_EPHEMERAL_DISK_SPACE_BYTES El umbral actual del espacio en disco en el que se marcará la máquina virtual como DiskFull. Todas las tareas. 1000000
CCP_NODES La lista de nodos y el número de núcleos por nodo que se asignan a una tarea de varias instancias. Los nodos y núcleos se muestran en el formato numNodes<space>node1IP<space>node1Cores<space>
node2IP<space>node2Cores<space> ..., donde el número de nodos es seguido de una o varias direcciones IP de nodo y el número de núcleos para cada una.
Tareas principales y secundarias de varias instancias. 2 10.0.0.4 1 10.0.0.5 1

Pasos siguientes