NetScaler CPX-Unterstützung für Kubernetes-Probes
Kubernetes verwaltet Container-Lebenszyklen durch Startup-, Liveness- und Readiness-Probes, um sicherzustellen, dass Anwendungen korrekt initialisiert werden und fehlerfrei bleiben. NetScaler CPX unterstützt jetzt zusätzlich zu den bestehenden Startup- und Liveness-Probes auch die Readiness-Probe. Diese Unterstützung stellt sicher, dass Kubernetes den Datenverkehr nur dann an NetScaler CPX weiterleitet, wenn es voll funktionsfähig ist und, falls konfiguriert, seinen Lizenz-Checkout erfolgreich abgeschlossen hat.
Durch die Verwendung dieser Probes können Sie die Anwendungsverfügbarkeit verbessern und sicherstellen, dass fehlgeschlagene oder nicht reagierende Instanzen umgehend neu erstellt werden.
Einige der Vorteile sind:
- Verbessertes Traffic-Management: Stellt sicher, dass NetScaler CPX nur dann Datenverkehr empfängt, wenn es bereit ist, Anfragen zu bearbeiten.
- Betriebliche Zuverlässigkeit: Startet fehlerhafte Container automatisch neu, um sich von Ausfällen zu erholen.
- Lizenzvalidierung: Verzögert den Bereitschaftszustand, bis Lizenz-Checkouts erfolgreich sind, wenn der
LAS_CPX_BANDWIDTHParameter verwendet wird. - Präzise Initialisierung: Koordiniert den Übergang vom Container-Start zur aktiven Zustandsüberwachung.
Hinweis:
NetScaler CPX Version
14.1-72.xoder höher ist erforderlich, um die Readiness-Probe zu verwenden. Detaillierte Informationen zur Funktionsweise von Probes finden Sie in der offiziellen Kubernetes-Dokumentation.
Kubernetes-Probes für NetScaler CPX konfigurieren
Um Probes für NetScaler CPX zu konfigurieren, definieren Sie die Probe-Parameter in Ihrer Kubernetes-Deployment-YAML-Datei.
Probes über die CLI konfigurieren
Bearbeiten Sie Ihre Deployment-YAML-Datei, um die spezifischen exec Befehle aufzunehmen, die Kubernetes verwendet, um den Status des NetScaler CPX Containers zu überprüfen.
Startup-Probe konfigurieren: Fügen Sie den folgenden Code-Snippet hinzu, um sicherzustellen, dass Kubernetes auf den Abschluss des Initialisierungsprozesses wartet. NetScaler CPX signalisiert einen erfolgreichen Start durch die Erstellung der Datei . Konfigurieren Sie die Startup-Probe so, dass sie diesen Pfad überwacht, um sicherzustellen, dass die Initialisierung abgeschlossen ist, bevor Liveness-Checks beginnen.
startupProbe:
exec:
command:
- ls
- /tmp/cpx_started
initialDelaySeconds: 30
periodSeconds: 5
failureThreshold: 20
successThreshold: 1
timeoutSeconds: 1
<!--NeedCopy-->
Konfigurieren Sie die Readiness-Probe: Fügen Sie den folgenden Snippet hinzu, um zu definieren, wann der Pod bereit ist, Datenverkehr zu akzeptieren. CPX erstellt die Datei /tmp/cpx_ready, wenn es bereit ist, Datenverkehr zu verarbeiten. Wenn Sie den Parameter LAS_CPX_BANDWIDTH konfigurieren, erstellt CPX diese Datei nach einem erfolgreichen Lizenz-Checkout. Andernfalls erscheint sie, nachdem der Startvorgang abgeschlossen ist. Kubernetes verwendet diese Datei für die Readiness-Probe, um zu bestimmen, wann Datenverkehr an den Pod weitergeleitet werden soll.
readinessProbe:
exec:
command:
- /bin/ls
- /tmp/cpx_ready
failureThreshold: 15
initialDelaySeconds: 60
periodSeconds: 30
successThreshold: 1
timeoutSeconds: 1
<!--NeedCopy-->
Konfigurieren Sie die Liveness-Probe: Fügen Sie den folgenden Snippet hinzu, um die Integrität des Containers während der Laufzeit kontinuierlich zu überwachen. Definieren Sie eine Liveness-Probe in der Deployment-YAML, um die CPX-Integrität während der Laufzeit zu überwachen. Wenn die Probe fehlschlägt, startet Kubernetes den Container neu, um sich von ungesunden Zuständen zu erholen. Dieser Mechanismus gewährleistet die Anwendungsverfügbarkeit, indem er nicht reagierende CPX-Instanzen automatisch neu erstellt.
livenessProbe:
exec:
command:
- /bin/ping
- -c 1
- 192.0.0.1
initialDelaySeconds: 10
periodSeconds: 5
failureThreshold: 3
successThreshold: 1
timeoutSeconds: 1
<!--NeedCopy-->