Apache Flink Anwendungsmodus-Cluster auf HDInsight auf AKS
Wichtig
Azure HDInsight auf AKS wurde am 31. Januar 2025 eingestellt. Erfahren Sie mehr mit dieser Ankündigung.
Sie müssen Ihre Workloads zu Microsoft Fabric oder ein gleichwertiges Azure-Produkt migrieren, um eine abrupte Beendigung Ihrer Workloads zu vermeiden.
Wichtig
Dieses Feature befindet sich derzeit in der Vorschau. Die zusätzlichen Nutzungsbedingungen für Microsoft Azure Previews weitere rechtliche Bestimmungen enthalten, die für Azure-Features gelten, die in der Betaversion, in der Vorschau oder auf andere Weise noch nicht in die allgemeine Verfügbarkeit veröffentlicht werden. Informationen zu dieser spezifischen Vorschau finden Sie unter Azure HDInsight auf AKS-Vorschauinformationen. Für Fragen oder Vorschläge für Funktionen senden Sie bitte eine Anfrage bei AskHDInsight einschließlich der Details und folgen Sie uns für weitere Updates zur Azure HDInsight Community.
HDInsight auf AKS bietet jetzt einen Flink Application Mode Cluster. Mit diesem Cluster können Sie den Lebenszyklus des Cluster-Flink-Anwendungsmodus mithilfe des Azure-Portals mit benutzerfreundlichen Schnittstellen und Azure Resource Management Rest-APIs verwalten. Anwendungsmoduscluster sind so konzipiert, dass große und langfristige Aufträge mit dedizierten Ressourcen unterstützt und ressourcenintensive oder umfangreiche Datenverarbeitungsaufgaben verarbeitet werden.
Mit diesem Bereitstellungsmodus können Sie dedizierte Ressourcen für bestimmte Flink-Anwendungen zuweisen, um sicherzustellen, dass sie über genügend Rechenleistung und genügend Arbeitsspeicher verfügen, um große Workloads effizient zu verarbeiten.
Vorteile
Vereinfachte Clusterbereitstellung mit Job-JAR-Datei.
Benutzerfreundliche REST-API: HDInsight auf AKS bietet benutzerfreundliche ARM Rest-APIs zum Verwalten des App-Modus-Auftragsvorgangs wie Update, Savepoint, Cancel, Delete.
Einfache Verwaltung von Auftragsupdates und Zustandsverwaltung: Die systemeigene Azure-Portalintegration bietet eine problemlose Oberfläche zum Aktualisieren von Aufträgen und zum Wiederherstellen des letzten gespeicherten Zustands (Savepoint). Diese Funktionalität stellt die Kontinuität und Die Datenintegrität während des gesamten Auftragslebenszyklus sicher.
Automatisieren Sie Flink-Jobs mithilfe von Azure Pipelines oder anderen CI/CD-Tools: Mithilfe von HDInsight auf AKS haben Flink-Benutzer Zugriff auf benutzerfreundliche ARM-Rest-API, können Sie Flink-Auftragsvorgänge nahtlos in Ihre Azure-Pipeline oder andere CI/CD-Tools integrieren.
Wichtige Features
Beenden und Starten von Aufträgen mit Savepoints: Benutzer können ihre Flink AppMode-Aufträge ordnungsgemäß beenden und von ihrem vorherigen Status (Savepoint) starten. Savepoints stellen sicher, dass der Auftragsfortschritt erhalten bleibt, sodass nahtlose Wiederaufnahme möglich ist.
Auftragsaktualisierungen: Der Benutzer kann den laufenden AppMode-Auftrag aktualisieren, nachdem die Jar-Datei auf dem Speicherkonto aktualisiert wurde. Dieses Update übernimmt automatisch den Savepoint und startet den AppMode-Job mit einem neuen JAR.
Statuslose Updates: Das Ausführen eines neuen Neustarts für einen AppMode-Auftrag wird durch zustandslose Updates vereinfacht. Mit dieser Funktion können Benutzer einen fehlerfreien Neustart mit einer aktualisierten Job Jar initiieren.
Savepoint-Verwaltung: Benutzer können jederzeit Speicherpunkte für ihre laufenden Aufgaben erstellen. Diese Speicherpunkte können aufgelistet und verwendet werden, um den Auftrag bei Bedarf von einem bestimmten Checkpoint neu zu starten.
Abbrechen: Bricht den Auftrag dauerhaft ab.
Löschen: AppMode-Cluster löschen.
Erstellen eines Flink-Anwendungsclusters
Voraussetzungen
Füllen Sie die Voraussetzungen in den folgenden Abschnitten aus:
Job-Jar-Datei im Speicherkonto hinzufügen.
Bevor Sie einen Flink App Mode Cluster einrichten, sind mehrere vorbereitende Schritte erforderlich. Einer dieser Schritte umfasst das Platzieren des App-Modus-Auftrags JAR im Speicherkonto des Clusters.
Erstellen Eines Verzeichnisses für den App-Modus-Auftrag JAR:
Erstellen Sie in den dedizierten Containern ein Verzeichnis, in dem Sie die Jar-Datei für den App-Modus hochladen. Dieses Verzeichnis dient als Speicherort zum Speichern von JAR-Dateien, die Sie in den Klassenpfad des Flink-Clusters oder -Auftrags aufnehmen möchten.
Savepoints-Verzeichnis (Optional)
Wenn Benutzer beabsichtigen, während der Ausführung des Auftrags Speicherpunkte zu erstellen, sollten sie ein separates Verzeichnis innerhalb des Speicherkontos erstellen, um diese Speicherpunkte zu speichern. Dieses Verzeichnis wurde zum Speichern von Prüfpunktdaten und Metadaten für Speicherpunkte verwendet.
Beispielverzeichnisstruktur:
Cluster im Flink-App-Modus erstellen
Flink AppMode-Cluster können erstellt werden, nachdem die Bereitstellung des Clusterpools abgeschlossen ist. Lassen Sie uns die Schritte für den Fall ausführen, dass Sie mit einem vorhandenen Clusterpool beginnen.
Geben Sie im Azure-Portal "HDInsight-Clusterpools/HDInsight/HDInsight auf AKS" ein und wählen Sie "Azure HDInsight auf AKS-Clusterpools" aus, um zur Seite der Clusterpools zu gelangen. Wählen Sie auf der Seite "HDInsight auf AKS-Clusterpools" den Clusterpool aus, in dem Sie einen neuen Flink-Cluster erstellen möchten.
Klicken Sie auf der Seite für einen bestimmten Clusterpool auf +Neuer Cluster, und geben Sie die folgenden Informationen an:
Eigentum Beschreibung Abonnement Dieses Feld wird automatisch mit dem Azure-Abonnement aufgefüllt, das für den Clusterpool registriert wurde. Ressourcengruppe Dieses Feld wird automatisch aufgefüllt und zeigt die Ressourcengruppe im Clusterpool an. Region Dieses Feld wird automatisch aufgefüllt und zeigt die region an, die im Clusterpool ausgewählt ist. Clusterpool Dieses Feld wird automatisch aufgefüllt und zeigt den Clusterpoolnamen an, auf dem der Cluster jetzt erstellt wird. Um einen Cluster in einem anderen Pool zu erstellen, suchen Sie den Clusterpool im Portal, und klicken Sie auf +Neuer Cluster. HDInsight auf AKS Pool Version Dieses Feld wird automatisch aufgefüllt und zeigt die Clusterpoolversion an, auf der der Cluster jetzt erstellt wird. HDInsight in der AKS-Version Wählen Sie die Neben- oder Patchversion des HDInsight auf AKS des neuen Clusters aus. Clustertyp Wählen Sie in der Dropdownliste Flink aus. Clustername Geben Sie den Namen des neuen Clusters ein. Vom Benutzer zugewiesene verwaltete Identität Wählen Sie in der Dropdownliste die verwaltete Identität aus, die mit dem Cluster verwendet werden soll. Wenn Sie der Besitzer der Managed Service Identity (MSI) sind und die MSI nicht über die Rolle "Managed Identity Operator" im Cluster verfügt, klicken Sie auf den Link unterhalb des Felds, um die für den AKS-Agentpool-MSI erforderliche Berechtigung zuzuweisen. Wenn die MSI bereits über die richtigen Berechtigungen verfügt, wird kein Link angezeigt. Siehe die Voraussetzungen für andere Rollenzuweisungen, die für die MSI erforderlich sind. Speicherkonto Wählen Sie in der Dropdownliste das Speicherkonto aus, das dem Flink-Cluster zugeordnet werden soll, und geben Sie den Containernamen an. Die verwaltete Identität erhält Zugriff auf das angegebene Speicherkonto, wobei während der Clustererstellung die Rolle "Speicher-Blob-Datenbesitzer" verwendet wird. Virtuelles Netzwerk Das virtuelle Netzwerk für den Cluster. Subnetz Das virtuelle Subnetz für den Cluster. Aktivieren des Hive-Katalogs für Flink SQL:
Eigentum Beschreibung Verwenden des Hive-Katalogs Aktivieren Sie diese Option, um einen externen Hive-Metaspeicher zu verwenden. SQL-Datenbank für Hive Wählen Sie die SQL-Datenbank aus der Dropdownliste aus, in der Hive-Metastore-Tabellen hinzugefügt werden sollen. SQL-Administratorbenutzername Geben Sie den Benutzernamen des SQL Server-Administrators ein. Dieses Konto wird vom Metastore verwendet, um mit der SQL-Datenbank zu kommunizieren. Schlüsseltresor Wählen Sie in der Dropdownliste den Schlüsseltresor aus, der einen geheimen Schlüssel mit Kennwort für den Benutzernamen des SQL Server-Administrators enthält. Sie müssen eine Zugriffsrichtlinie mit allen erforderlichen Berechtigungen wie Schlüsselberechtigungen, geheimen Berechtigungen und Zertifikatberechtigungen für die MSI einrichten, die für die Clustererstellung verwendet wird. Die MSI benötigt die Rolle eines Administrator für Schlüssel-Tresore. Fügen Sie die erforderlichen Berechtigungen mithilfe von IAM hinzu. SQL-Passwort-Geheimnisname Geben Sie den geheimen Namen aus dem Key Vault ein, in dem das SQL-Datenbankkennwort gespeichert ist. Anmerkung
Standardmäßig verwenden wir das Speicherkonto für den Hive-Katalog genauso wie das Speicherkonto und den Container, das während der Clustererstellung verwendet wird.
Wählen Sie "Weiter: Konfiguration" aus, um fortzufahren.
Geben Sie auf der Seite "Konfiguration" die folgenden Informationen an:
Eigentum Beschreibung Knotengröße Wählen Sie die Knotengröße aus, die sowohl für die Flink-Knoten als auch für Arbeitsknoten verwendet werden soll. Anzahl der Knoten Wählen Sie die Anzahl der Knoten für den Flink-Cluster aus. Standardmäßig sind Kopfknoten zwei. Die Dimensionierung der Arbeitsknoten hilft bei der Bestimmung der Task-Manager-Konfigurationen für Flink. Der Job-Manager und die Verlaufsserver befinden sich auf Hauptknoten. Wählen Sie im Abschnitt "Bereitstellung" den Bereitstellungstyp als Anwendungsmodus aus, die folgenden Informationen bereitstellen:
Eigentum Beschreibung JAR-Pfad Geben Sie den ABFS-Pfad (Storage) für Ihr Job-JAR an. Beispiel: abfs://flink@teststorage.dfs.core.windows.net/appmode/job.jar
Einstiegsklasse (Optional) Hauptklasse für Ihren Anwendungsmodus-Cluster. Beispiel: com.microsoft.testjob Args (Optional) Argument für die Hauptklasse Ihres Jobs. Name des Speicherpunkts Name des alten Speicherpunkts, den Sie nutzen möchten, um den Auftrag auszuführen Upgrade-Modus Wählen Sie die Standardoption "Upgrade" aus. Diese Option wird verwendet, wenn das Upgrade der Hauptversion für den Cluster erfolgt. Es stehen drei Optionen zur Verfügung. UPDATE: Wird verwendet, wenn ein Benutzer nach einem Upgrade vom letzten Speicherpunkt zurückkehren möchte. STATELESS_UPDATE: Wird verwendet, wenn ein Benutzer nach dem Upgrade einen frischen Neustart für den Job wünscht. LAST_STATE_UPDATE: Wird verwendet, wenn ein Benutzer den Auftrag nach dem Upgrade vom letzten Prüfpunkt wiederherstellen möchte. Konfiguration des Flink-Auftrags Fügen Sie zusätzliche Konfigurationen hinzu, die für den Flink-Auftrag erforderlich sind. Wählen Sie "Auftragsprotokollaggregation" aus. Aktivieren Sie das Kontrollkästchen, wenn Sie Ihr Auftragsprotokoll in den Remotespeicher hochladen möchten. Es hilft beim Debuggen der Auftragsprobleme. Der Standardspeicherort für das Jobprotokoll ist "StorageAccount/Container/DeploymentId/logs". Sie können das Standardprotokollverzeichnis ändern, indem Sie "pipeline.remote.log.dir" konfigurieren. Das Standardintervall für die Protokollsammlung beträgt 600 Sekunden. Benutzer können das Intervall ändern, indem sie "pipeline.log.aggregation.interval" konfigurieren.
Geben Sie im Abschnitt "Dienstkonfiguration" die folgenden Informationen an:
Eigentum Beschreibung Task-Manager-CPU Ganze Zahl. Geben Sie die Größe der Task-Manager-CPUs (in Kernen) ein. Speicher des Task-Managers in MB Geben Sie die Speichergröße des Task-Managers in MB ein. Mindestens 1.800 MB. Auftrags-Manager CPU Ganze Zahl. Geben Sie die Anzahl der CPUs für den Job-Manager (in Kernen) ein. Job-Manager-Speicher in MB Geben Sie die Arbeitsspeichergröße in MB ein. Mindestens 1.800 MB. CPU des Verlaufsservers Ganze Zahl. Geben Sie die Anzahl der CPUs für den Job-Manager (in Kernen) ein. Historienserver-Speicher in MB Geben Sie die Arbeitsspeichergröße in MB ein. Mindestens 1.800 MB. Klicken Sie auf "Weiter": Schaltfläche "Integration", um mit der nächsten Seite fortzufahren.
Geben Sie auf der Seite "Integration" die folgenden Informationen an:
Eigentum Beschreibung Protokollanalyse Dieses Feature ist nur verfügbar, nachdem der Log Analytics-Arbeitsbereich mit dem zugeordneten Cluster-Pool aktiviert wurde. Sobald dies der Fall ist, können die zu sammelnden Protokolle ausgewählt werden. Azure Prometheus Dieses Feature besteht darin, Insights und Protokolle direkt in Ihrem Cluster anzuzeigen, indem Metriken und Protokolle an den Azure Monitor-Arbeitsbereich gesendet werden. Klicken Sie auf die Schaltfläche "Weiter: Tags", um mit der nächsten Seite fortzufahren.
Geben Sie auf der Seite "Tags" die folgenden Informationen an:
Eigentum Beschreibung Name Wahlfrei. Geben Sie einen Namen wie HDInsight auf AKS ein, um einfach alle Ressourcen zu identifizieren, die Ihren Clusterressourcen zugeordnet sind. Wert Sie können diesen Wert leer lassen. Ressource Wählen Sie "Alle Ressourcen" aus. Wählen Sie "Weiter" aus: Überprüfen + Erstellen, um den Vorgang fortzusetzen.
Suchen Sie auf der Seite „Überprüfen + Erstellen“ nach der Nachricht „Validierung erfolgreich“ oben auf der Seite, und klicken Sie dann auf „Erstellen“.
Auf der Seite "Bereitstellung im Prozess" wird angezeigt, welcher Cluster erstellt wird. Es dauert 5 bis 10 Minuten, um den Cluster zu erstellen. Nachdem der Cluster erstellt wurde, wird die Meldung "Ihre Bereitstellung ist abgeschlossen" angezeigt. Wenn Sie von der Seite weg navigieren, können Sie Ihre Benachrichtigungen auf den aktuellen Status überprüfen.
Verwalten des Bewerbungsauftrags über das Portal
HDInsight AKS bietet Möglichkeiten zum Verwalten von Flink-Aufträgen. Sie können einen fehlgeschlagenen Auftrag neu starten. Starten Sie den Auftrag im Portal neu.
Um den Flink-Auftrag über das Portal auszuführen, wechseln Sie zu:
Portal > HDInsight im AKS-Cluster Pool > Flink Cluster > Settings > Flink-Jobs.
Stopp: Der Stoppauftrag erforderte keine Parameter. Der Benutzer kann den Auftrag beenden, indem er die Aktion auswählt. Sobald der Auftrag beendet wurde, wird der Auftragsstatus im Portal beendet.
Start: Startet den Auftrag vom Speicherpunkt. Um den Auftrag zu starten, wählen Sie den beendeten Auftrag aus, und starten Sie ihn.
Update: Aktualisieren hilft beim Neustart von Aufträgen mit aktualisiertem Auftragscode. Benutzer müssen das neueste Aufgabenpaket im Speicherort aktualisieren und die Aufgabe über das Portal aktualisieren. Mit dieser Aktion wird der Auftrag mit savepoint beendet und mit dem neuesten Jar erneut gestartet.
Zustandsloses Update: Zustandslos ist wie ein Update, aber es umfasst einen Neustart des Jobs mit dem neuesten Code. Sobald der Auftrag aktualisiert wurde, wird der Auftragsstatus im Portal als Ausgeführt angezeigt.
Speicherpunkt: Nehmen Sie den Speicherpunkt für den Flink-Auftrag.
Abbrechen: Job beenden.
Löschen: AppMode-Cluster löschen.
Auftragsdetails anzeigen: Um die Auftragsdetails einzusehen, kann der Benutzer auf den Auftragsnamen klicken; diese Aktion zeigt die Details des Auftrags und das Ergebnis der letzten Aktion an.
Bei einer fehlgeschlagenen Aktion gibt diese JSON-Ansicht detaillierte Ausnahmen und Gründe für den Fehler an.