Verwenden der vereinfachten Kommunikation mit Computeknoten

Ein Azure Batch-Pool enthält einen oder mehrere Serverknoten, die benutzerseitig angegebene Workloads in Form von Batch-Tasks ausführen. Um die Batch-Funktionalität und die Verwaltung der Batch-Poolinfrastruktur zu aktivieren, müssen Serverknoten mit dem Azure Batch-Dienst kommunizieren.

Batch unterstützt zwei Arten von Kommunikationsmodi:

  • Klassisch: Der Batch-Dienst initiiert die Kommunikation mit den Serverknoten.
  • Vereinfacht: Die Serverknoten initiieren die Kommunikation mit dem Batch-Dienst.

In diesem Artikel werden der Modus für die vereinfachte Kommunikation und die zugehörigen Anforderungen an die Netzwerkkonfiguration beschrieben.

Tipp

Die Informationen in diesem Dokument zu Netzwerkressourcen und -regeln wie NSGs gelten nicht für Batch-Pools ohne öffentliche IP-Adressen, die den privaten Endpunkt der Knotenverwaltung ohne ausgehenden Internetzugriff verwenden.

Warnung

Das klassische Kommunikationsmodell für Serverknoten wird am 31. März 2026 eingestellt und durch das vereinfachte Kommunikationsmodell ersetzt, das in diesem Dokument beschrieben wird. Weitere Informationen finden Sie im Migrationsleitfaden zum Kommunikationsmodus.

Unterstützte Regionen

Die vereinfachte Kommunikation von Serverknoten in Azure Batch ist zurzeit für die folgenden Regionen verfügbar:

  • Öffentlich: alle öffentlichen Regionen, in denen Batch vorhanden ist, mit Ausnahme von Westindien.
  • Behörden: USGov Arizona, USGov Virginia, USGov Texas.
  • China: alle Regionen in China, in denen Batch vorhanden ist, mit Ausnahme von „China, Norden 1“ und „China, Osten 1“.

Unterschiede zwischen dem klassischen und dem vereinfachten Modus

Der Modus für die vereinfachte Kommunikation von Serverknoten optimiert die Verwaltung der Batch-Poolinfrastruktur im Auftrag von Benutzern. Mit diesem Kommunikationsmodus reduzieren sich die Komplexität und der Umfang ein- und ausgehender Netzwerkverbindungen, die für Baselinevorgänge erforderlich sind.

Batch-Pools mit dem klassischen Kommunikationsmodus erfordern beim Erstellen eines Pools in einem virtuellen Netzwerk die folgenden Netzwerkregeln in Netzwerksicherheitsgruppen (NSGs), benutzerdefinierten Routen (User-Defined Routes, UDRs) und Firewalls:

  • Eingehend:

    • Zielports 29876, 29877 über TCP von BatchNodeManagement.<region>
  • Ausgehend:

    • Zielport 443 über TCP an Storage.<region>
    • Zielport 443 über TCP an BatchNodeManagement.<region> für bestimmte Workloads, die Kommunikation mit dem Batch-Dienst erfordern, z. B. Auftrags-Manager-Tasks

Batch-Pools mit dem vereinfachten Kommunikationsmodus benötigen nur ausgehenden Zugriff auf den Knotenverwaltungsendpunkt des Batch-Kontos (siehe Öffentliche Endpunkte für Batch-Konten). Sie erfordern die folgenden Netzwerkregeln in NSGs, UDRs und Firewalls:

  • Eingehend:

    • Ohne
  • Ausgehend:

    • Zielport 443 über ANY an BatchNodeManagement.<region>

Ausgehende Anforderungen für ein Batch-Konto können mithilfe der API zum Auflisten der Endpunkte ausgehender Netzwerkabhängigkeiten ermittelt werden. Diese API gibt den Basissatz von Abhängigkeiten abhängig vom Kommunikationsmodell des Batch-Kontopools an. Benutzerspezifische Workloads erfordern möglicherweise zusätzliche Regeln, z. B. das Öffnen von Datenverkehr an andere Azure-Ressourcen (wie Azure Storage für Anwendungspakete, Azure Container Registry) oder Endpunkte wie das Microsoft-Paketrepository für die Bereitstellungsfunktionalität für virtuelle Dateisysteme.

Vorteile des vereinfachten Modus

Azure Batch-Benutzer, die den vereinfachten Modus verwenden, profitieren von der Vereinfachung von Netzwerkverbindungen und -regeln. Die vereinfachte Kommunikation von Serverknoten trägt zur Verringerung von Sicherheitsrisiken bei, indem die Anforderung zum Öffnen von Ports für die eingehende Kommunikation aus dem Internet aufgehoben wird. Für den Basisbetrieb ist nur eine einzelne Ausgangsregel für ein bekanntes Diensttag erforderlich.

Der vereinfachte Modus bietet gegenüber dem klassischen Kommunikationsmodus auch eine differenzierte Steuerung der Datenexfiltration, da die ausgehende Kommunikation an Storage.<region> nicht mehr erforderlich ist. Sie können die ausgehende Kommunikation mit Azure Storage bei Bedarf für Ihren Workflow explizit sperren. Beispielsweise können Sie den Bereich Ihrer Regeln für die ausgehende Kommunikation auf Azure Storage festlegen, um Ihre AppPackage-Speicherkonten oder andere Speicherkonten für Ressourcendateien oder Ausgabedateien zu aktivieren.

Auch wenn Ihre Workloads derzeit nicht von den Änderungen betroffen sind (wie im nächsten Abschnitt beschrieben), wird empfohlen, zum vereinfachten Modus zu wechseln. Zukünftige Verbesserungen des Batch-Diensts sind möglicherweise nur mit einer vereinfachten Kommunikation der Serverknoten funktionsfähig.

Potenzielle Auswirkungen zwischen klassischen und vereinfachten Kommunikationsmodi

In vielen Fällen wirkt sich der vereinfachte Kommunikationsmodus nicht direkt auf Ihre Batch-Workloads aus. Die vereinfachte Kommunikation von Computeknoten hat jedoch in den folgenden Fällen Auswirkungen:

  • Benutzer, die ein virtuelles Netzwerk als Teil der Erstellung eines Batchpools angeben und eine oder beide der folgenden Aktionen ausführen:
    • Deaktivieren Sie explizit Regeln für ausgehenden Netzwerkdatenverkehr, die mit der vereinfachten Kommunikation von Serverknoten nicht kompatibel sind.
    • Verwenden Sie UDRs und Firewallregeln, die mit der vereinfachten Kommunikation von Serverknoten nicht kompatibel sind.
  • Benutzer, die Softwarefirewalls auf Serverknoten aktivieren und ausgehenden Datenverkehr explizit in Softwarefirewallregeln deaktivieren, die mit der vereinfachten Kommunikation von Serverknoten nicht kompatibel sind.

Wenn einer dieser Fälle für Sie gilt, führen Sie die im nächsten Abschnitt beschriebenen Schritte aus, um sicherzustellen, dass Ihre Batch-Workloads weiterhin mit dem vereinfachten Modus funktionieren. Es wird dringend empfohlen, zuerst alle Änderungen in einer Entwicklungs- und Testumgebung zu testen und zu überprüfen, bevor Sie Ihre Änderungen in die Produktion übertragen.

Erforderliche Netzwerkkonfigurationsänderungen für den vereinfachten Modus

Für die Migration zum neuen Kommunikationsmodus müssen die folgenden Schritte ausgeführt werden:

  1. Stellen Sie sicher, dass Ihre Netzwerkkonfiguration für Batch-Pools (NSGs, UDRs, Firewalls usw.) eine Vereinigung der Modi umfasst (d. h. die kombinierten Netzwerkregeln der klassischen und vereinfachten Modi). Mindestens die folgenden Regeln wären:
    • Eingehend:
      • Zielports 29876, 29877 über TCP von BatchNodeManagement.<region>
    • Ausgehend:
      • Zielport 443 über TCP an Storage.<region>
      • Zielport 443 über ANY an BatchNodeManagement.<region>
  2. Wenn Ihr Workflow andere Szenarien für ein- oder ausgehenden Datenverkehr erfordert, müssen Sie sicherstellen, dass Ihre Regeln diese Anforderungen erfüllen.
  3. Verwenden Sie eine der folgenden Optionen, um Ihre Workloads für die Verwendung des neuen Kommunikationsmodus zu aktualisieren.
    • Erstellen Sie neue Pools, bei denen targetNodeCommunicationMode auf vereinfacht festgelegt ist, und überprüfen Sie, ob die neuen Pools ordnungsgemäß funktionieren. Migrieren Sie Ihre Workload zu den neuen Pools, und löschen Sie alle älteren Pools.
    • Aktualisieren Sie die Eigenschaft targetNodeCommunicationMode von vorhandenes Pool auf vereinfacht, ändern Sie die Größe aller vorhandenen Pools auf null Knoten, und skalieren Sie sie dann wieder hoch.
  4. Verwenden Sie die Get Pool- oder die List Pool-API oder das Azure-Portal, um zu bestätigen, dass currentNodeCommunicationMode auf den gewünschten Kommunikationsmodus vereinfacht festgelegt ist.
  5. Ändern Sie alle anwendbaren Netzwerkkonfigurationen auf die vereinfachten Kommunikationsregeln, mindestens (beachten Sie alle zusätzlichen Regeln, die wie oben beschrieben erforderlich sind):
    • Eingehend:
      • Keine
    • Ausgehend:
      • Zielport 443 über ANY an BatchNodeManagement.<region>

Wenn Sie diese Schritte ausführen, später aber zum klassischen Kommunikationsmodus der Serverknoten zurückkehren möchten, müssen Sie wie folgt vorgehen:

  1. Stellen Sie alle Netzwerkkonfigurationen wieder her, die ausschließlich im vereinfachten Kommunikationsmodus der Serverknoten ausgeführt werden.
  2. Erstellen Sie neue Pools, oder aktualisieren Sie die Eigenschaft targetNodeCommunicationMode vorhandener Pools auf klassisch.
  3. Migrieren Sie Ihre Workload zu diesen Pools, oder ändern Sie die Größe vorhandener Pools, und skalieren Sie sie wieder auf (siehe Schritt 3 oben).
  4. Vergewissern Sie sich mit Schritt 4 oben, dass Ihre Pools im Kommunikationsmodus klassisch betrieben werden.
  5. Optional können Sie Ihre Netzwerkkonfiguration wiederherstellen.

Angeben des Kommunikationsmodus in einem Batch-Pool

Mit der Eigenschaft targetNodeCommunicationMode für Batch-Pools können Sie eine Einstellung für den Batch-Dienst festlegen, die angibt, welcher Kommunikationsmodus zwischen Batch-Dienst und Serverknoten verwendet werden soll. Im Folgenden sind die zulässigen Optionen für diese Eigenschaft aufgeführt:

  • Klassisch: Der Pool wird mithilfe des klassischen Kommunikationsmodus von Serverknoten erstellt.
  • Vereinfacht: Der Pool wird mithilfe des vereinfachten Kommunikationsmodus von Serverknoten erstellt.
  • Standard: Der Batch-Dienst kann den geeigneten Kommunikationsmodus für Serverknoten auswählen. Für Pools ohne virtuelles Netzwerk kann der Pool im klassischen oder im vereinfachten Modus erstellt werden. Bei Pools mit einem virtuellen Netzwerk verwendet der Pool bis zum 30. September 2024 standardmäßig immer den klassischen Modus. Weitere Informationen finden Sie im Migrationsleitfaden zum klassischen Kommunikationsmodus von Computeknoten.

Tipp

Die Angabe des Kommunikationsmodus für den Zielknoten ist eine Voreinstellung für den Batch-Dienst, aber keine Garantie, dass sie berücksichtigt wird. Bestimmte Konfigurationen im Pool können verhindern, dass der Batch-Dienst den angegebenen Kommunikationsmodus für den Zielknoten berücksichtigt, z. B. Interaktion ohne öffentliche IP-Adresse, virtuelle Netzwerke und Poolkonfigurationstyp.

Im Folgenden finden Sie Beispiele für das Erstellen eines Batch-Pools mit dem vereinfachten Kommunikationsmodus von Serverknoten.

Azure-Portal

Melden Sie sich zuerst am Azure-Portal an. Navigieren Sie zum Blatt Pools Ihres Batch-Kontos, und wählen Sie die Schaltfläche Hinzufügen aus. Unter OPTIONALE EINSTELLUNGEN können Sie Vereinfacht als Option aus dem Pulldown für Knotenkommunikationsmodus auswählen, wie gezeigt:

Screenshot that shows creating a pool with simplified mode.

Um einen vorhandenen Pool auf den vereinfachten Kommunikationsmodus zu aktualisieren, navigieren Sie zum Blatt Pools Ihres Batch-Kontos, und wählen Sie den Pool aus, den Sie aktualisieren möchten. Wählen Sie im linken Navigationsbereich Knotenkommunikationsmodus aus. Dort können Sie einen neuen Kommunikationsmodus für Zielknoten auswählen, wie unten gezeigt. Nachdem Sie den entsprechenden Kommunikationsmodus ausgewählt haben, wählen Sie die Schaltfläche Speichern aus, um die Aktualisierung durchzuführen. Sie müssen den Pool zuerst auf null Knoten herunterskalieren und dann wieder hochskalieren, damit die Änderung wirksam wird, sofern die Bedingungen dies zulassen.

Screenshot that shows updating a pool to simplified mode.

Um den aktuellen Knotenkommunikationsmodus für einen Pool anzuzeigen, navigieren Sie zum Blatt Pools Ihres Batch-Kontos, und wählen Sie den Pool aus, den Sie anzeigen möchten. Wählen Sie im linken Navigationsbereich Eigenschaften aus, und der Kommunikationsmodus des Poolknotens wird im Abschnitt Allgemein angezeigt.

Screenshot that shows properties with a pool with simplified mode.

REST-API

In diesem Beispiel wird gezeigt, wie Sie mithilfe der Batch-Dienste-REST-API einen Pool mit vereinfachter Kommunikation von Serverknoten erstellen.

POST {batchURL}/pools?api-version=2022-10-01.16.0
client-request-id: 00000000-0000-0000-0000-000000000000

Anforderungstext

"pool": {
     "id": "pool-simplified",
     "vmSize": "standard_d2s_v3",
     "virtualMachineConfiguration": {
          "imageReference": {
               "publisher": "Canonical",
               "offer": "0001-com-ubuntu-server-jammy",
               "sku": "22_04-lts"
          },
          "nodeAgentSKUId": "batch.node.ubuntu 22.04"
     },
     "resizeTimeout": "PT15M",
     "targetDedicatedNodes": 2,
     "targetLowPriorityNodes": 0,
     "taskSlotsPerNode": 1,
     "taskSchedulingPolicy": {
          "nodeFillType": "spread"
     },
     "enableAutoScale": false,
     "enableInterNodeCommunication": false,
     "targetNodeCommunicationMode": "simplified"
}

Einschränkungen

Im Folgenden finden Sie bekannte Einschränkungen des vereinfachten Kommunikationsmodus:

  • Eingeschränkte Migrationsunterstützung für zuvor erstellte Pools ohne öffentliche IP-Adressen. Diese Pools können nur migriert werden, wenn sie in einem virtuellen Netzwerk erstellt wurden; andernfalls verwenden sie selbst dann keine vereinfachte Kommunikation von Serverknoten, wenn diese im Pool angegeben wird. Weitere Informationen finden Sie im Migrationshandbuch.
  • Clouddienstkonfigurations-Pools werden derzeit für die vereinfachte Kommunikation von Serverknoten nicht unterstützt und gelten als veraltet. Die Angabe eines Kommunikationsmodus für diese Arten von Pools wird nicht berücksichtigt und führt immer zum klassischen Kommunikationsmodus. Es wird empfohlen, die VM-Konfiguration für Ihre Batch-Pools zu verwenden. Weitere Informationen finden Sie unter Migrieren der Batch-Poolkonfiguration von Cloud Services zu Virtual Machines.

Nächste Schritte