Das Big Whale-Aufgabenplanungssystem ist ein von Meiyou Big Data entwickeltes verteiltes Rechenaufgabenplanungssystem. Es bietet DAG-Ausführungsplanung für Stapelverarbeitungsaufgaben wie Spark und Flink sowie Statusüberwachung und -planung für Stream-Verarbeitungsaufgaben. Anwendungserkennung mit großem Speicher und andere Funktionen. Der Dienst wurde auf Basis von Spring Boot 2.0 entwickelt und kann nach dem Packen ausgeführt werden.
Umweltvorbereitung
Java 1.8+
MySQL 5.1.0+
Installieren
1. Datenbank erstellen: Big-Whale
2. Führen Sie das Datenbankskript aus: big-whale.sql
3. Konfigurieren Sie das relevante Datenbankkontokennwort und die SMTP-Informationen entsprechend der Spring Boot-Umgebung.
4. Konfiguration: big-whale.properties
Beschreibung des Konfigurationselements
ssh.user: SSH-Remote-Login-Benutzername mit Skriptausführungsberechtigungen (die Plattform verwendet diesen Benutzer als einheitlichen Skriptausführungsbenutzer)
ssh.password: SSH-Remote-Login-Benutzerpasswort
dingding.enabled: Ob DingTalk-Benachrichtigungen aktiviert werden sollen
dingding.watcher-token: Robotertoken der öffentlichen Dingding-Gruppe
Yarn.app-memory-threshold: Speicherlimit für die Yarn-Anwendung (Einheit: MB), -1 deaktiviert die Erkennung
Yarn.app-white-list: Whitelist-Liste für Garnanwendungen (der von den Anwendungen in der Liste angeforderte Speicher überschreitet die Obergrenze und es wird kein Alarm ausgegeben)
5. Ändern Sie: $FLINK_HOME/bin/flink, Referenz: flink (da Flink beim Senden einer Aufgabe nur das lokale JAR-Paket lesen kann, ist es erforderlich, das JAR-Paket von HDFS herunterzuladen und den Pfadparameter des JAR-Pakets im Skript zu ersetzen, wenn Ausführen des Submit-Befehls.
6. Verpackung: MVN Clean Package
Start-up
1. Überprüfen Sie, ob Port 17070 belegt ist. Wenn ja, schließen Sie den belegten Prozess oder ändern Sie die Konfiguration der Projektportnummer und packen Sie ihn neu.
2. Kopieren Sie big-whale.jar in das Zielverzeichnis und führen Sie den Befehl aus: java -jar big-whale.jar
Erstkonfiguration
1. Öffnen Sie: http://localhost:17070
2. Geben Sie das Konto admin und das Passwort admin ein
3. Klicken Sie auf: Berechtigungsverwaltung -> Benutzerverwaltung und ändern Sie die E-Mail-Adresse des aktuellen Kontos in eine gültige und bestehende E-Mail-Adresse. Andernfalls kann die E-Mail nicht gesendet werden.
4. Cluster hinzufügen
Clusterverwaltung -> Clusterverwaltung -> Neu
„Garnverwaltungsadresse“ ist die WEB-UI-Adresse von Yarn ResourceManager
„Paketspeicherverzeichnis“ ist der Speicherpfad, wenn das Paket in den HDFS-Cluster hochgeladen wird, z. B.: /data/big-whale/storage
„Support Flink Task Proxy Users“, „Stream Processing Task Blacklist“ und „Batch Processing Task Blacklist“ sind intern angepasste Aufgabenzuweisungsregeln. Füllen Sie die Felder nicht aus.
5. Agent hinzufügen
Clusterverwaltung -> Agentenverwaltung -> Neu
Es können mehrere Instanzen hinzugefügt werden (es werden nur IP-Adressen unterstützt, es können Portnummern angegeben werden und der Standardwert ist 22). Wenn die Instanz nicht erreichbar ist, wird die nächste Instanz zur Ausführung ausgewählt zufällig ausgewählt. Die Ausführung schlägt fehl, wenn beide nicht erreichbar sind
Nach der Auswahl eines Clusters ist dieser einer der Agenten, der Spark- oder Flink-Aufgaben unter dem Cluster übermittelt.
6. Fügen Sie Clusterbenutzer hinzu
Clusterverwaltung -> Clusterbenutzer -> Hinzufügen
Die Semantik dieser Konfiguration lautet: Garnressourcenwarteschlange (--queue) und Proxy-Benutzer (--proxy-user), die Plattformbenutzer unter dem ausgewählten Cluster verwenden können.
7. Berechnungsrahmen hinzufügen
Clusterverwaltung -> Verwaltung -> Hinzufügen
Die Übermittlungsbefehle verschiedener Spark- oder Flink-Aufgaben im selben Cluster können unterschiedlich sein. Beispielsweise lautet der Übermittlungsbefehl von Spark 1.6.0 Spark-Submit und der Übermittlungsbefehl von Spark 2.1.0 Spark2-Submit.