Freigeben über


StartTask interface

In einigen Fällen kann die Startaufgabe erneut ausgeführt werden, obwohl der Knoten nicht neu gestartet wurde. Aus diesem Grund sollten Startaufgaben idempotent sein und ordnungsgemäß beendet werden, wenn das setup, das sie ausführen, bereits abgeschlossen wurde. Es sollte besonders darauf geachtet werden, Startaufgaben zu vermeiden, die einen Unterbrechungsprozess erstellen oder Dienste aus dem Arbeitsverzeichnis der Startaufgabe installieren/starten, da dies verhindert, dass Batch den Starttask erneut ausführen kann.

Eigenschaften

commandLine

Die Befehlszeile wird nicht unter einer Shell ausgeführt und kann daher keine Shellfeatures wie die Erweiterung von Umgebungsvariablen nutzen. Wenn Sie solche Features nutzen möchten, sollten Sie die Shell in der Befehlszeile aufrufen, z. B. mit "cmd /c MyCommand" in Windows oder "/bin/sh -c MyCommand" unter Linux. Erforderlich, wenn andere Eigenschaften von startTask angegeben werden.

containerSettings

Wenn dies angegeben ist, werden alle Verzeichnisse unter dem AZ_BATCH_NODE_ROOT_DIR (dem Stammverzeichnis der Azure Batch Verzeichnisse auf dem Knoten) rekursiv dem Container zugeordnet, alle Aufgabenumgebungsvariablen werden dem Container zugeordnet, und die Taskbefehlszeile wird im Container ausgeführt.

environmentSettings

Eine Liste der Umgebungsvariableneinstellungen für die Startaufgabe.

maxTaskRetryCount

Der Batch-Dienst wiederholt einen Task, wenn sein Exitcode ungleich null ist. Beachten Sie, dass dieser Wert die Anzahl der Wiederholungen ausdrücklich steuert. Der Batch-Dienst wiederholt den Task einmal und kann ihn anschließend bis zu diesem Grenzwert wiederholen. Wenn die maximale Wiederholungsanzahl beispielsweise 3 beträgt, versucht Batch die Aufgabe bis zu 4 Mal (ein erster Versuch und drei Wiederholungen). Wenn die maximale Wiederholungsanzahl 0 beträgt, wird der Batch-Dienst die Aufgabe nicht wiederholen. Wenn die maximale Wiederholungsanzahl -1 beträgt, wiederholt der Batch-Dienst die Aufgabe ohne Beschränkung. Der Standardwert ist 0.

resourceFiles

Eine Liste der Dateien, die vom Batch-Dienst auf den Computeknoten heruntergeladen werden, bevor die Befehlszeile ausgeführt wird.

userIdentity

Wenn diese Angabe ausgelassen wird, wird der Task als nicht administrativer Benutzer ausgeführt, der für die Aufgabe eindeutig ist.

waitForSuccess

Wenn true und der Starttask auf einem Computeknoten fehlschlägt, führt der Batch-Dienst den Starttask bis zu seiner maximalen Wiederholungsanzahl (maxTaskRetryCount) erneut aus. Wenn der Task nach allen Wiederholungen immer noch nicht erfolgreich abgeschlossen wurde, markiert der Batch-Dienst den Computeknoten als unbrauchbar und plant keine Aufgaben dafür. Diese Bedingung kann über den Knotenzustand und das Planungsfehlerdetails erkannt werden. Bei "false" wartet der Batch-Dienst nicht auf den Abschluss der Startaufgabe. In diesem Fall können andere Aufgaben auf dem Computeknoten ausgeführt werden, während der Starttask noch ausgeführt wird. Und selbst wenn der Starttask fehlschlägt, werden weiterhin neue Aufgaben auf dem Knoten geplant. Der Standardwert ist „true“.

Details zur Eigenschaft

commandLine

Die Befehlszeile wird nicht unter einer Shell ausgeführt und kann daher keine Shellfeatures wie die Erweiterung von Umgebungsvariablen nutzen. Wenn Sie solche Features nutzen möchten, sollten Sie die Shell in der Befehlszeile aufrufen, z. B. mit "cmd /c MyCommand" in Windows oder "/bin/sh -c MyCommand" unter Linux. Erforderlich, wenn andere Eigenschaften von startTask angegeben werden.

commandLine?: string

Eigenschaftswert

string

containerSettings

Wenn dies angegeben ist, werden alle Verzeichnisse unter dem AZ_BATCH_NODE_ROOT_DIR (dem Stammverzeichnis der Azure Batch Verzeichnisse auf dem Knoten) rekursiv dem Container zugeordnet, alle Aufgabenumgebungsvariablen werden dem Container zugeordnet, und die Taskbefehlszeile wird im Container ausgeführt.

containerSettings?: TaskContainerSettings

Eigenschaftswert

environmentSettings

Eine Liste der Umgebungsvariableneinstellungen für die Startaufgabe.

environmentSettings?: EnvironmentSetting[]

Eigenschaftswert

maxTaskRetryCount

Der Batch-Dienst wiederholt einen Task, wenn sein Exitcode ungleich null ist. Beachten Sie, dass dieser Wert die Anzahl der Wiederholungen ausdrücklich steuert. Der Batch-Dienst wiederholt den Task einmal und kann ihn anschließend bis zu diesem Grenzwert wiederholen. Wenn die maximale Wiederholungsanzahl beispielsweise 3 beträgt, versucht Batch die Aufgabe bis zu 4 Mal (ein erster Versuch und drei Wiederholungen). Wenn die maximale Wiederholungsanzahl 0 beträgt, wird der Batch-Dienst die Aufgabe nicht wiederholen. Wenn die maximale Wiederholungsanzahl -1 beträgt, wiederholt der Batch-Dienst die Aufgabe ohne Beschränkung. Der Standardwert ist 0.

maxTaskRetryCount?: number

Eigenschaftswert

number

resourceFiles

Eine Liste der Dateien, die vom Batch-Dienst auf den Computeknoten heruntergeladen werden, bevor die Befehlszeile ausgeführt wird.

resourceFiles?: ResourceFile[]

Eigenschaftswert

userIdentity

Wenn diese Angabe ausgelassen wird, wird der Task als nicht administrativer Benutzer ausgeführt, der für die Aufgabe eindeutig ist.

userIdentity?: UserIdentity

Eigenschaftswert

waitForSuccess

Wenn true und der Starttask auf einem Computeknoten fehlschlägt, führt der Batch-Dienst den Starttask bis zu seiner maximalen Wiederholungsanzahl (maxTaskRetryCount) erneut aus. Wenn der Task nach allen Wiederholungen immer noch nicht erfolgreich abgeschlossen wurde, markiert der Batch-Dienst den Computeknoten als unbrauchbar und plant keine Aufgaben dafür. Diese Bedingung kann über den Knotenzustand und das Planungsfehlerdetails erkannt werden. Bei "false" wartet der Batch-Dienst nicht auf den Abschluss der Startaufgabe. In diesem Fall können andere Aufgaben auf dem Computeknoten ausgeführt werden, während der Starttask noch ausgeführt wird. Und selbst wenn der Starttask fehlschlägt, werden weiterhin neue Aufgaben auf dem Knoten geplant. Der Standardwert ist „true“.

waitForSuccess?: boolean

Eigenschaftswert

boolean