Udostępnij za pośrednictwem


Zmienne środowiskowe środowiska uruchomieniowego usługi Azure Batch

Usługa Azure Batch ustawia następujące zmienne środowiskowe w węzłach obliczeniowych. Można odwoływać się do tych zmiennych środowiskowych w wierszach poleceń zadań oraz w programach i skryptach uruchamianych za pomocą wierszy polecenia.

Aby uzyskać więcej informacji na temat używania zmiennych środowiskowych w usłudze Batch, zobacz Ustawienia środowiska dla zadań podrzędnych.

Widoczność zmiennej środowiskowej

Te zmienne środowiskowe są widoczne tylko w kontekście użytkownika zadania, czyli konta użytkownika w węźle, w którym jest wykonywane zadanie. Te zmienne nie będą widoczne podczas nawiązywania połączenia zdalnego z węzłem obliczeniowym za pośrednictwem protokołu RDP (Remote Desktop Protocol) ani protokołu Secure Shell (SSH) i wyświetlania zmiennych środowiskowych. Dzieje się tak, ponieważ konto użytkownika używane do połączenia zdalnego nie jest takie samo jak konto używane przez zadanie.

Aby uzyskać bieżącą wartość zmiennej środowiskowej, uruchom polecenie cmd.exe w węźle obliczeniowym systemu Windows lub /bin/sh w węźle systemu Linux:

cmd /c set <ENV_VARIABLE_NAME>

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

Rozszerzanie zmiennych środowiskowych w wierszu polecenia

Wiersze poleceń wykonywane przez zadania na węzłach obliczeniowych nie działają w powłoce. Oznacza to, że te wiersze poleceń nie mogą natywnie używać funkcji powłoki, takich jak rozszerzenia zmiennych środowiskowych (w tym PATH). Aby użyć takich cech, należy wywołać powłokę w wierszu polecenia. Na przykład uruchom polecenie cmd.exe w węzłach obliczeniowych systemu Windows lub /bin/sh w węzłach systemu Linux:

cmd /c MyTaskApplication.exe %MY_ENV_VAR%

/bin/sh -c "MyTaskApplication $MY_ENV_VAR"

Zmienne środowiskowe

Uwaga

AZ_BATCH_AUTHENTICATION_TOKEN jest przestarzały i zostanie wycofany 30 września 2024 r. Zobacz ogłoszenie , aby uzyskać szczegółowe informacje i alternatywną implementację.

Nazwa zmiennej Opis Dostępność Przykład
AZ_BATCH_ACCOUNT_NAME Nazwa konta usługi Batch, do którego należy zadanie. Wszystkie zadania. Konto MyBatchAccount
AZ_BATCH_ACCOUNT_URL Adres URL konta usługi Batch. Wszystkie zadania. https://myaccount.westus.batch.azure.com
AZ_BATCH_APP_PACKAGE Prefiks wszystkich zmiennych środowiskowych pakietu aplikacji. Jeśli na przykład aplikacja "FOO" w wersji "1" jest zainstalowana w puli, zmienna środowiskowa jest AZ_BATCH_APP_PACKAGE_FOO_1 (w systemie Linux) lub AZ_BATCH_APP_PACKAGE_FOO#1 (w systemie Windows). AZ_BATCH_APP_PACKAGE_FOO_1 wskazuje lokalizację pobranego pakietu (folder). W przypadku korzystania z domyślnej wersji pakietu aplikacji użyj zmiennej środowiskowej AZ_BATCH_APP_PACKAGE bez numerów wersji. Jeśli korzystasz z systemu Linux, a nazwa pakietu aplikacji to "Agent-linux-x64", a wersja to "1.1.46.0", nazwa środowiska w rzeczywistości brzmi: AZ_BATCH_APP_PACKAGE_agent_linux_x64_1_1_46_0, z użyciem podkreślników (underscore) i małych liter (lowercase). Aby uzyskać więcej informacji, zobacz Wykonywanie zainstalowanych aplikacji , aby uzyskać więcej informacji. Każde zadanie ze skojarzonym pakietem aplikacji. Dostępne również dla wszystkich zadań, jeśli sam węzeł ma pakiety aplikacji. AZ_BATCH_APP_PACKAGE_FOO_1 (Linux) lub AZ_BATCH_APP_PACKAGE_FOO#1 (Windows)
AZ_BATCH_AUTHENTICATION_TOKEN Token uwierzytelniania, który udziela dostępu do ograniczonego zestawu operacji usługi Batch. Ta zmienna środowiskowa jest obecna tylko wtedy, gdy parametr authenticationTokenSettings zostanie ustawiony podczas dodawania zadania. Wartość tokenu jest używana w Batch APIs jako poświadczenia do tworzenia klienta Batch, takiego jak w BatchClient.Open() API .NET. Token nie obsługuje sieci prywatnej. Wszystkie zadania. Token dostępu OAuth2
AZ_BATCH_CERTIFICATES_DIR Katalog znajdujący się w katalogu roboczym zadania, w którym przechowywane są certyfikaty dla węzłów obliczeniowych Linux. Ta zmienna środowiskowa nie ma zastosowania do węzłów obliczeniowych systemu Windows. Wszystkie zadania. /mnt/batch/tasks/workitems/batchjob001/job-1/task001/certs
AZ_BATCH_HOST_LIST Lista węzłów przydzielonych do zadania z wieloma wystąpieniami w formacie nodeIP,nodeIP. Podzadania podstawowe i podrzędne z wieloma wystąpieniami. 10.0.0.4,10.0.0.5
AZ_BATCH_IS_CURRENT_NODE_MASTER Określa, czy bieżący węzeł jest węzłem głównym dla zadania z wieloma wystąpieniami. Możliwe wartości to true i false. Podzadania podstawowe i podrzędne z wieloma wystąpieniami. true
AZ_BATCH_JOB_ID Identyfikator pracy, do której należy zadanie. Wszystkie zadania z wyjątkiem zadania uruchamiania. batchjob001 powiedział:
AZ_BATCH_JOB_PREP_DIR Pełna ścieżka katalogu zadania przygotowania na węźle. Wszystkie zadania z wyjątkiem zadania uruchamiania i zadania przygotowania. Dostępne tylko wtedy, gdy zadanie jest skonfigurowane z zadaniem przygotowawczym. AZ_BATCH_JOB_PREP_DIR
KATALOG_PRZYGOTOWAWCZY_PRACY_AZ_BATCH Pełna ścieżka katalogu roboczego procesu przygotowania na węźle. Wszystkie zadania z wyjątkiem zadania uruchamiania i zadania przygotowania. Dostępne tylko wtedy, gdy zadanie jest skonfigurowane z zadaniem przygotowawczym. AZ_BATCH_JOB_PREP_WORKING_DIR
AZ_BATCH_MASTER_NODE Adres IP i port węzła obliczeniowego, na którym jest uruchamiane podstawowe zadanie zadania z wieloma wystąpieniami . Nie używaj portu określonego tutaj dla komunikacji MPI lub NCCL — jest on zarezerwowany dla usługi Azure Batch. Zamiast tego należy użyć zmiennej MASTER_PORT, ustawiając ją na wartość przekazaną za pośrednictwem argumentu wiersza polecenia (port 6105 jest dobrym wyborem domyślnym) lub używając wartości ustawionej przez AML, jeśli jest to wymagane. Podzadania podstawowe i podrzędne z wieloma wystąpieniami. 10.0.0.4:6000
AZ_BATCH_NODE_ID Identyfikator węzła, do którego przydzielono zadanie. Wszystkie zadania. TVM-1219235766_3-20160919T172711Z
AZ_BATCH_NODE_JEST_ZADEDYKOWANY Jeśli true, bieżący węzeł jest węzłem dedykowanym. Jeśli falsejest to węzeł typu spot platformy Azure. Wszystkie zadania. true
AZ_BATCH_NODE_LIST Lista węzłów przydzielonych do zadania z wieloma wystąpieniami w formacie nodeIP;nodeIP. Podzadania podstawowe i podrzędne z wieloma wystąpieniami. 10.0.0.4;10.0.0.5
AZ_BATCH_NODE_MOUNTS_DIR Pełna ścieżka lokalizacji instalacji systemu plików na poziomie węzła, w której znajdują się wszystkie katalogi instalacji. Udziały plików w systemie Windows używają litery dysku, więc dla systemu Windows zamontowany dysk jest częścią urządzeń i dysków. Wszystkie zadania, w tym zadanie uruchamiania, mają dostęp do użytkownika, biorąc pod uwagę, że użytkownik ma świadomość uprawnień instalacji dla zainstalowanego katalogu. AZ_BATCH_NODE_MOUNTS_DIR
AZ_BATCH_NODE_ROOT_DIR Pełna ścieżka katalogu głównego wszystkich katalogów usługi Batch w węźle. Wszystkie zadania. AZ_BATCH_NODE_ROOT_DIR
AZ_BATCH_NODE_SHARED_DIR Pełna ścieżka katalogu udostępnionego na węźle. Wszystkie zadania wykonywane w węźle mają dostęp do odczytu/zapisu do tego katalogu. Zadania wykonywane w innych węzłach nie mają dostępu zdalnego do tego katalogu (nie jest to katalog sieciowy "udostępniony"). Wszystkie zadania. AZ_BATCH_NODE_SHARED_DIR
AZ_BATCH_NODE_STARTUP_DIR Pełna ścieżka katalogu zadań uruchamiania w węźle. Wszystkie zadania. AZ_BATCH_NODE_STARTUP_DIR
AZ_BATCH_POOL_ID Identyfikator puli, na której uruchomiono zadanie. Wszystkie zadania. pula wsadowa001
AZ_BATCH_TASK_DIR Pełna ścieżka katalogu zadań w węźle. Ten katalog zawiera element stdout.txt i stderr.txt dla zadania oraz AZ_BATCH_TASK_WORKING_DIR. Wszystkie zadania. AZ_BATCH_TASK_DIR
AZ_BATCH_TASK_ID Identyfikator bieżącego zadania. Wszystkie zadania z wyjątkiem zadania uruchamiania. zadanie001
AZ_BATCH_TASK_SHARED_DIR Ścieżka katalogu, która jest identyczna dla zadania głównego i każdego podzadania w zadaniu wieloinstancyjnym. Ścieżka istnieje na każdym węźle, na którym jest uruchamiane zadanie z wieloma wystąpieniami, i jest dostępna do odczytu i zapisu dla poleceń zadań działających na tym węźle (zarówno polecenie koordynacji, jak i polecenie aplikacji). Podzadania lub zadanie podstawowe wykonywane w innych węzłach nie mają dostępu zdalnego do tego katalogu (nie jest to katalog sieciowy "udostępniony"). Podzadania podstawowe i podrzędne z wieloma wystąpieniami. AZ_BATCH_TASK_SHARED_DIR
AZ_BATCH_TASK_WORKING_DIR Pełna ścieżka katalogu roboczego zadania na węźle. Aktualnie uruchomione zadanie ma dostęp do odczytu/zapisu do tego katalogu. Wszystkie zadania. AZ_BATCH_TASK_WORKING_DIR
AZ_BATCH_TASK_RESERVED_EPHEMERAL_DISK_SPACE_BYTES Bieżący próg miejsca na dysku, na którym maszyna wirtualna zostanie oznaczona jako DiskFull. Wszystkie zadania. 1000000
CCP_NODES Lista węzłów i liczby rdzeni na węzeł przydzielonych do zadania z wieloma wystąpieniami. Węzły i rdzenie są wyświetlane w formacie numNodes<space>node1IP<space>node1Cores<space>
node2IP<space>node2Cores<space> ..., gdzie po liczbie węzłów następuje jeden lub więcej adresów IP węzłów oraz liczba rdzeni dla każdego.
Podzadania podstawowe i podrzędne z wieloma wystąpieniami. 2 10.0.0.4 1 10.0.0.5 1

Ważne

Dokładne wartości ścieżek zmiennych środowiskowych są uznawane za szczegóły implementacji i mogą ulec zmianie. Użyj zmiennych środowiskowych dostarczonych przez Batch, zamiast próbować konstruować surowe reprezentacje ścieżek.

W poniższej tabeli przedstawiono wartości postfiksu każdej zmiennej środowiskowej po wartości AZ_BATCH_NODE_ROOT_DIR, zobacz AZ_BATCH_NODE_ROOT_DIR , aby uzyskać więcej informacji.

Nazwa zmiennej środowiskowej Wpis katalogu wartości zmiennej środowiskowej
AZ_BATCH_NODE_STARTUP_DIR startup
AZ_BATCH_NODE_SHARED_DIR shared
AZ_BATCH_NODE_MOUNTS_DIR fsmounts

Katalogi zadań różnią się między zadaniem pojedynczego uruchomienia i harmonogramem zadań. W poniższej tabeli określono wartości katalogu zadań w ramach zadania jednobiegowego i harmonogramu zadań.

Typ zadania Postfiks wartości katalogu zadań po AZ_BATCH_NODE_ROOT_DIR
Zadanie workitems\{job name}\job-1
Harmonogram zadań workitems\{job schedule name}\{job name}

W poniższej tabeli określono wartości każdej wartości zmiennej środowiskowej postfix po katalogu zadań.

Nazwa zmiennej środowiskowej Katalog wartości zmiennej środowiskowej dodany po katalogu zadań
AZ_BATCH_TASK_WORKING_DIR {task name}\wd
AZ_BATCH_TASK_DIR {task name}
AZ_BATCH_TASK_SHARED_DIR {task name}
AZ_BATCH_JOB_PREP_DIR {job prepration task name}
KATALOG_PRZYGOTOWAWCZY_PRACY_AZ_BATCH {job prepration task name}\wd

Następne kroki