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
- Obtenga información sobre cómo usar variables de entorno con Batch.
- Más información sobre archivos y directorios en Batch
- Obtenga información sobre tareas de instancias múltiples.