Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die effektive Kapazitätsplanung trägt dazu bei, sicherzustellen, dass Ihre Azure Batch Workloads über die benötigten Rechenressourcen verfügen, wenn sie sie benötigen. In diesem Artikel wird erläutert, wie Batchkapazität strukturiert ist, wie Sie das Kontingent für Ihre Workloads planen und wie Sie das Risiko von Zuordnungsfehlern verringern.
Bei einem Kontingent handelt es sich um einen Grenzwert und nicht um eine Kapazitätsgarantie. Die Planung im Voraus hilft Ihnen, geeignete Kontingente anzufordern, robuste Konfigurationen auszuwählen und ordnungsgemäß zu reagieren, wenn die Kapazität eingeschränkt ist. Die spezifischen Standard- und Höchstwerte finden Sie unter Batchdienstkontingente und Grenzwerte.
Bestätigen Sie, dass Batch zu Ihrer Arbeitsbelastung passt
Nutzen Sie Batch, wenn Sie möchten, dass Azure Planung als Service bereitstellt, und Ihre Anwendung kann die Arbeit in Pools, Jobs und Aufgaben organisieren. Bevor Sie die Batch-Kapazität planen, sollten Sie diese Alternativen in Betracht ziehen:
- Wählen Sie Azure CycleCloud, wenn Sie einen bestimmten HPC-Scheduler betreiben, die Cluster-Topologie und den Software-Stack anpassen oder sich eng an bestehende On-Premises-Workflows anpassen müssen.
- Wählen Sie Azure CycleCloud Workspace für Slurm, wenn Sie eine einsatzbereite Slurm-Umgebung benötigen, bei der Netzwerk-, Speicher- und Zugriffskomponenten in Ihrem Abonnement bereitgestellt werden.
Wenn Batch das richtige Betriebsmodell ist, verwenden Sie die folgenden Abschnitte, um die Spitzennachfrage zu schätzen, VMs auszuwählen, Quoten zu berechnen und Rückfälle zu definieren, bevor Sie Produktionspools erstellen.
Kapazitätshierarchie
Die Batchkapazität wird auf mehreren Ebenen gesteuert, wobei jede Ebene die darunter liegende beschränkt. Ihre effektive Kapazität ist das, was die restriktivste Grenze in der Kette zulässt.
Oben stellt die region Azure die physische Rechenzentrumskapazität für jede VM-Familie zur Verfügung. Regionale Kapazität ist kein fester Wert, den Sie steuern; sie variiert im Laufe der Zeit und nach VM-Serie. Ihr Abonnementkontingent legt dann die zulässige Kerngrenze pro VM-Familie pro Region fest. Im Poolzuweisungsmodus für Benutzerabonnements werden diese Abonnementkontingente direkt auf Ihre Batch-Pools angewendet. Das Kontingent für das Batch-Konto bestimmt die Anzahl der Kerne, Pools und aktiven Aufträge, die pro Batch-Konto zulässig sind. Im Batchdienstpoolzuweisungsmodus gelten diese Kontingente auf Kontoebene. Schließlich schränken Poolbeschränkungen die Anzahl der Knoten pro Pool ein, basierend auf dem Kontingent über dem Pool und den vom Batchdienst festgelegten Grenzwerten für die Poolgröße .
Das Verständnis, welche Ebene für Ihr Konto gilt, hängt vom Poolzuweisungsmodus ab. Weitere Informationen finden Sie unter Batchkonten und Poolzuordnungsmodi.
Planen Der Kapazitätsanforderungen
Bevor Sie Produktionspools erstellen, schätzen Sie die Ressourcen, die Ihre Arbeitsauslastung benötigt. Führen Sie die folgenden Fragen durch, um Arbeitsauslastungsmerkmale in eine Kontingentanforderung zu übersetzen:
- Auslastungsprofil. Was ist die Spitzenanzahl gleichzeitiger Aufträge und Aufgaben? Was ist die durchschnittliche Vorgangsdauer und Speicheranforderung? Benötigen Aufgaben GPUs oder MULTI-Node (MPI)-Koordination?
- VM-Auswahl. Welche VM-Familie und -Größe stimmt am besten mit der Workload überein? Wie viele Kerne und wie viel Arbeitsspeicher bietet jede VM?
- Poolgröße. Wie viele Aufgaben werden gleichzeitig pro Knoten ausgeführt (bis zu vierMal die Anzahl der Knotenkerne, die auf 256 Aufgabenplätze pro Knoten begrenzt sind)? Wie viele Knoten benötigen Sie angesichts der Anzahl gleichzeitiger Spitzenaufgaben? Wie teilen Sie die Kapazität zwischen dedizierten und Spotknoten auf?
- Kontingentanforderung. Multiplizieren Sie die maximale Knotenanzahl mit den Kernen pro VM, um die erforderlichen Gesamtkerne zu erhalten. Vergleichen Sie diesen Gesamtwert mit Ihrem aktuellen Kontingent, um die zu beantragende Erhöhung zu ermitteln.
- Kostenschätzung. Verwenden Sie die stundenweise VM-Rate und die erwartete Laufzeit, um die täglichen und monatlichen Kosten zu schätzen. Weitere Informationen finden Sie unter "Planen der Verwaltung von Kosten für Azure Batch".
Informationen zum Überprüfen ihrer aktuellen Kontingente und zum Anfordern einer Erhöhung finden Sie unter Anzeigen von Batchkontingenten und Erhöhen eines Kontingents. Übermitteln Sie Kontingentanforderungen gut im Voraus, und beginnen Sie mit bescheidenen, inkrementellen Erhöhungen. Große Kontingenterhöhungen erfordern möglicherweise eine manuelle Überprüfung und können mehrere Tage bis zu mehreren Wochen dauern.
Proaktives Verwalten von Kapazitäten
Planen Sie die Kapazität, bevor sie zu einer Einschränkung wird:
- Überwachen sie die Kontingentnutzung. Verfolgen Sie die Kernnutzung anhand Ihres Kontingents und benachrichtigen Sie, wenn die Nutzung den Grenzwert anschreitet, z. B. bei 70 bis 80%. Weitere Informationen finden Sie unter Überwachen von Batchlösungen.
- Verwenden Sie die automatische Skalierung. Konfigurieren Sie die automatische Skalierung , damit Pools mit Bedarf wachsen und verkleinern, anstatt eine feste, überlastete Knotenanzahl zu halten. Ein gängiges Muster sieht eine Basis von dedizierten Knoten für garantierten Fortschritt und Ausweichvorgänge auf Spot-Knoten für zusätzlichen Durchsatz vor.
- Verteilt auf Regionen und Konten. Verteilen Sie Workloads über mehrere Regionen oder Batchkonten, um auf mehr aggregierte Kapazität zuzugreifen. Dienstkontingente wie aktive Aufträge und Pools gelten für jedes einzelne Batch-Konto.
Umgang mit Kapazitätsgrenzen
Selbst mit Planung können Allokierungsfehler auftreten. Entwerfen Sie Ihren Workflow so, dass er robust ist:
- Versuchen Sie es erneut, und diversifizieren Sie sie. Wenn ein Pool seine Zielgröße nicht erreichen kann, versuchen Sie es nach ein paar Minuten erneut, versuchen Sie es mit einer anderen VM-Größe, oder versuchen Sie es mit einer anderen Region. Die Ressourcenverfügbarkeit ändert sich im Laufe der Zeit.
- Neuzuweisung von Aufträgen. Vermeiden Sie die Verwendung eines einzelnen statischen Pools. Stellen Sie sicher, dass Sie Aufträge auf einen anderen Pool umstellen können, möglicherweise mit einer anderen VM-Größe, wenn ein Pool nicht wachsen kann. Weitere Informationen finden Sie unter Azure Batch bewährten Methoden.
- Planen Sie für Spot-Unterbrechungen.Spotknoten können verdrängt werden, wenn Azure die Kapazität wieder benötigt. Verwenden Sie Spotknoten nur für fehlertolerante Workloads, und kombinieren Sie sie mit dedizierten Knoten und der Autoskalierung, damit sich der Pool automatisch erholt.
Detaillierte Symptome, Ursachen und Lösungen für Zuordnungs- und Kontingentfehler finden Sie in den Anleitungen zur Problembehandlung:
- Pool- und Knotenfehler
- Fehler bei der Größenänderung des Azure Batch-Pools
- Fehler bei der Erstellung des Azure Batch-Pools
Fähigkeit vor der Produktion validieren
Führe einen Proof of Concept mit einem repräsentativen Job, dessen erwartetem Datenvolumen und der Produktionspool-Konfiguration durch. Genehmigen Sie das Design erst für die Produktion, wenn Sie für jedes Kriterium einen Nachweis dokumentieren können:
| Kriterium | Zu dokumentierende Nachweise |
|---|---|
| Workload-Erledigung | Der Auftrag wird mit Abhängigkeiten von Produktionsaufgaben, Anwendungspaketen sowie Eingabe- und Ausgabedatenpfaden ordnungsgemäß abgeschlossen. |
| Umfang und Quote | Der Pool erreicht die erforderliche Anzahl der Knoten in der vorgesehenen Region, ohne die Batch-Konto-, Abonnement- oder VM-Familienquote zu überschreiten. |
| Performance | Die Gesamtdauer des Jobs entspricht dem Zielwert, einschließlich Poolzuweisung, Datenübertragung, Rechenzeit und Persistierung der Ergebnisse. |
| Wiederherstellung | Nach einem Knotenverlust, einem Task-Ausfall oder einer Spot-Präemption, falls verwendet, bleibt der Job innerhalb der aufgezeichneten maximalen Wiederherstellungszeit und des erlaubten Checkpoint-Verlusts, erreicht die Abschlussfrist und nutzt erfolgreich die geplante Fallback-VM-Größe oder den Pool. |
| Cost | Die gemessenen Rechen-, Speicher-, Netzwerk- und Lizenzkosten pro abgeschlossener Auftrag entsprechen dem Ziel bei der erwarteten Laufzeit. |
| Vorgänge | Warnungen identifizieren Quotendruck, Allokationsfehler und fehlgeschlagene Aufgaben, und ein Eigentümer kann die Arbeitslast neu ausrichten oder wiederherstellen. |
Wenn ein Kriterium fehlschlägt, überarbeite die Poolgröße, VM-Auswahl, Speicherpfad, Wiederholungsverhalten oder regionalen Rückfallplan und wiederhole denselben Job. Ein kleiner Funktionstest stellt keine Produktionskapazität fest, weil er keine Spitzengröße, Quote oder Datenbewegung ausübt.
Optimale Verfahren
| Praxis | Description |
|---|---|
| Kontingent frühzeitig anfordern | Reichen Sie Kontingentanforderungen im Voraus gut ein; große Erhöhungen können mehrere Tage bis mehrere Wochen dauern. |
| Planen des Spielraums | Fordern Sie etwas mehr Kontingent als Ihren aktuellen Höchstwert an, um Wachstum zu ermöglichen. |
| Verwenden mehrerer Regionen | Verteilen Sie Workloads über Regionen hinweg, um auf mehr aggregierte Kapazität zuzugreifen. |
| Nutzung überwachen | Warnung, wenn die Kernnutzung 70 bis 80% Ihres Kontingents erreicht. |
| Virtuelle Maschinen richtig dimensionieren | Passen Sie die VM-Familie und die Größe an die Workload an, anstatt die Bereitstellung zu überlasten. |
| Kluges Verwenden von Spot | Reservieren Sie Spotknoten für fehlertolerante Workloads, und koppeln Sie sie mit dedizierten Knoten. |
| Bereinigen von Ressourcen | Löschen Sie ungenutzte Pools, um Kontokontingent freizugeben. |