Konfigurieren der Autoskalierung für Datenservices und Routen
Konfigurieren Sie Horizontale Pod-Autoskalierung (HPA) für die Ressource, die Datenservices und Routen in einer Dynamic Engine-Umgebung zugewiesen ist, wodurch sichergestellt wird, dass Datenservices und Routen große Datenverkehrs- oder Nachrichtenmengen verarbeiten können.
Vorbereitungen
- Die benutzerdefinierten Ressourcendefinitionen dynamic-engine-crd müssen mit dem Helm-Chart oci://ghcr.io/talend/helm/dynamic-engine-crd installiert worden sein. Führen Sie andernfalls die folgenden Befehle für die Installation aus:
- Suchen Sie die zu verwendende Diagrammversion:
- Führen Sie den folgenden Helm-Befehl aus:
helm show chart oci://ghcr.io/talend/helm/dynamic-engine-crd --version <engine_version> - Sehen Sie die Version direkt über Talend Management Console ein oder suchen Sie im Dynamic Engine Änderungs-Log nach der in Ihrer Dynamic Engine-Version enthaltenen Diagrammversion.
- Verwenden Sie einen API-Aufruf an den Dynamic Engine-Versionsendpunkt.
- Führen Sie den folgenden Helm-Befehl aus:
- Führen Sie den folgenden Befehl aus, um das Helm-Chart einer bestimmten Version zu installieren:Ersetzen Sie <helm_chart_version> durch die Chart-Version, die von Ihrer Dynamic Engine-Version unterstützt wird.
helm install dynamic-engine-crd oci://ghcr.io/talend/helm/dynamic-engine-crd --version <helm_chart_version>Wenn die Version nicht angegeben wird, installieren Sie die neueste verfügbare dynamic-engine-crd-Diagrammversion.
- Suchen Sie die zu verwendende Diagrammversion:
-
Ihre Dynamic Engine muss implementiert worden sein. Führen Sie andernfalls den folgenden Befehl aus, um sie zu implementieren:Dies ist die Standardbereitstellung, da die aktuelle Anpassung nur auf der Dynamic Engine-Umgebungsseite benötigt wird. Aus diesem Grund wurde keine Anpassung für die Dynamic Engine-Instanz konfiguriert.
helm install dynamic-engine -f <engine-id>-helm-values/<engine-id>-values.yaml oci://ghcr.io/talend/helm/dynamic-engine -
Die Unterstützung für Autoskalierung stützt sich auf einen Metrikserver.
Führen Sie folgenden Befehl aus, um zu überprüfen, ob ein Metrikserver installiert ist:
kubectl top podWenn Sie einen Fehler wie error: Metrics API not available (Fehler: Metrik-API nicht verfügbar) erhalten, müssen Sie einen Metrikserver installieren.
Warum und wann dieser Vorgang ausgeführt wird
Um Pod-Autoskalierung für Datenservices und Routen zu aktivieren, konfigurieren Sie das Diagramm dynamic-engine-environment. Mit dieser Konfiguration kann auch die maximale Anzahl Replikate (Pod-Instanzen) festgelegt werden auf die HPA skalieren kann.
Prozedur
Ergebnisse
Nach der erfolgreichen Implementierung kann die Dynamic Engine-Umgebung die Pod-Instanzen automatisch entsprechend den Arbeitslaständerungen bis zur konfigurierten maximalen Anzahl erhöhen, wenn Datenservices und Routen ausgeführt werden.
In Talend Management Console ändert sich der Status dieser Umgebung zu Ready (Bereit), was bestätigt, dass sie zum Ausführen von Tasks oder Plänen bereit ist.
Nächste Maßnahme
Die auf Umgebungsebene konfigurierten Autoskalierungseinstellungen gelten standardmäßig für alle Datenservices- und Routen-Tasks, die in dieser Umgebung ausgeführt werden. Sie können diese Einstellungen auf Umgebungsebene aber überschreiben, indem Sie die Autoskalierungsparameter auf Ausführungsprofilebene verwenden. Damit kann das Skalierungsverhalten für spezifische Tasks über die Autoskalierungsparameter auf Ausführungsprofilebene angepasst werden, ohne umgebungsweite Einstellungen zu ändern.
Autoskalierungsparameter auf Ausführungsprofilebene sind besonders in folgenden Fällen nützlich:
- Eine bestimmte Datenservices- oder Routen-Task weist andere Leistungsmerkmale auf und erfordert andere Skalierungsschwellenwerte als die Umgebungsstandardwerte.
- Sie müssen die Skalierung für ressourcenintensive Tasks einschränken, um eine Cluster-Überlastung zu vermeiden.
- Eine Task ist kritisch und erfordert eine höhere Mindestzahl an Replikaten als der Umgebungsstandardwert.
Um die Autoskalierung auf Umgebungsebene für eine Task zu überschreiben, erstellen oder aktualisieren Sie ein Ausführungsprofil mit den gewünschten Autoskalierungsparametern als JVM-Argumente (z. B. -K8S:AutoscalingMaxReplicas=5). Jede Task, die dieses Ausführungsprofil verwendet, übernimmt dann diese angepassten Einstellungen, welche die entsprechende Konfiguration auf Umgebungsebene überschreibt.
Eine vollständige Liste der Autoskalierungsparameter und ihrer entsprechenden Ausführungsprofilargumente finden Sie unter Konfigurieren von Autoskalierungsparametern auf Task-Ebene.