Mounten von benutzerdefinierten Kubernetes-Ressourcen in Dynamic Engine-Umgebungen
Anpassen von Dynamic Engine-Umgebungen durch Mounten von Kubernetes-Ressourcen: ConfigMap für nicht-sensible Konfiguration, Secret für Anmeldedaten, volumes für Dateien und Zertifikate, PersistentVolumeClaim für persistenten Speicher und securityContext für Benutzerberechtigungen.
Anhand dieser Anpassungsmuster können Sie leicht Ihre benutzerdefinierten Kubernetes-Ressourcen in Dynamic Engine-Umgebungen für die Ausführung von Job- und Routen-Tasks verwenden.
Diese Muster sind nicht gegenseitig exklusiv; Sie können sie kombinieren, um verschiedene Formen von Kubernetes-Ressourcen in Ihre Dynamic Engine-Umgebung zu injizieren. Beispiel:
- ConfigMap: Nicht-sensible Konfiguration (API-Endpunkte, Protokollebenen, Funktions-Flags)
- Secret als Umgebungsvariablen: Anmeldedaten und API-Schlüssel
- Secret als volumes: Zertifikate, Keystores und dateibasierte Konfiguration
- PersistentVolumeClaim: Über Pods hinweg freigegebener persistenter Speicher
- securityContext: Container als Nicht-Stammbenutzer mit spezifischen Benutzer- oder Gruppen-IDs ausführen
Voraussetzungen und wichtige Überlegungen
-
Sie haben die in Helm-Standardimplementierung aufgeführten Anforderungen erfüllt.
-
Ihre Dynamic Engine-Version muss 1.2.0 oder höher sein.
-
Eine Dynamic Engine-Umgebung wurde Ihrer Dynamic Engine zugewiesen.
-
Ressourcenerstellung: Sie sind verantwortlich für das Erstellen der ConfigMap, Secrets und PersistentVolumeClaims, bevor Sie die Dynamic Engine-Konfiguration anwenden. Die Dynamic Engine-Dienste validieren das Vorhandensein dieser Ressourcen nicht.
-
Namespace: Alle Ressourcen müssen im gleichen Namespace wie Ihre Dynamic Engine-Umgebung erstellt werden, standardmäßig qlik-processing-env-$DYNAMIC_ENGINE_ENVIRONMENT_ID.
Keine globale additionalSpec: Es ist keine globale additionalSpec unter configuration verfügbar. Sie müssen sie getrennt für jobDeployment (Datenintegrations- und Big Data-Job-Tasks) und dataServiceRouteDeployment (Datenservices- und Routen-Tasks) angeben, wenn Sie die gleiche Konfiguration auf beide anwenden möchten.
Aktivierung: Sie müssen enabled: true unter additionalSpec festlegen, um die benutzerdefinierte Konfiguration zu aktivieren.