PostgreSQL in Kubernetes zu deployen, ist relativ einfach. Aber was ist mit Failover, Backup, Skalierung, Upgrades? All das wurde traditionell von einem DBA manuell erledigt. Kubernetes Operators versprechen, diese Operationen zu automatisieren.
Was ist ein Operator¶
Ein Operator ist ein Kubernetes-Controller, der die Domäne einer spezifischen Anwendung versteht. Statt eines generischen “stelle 3 Replicas sicher” weiß ein Operator, wie man korrekt ein PostgreSQL-Failover durchführt oder ein Replica zu einem Elasticsearch-Cluster hinzufügt.
Wie ein Operator funktioniert¶
Technisch ist ein Operator eine Kombination aus einer Custom Resource Definition (CRD) und einem Custom Controller.
apiVersion: postgres.core.cz/v1alpha1
kind: PostgreSQLCluster
metadata:
name: orders-db
spec:
version: "9.6"
replicas: 3
storage:
size: 50Gi
backup:
schedule: "0 2 * * *"
retention: 7d
Prometheus Operator – Unser erster Produktions-Operator¶
Der CoreOS Prometheus Operator ist ausgezeichnet. Statt Prometheus manuell zu konfigurieren, definieren Sie ServiceMonitor-Objekte, die der Operator automatisch in Scrape-Konfigurationen übersetzt. Neuer Service? Erstellen Sie einen ServiceMonitor.
Die Zukunft¶
Operators sind die Zukunft des Betriebs komplexer Anwendungen in Kubernetes. Statt Runbooks und Bereitschaftsdiensten werden Operators die meisten Betriebsszenarien automatisch bewältigen.
Operators = DevOps-Automatisierung der nächsten Generation¶
Kubernetes Operators übertragen Betriebswissen aus menschlichen Köpfen in Code. Beginnen Sie mit vorhandenen Operators und lernen Sie schrittweise das Pattern für Ihre eigenen Anwendungen.
Brauchen Sie Hilfe bei der Implementierung?
Unsere Experten helfen Ihnen bei Design, Implementierung und Betrieb. Von der Architektur bis zur Produktion.
Kontaktieren Sie uns