Containerisierte automatische Skalierung des MID-Servers
MID-Server können über StatefulSet mit einer beliebigen Anzahl von Replikaten bereitgestellt werden. Sie können automatisch skaliert werden, indem sie Kubernetes Horizontal Pod Autoscaler (HPA) nutzen. Der automatische Skalierer für den horizontalen Pod aktualisiert automatisch eine Arbeitsauslastungsressource (z. B. Bereitstellung oder StatefulSet), um den Bedarf anzupassen.
- Name
- Headless-Servicename
- Anspruch auf persistentes Volume (PVC)
- Parameter, z. B. Speicherklasse, Zugriffsmodi und Speicheranforderung
- Die Ressourcenanforderung/-Grenze
Das PVC deklariert das gewünschte persistente Volume, auf dem der MID-Server config.xml, Metadatendateien und mehrere seiner Unterordner speichert.
Während Arbeitsauslastungsschwankungen kann ein Pod mit einem ausgeführten MID-Server-Container entfernt und durch einen neuen ersetzt werden. StatefulSet stellt sicher, dass dasselbe persistente Volume an den neuen Pod angehängt wird, wodurch der MID-Server seinen Status fortsetzen kann.
Die einzigen Unterordner, die auf dem persistenten Volume bereitgestellt werden können, sind diejenigen, die bei einer neuen MID-Server-Installation anfänglich leer sind. Die config.xml Datei- und andere Metadatendateien müssen gesichert werden, wenn der Pod während des Starts heruntergefahren und wiederhergestellt wird.
Bereitstellungsanforderungen, die als YAML-Dateien exportiert werden, können verwendet werden, um eine StatefulSet-Arbeitsauslastung und neue MID-Server-Pods im Kubernetes-Cluster zu erstellen.
Wenn Sie Änderungen an der YAML-Datei für die Bereitstellung vornehmen und sie erneut anwenden, werden die vorhandenen Pods der Bereitstellung neu erstellt. Bei der Bereitstellung von StatefulSet werden die Konfigurationsdateien aus dem Sicherungsordner wiederhergestellt. Das init-Skript muss die Änderungen der Bereitstellungsumgebung erkennen und auf die Konfigurationsdateien anwenden, bevor der MID-Server gestartet wird.
Aktivierung der automatischen HPA-Skalierung
Die automatische HPA-Skalierung kann für jede vorhandene StatefulSet-Arbeitsauslastung aktiviert werden, indem ein HPA-Controller erstellt wird.
Wenn Sie eine Bereitstellungsanforderung erstellen, können Sie entweder HPA-Version 1 oder Version 2 auswählen.
Wenn Sie eine Bereitstellungsanforderung in der Instanz mit einer HPA-Konfiguration erstellen, wenden Sie die exportierte YAML-Datei an, und die automatische HPA-Skalierung funktioniert sofort.