Zum Hauptinhalt springen
Version: 5.2

Kubernetes und Container-Orchestrierung

Vorteile von Kubernetes

Die Verwendung von Kubernetes bietet zahlreiche Vorteile für die Bereitstellung und Verwaltung des OPC Routers:

  • Skalierbarkeit: Kubernetes ermöglicht es, die Anzahl der OPC Router-Instanzen basierend auf den aktuellen Anforderungen zu skalieren.
  • Flexibilität: Durch die Nutzung von Containern können verschiedene Versionen und Konfigurationen des OPC Routers einfach verwaltet und bereitgestellt werden.
  • Automatisierung: Kubernetes automatisiert viele Verwaltungsaufgaben, einschließlich Deployments, Rollbacks und Skalierungen, was die Verwaltung vereinfacht und Fehler reduziert.

Helm Chart für OPC Router

Das Helm Chart für den OPC Router erleichtert die Bereitstellung und Verwaltung des OPC Routers in einem Kubernetes-Cluster. Hier sind die Hauptfunktionen und Konfigurationsmöglichkeiten:

Bereitstellung:

  • Helm Chart: Ermöglicht die Bereitstellung des OPC Routers auf jedem Kubernetes-Cluster.
  • Mehrere Konfigurationen: Unterstützung für verschiedene Konfigurationsoptionen, um den spezifischen Anforderungen gerecht zu werden.

Konfiguration:

  • Global Parameters: Einstellungen wie globales Docker-Image-Registry und StorageClass.
  • Common Parameters: Parameter zur Anpassung des Namens und der Service-Account-Einstellungen.
  • OPC Router Parameters: Konfigurationen für das OPC Router-Image, Umgebungsvariablen und Projekt-Repository.
  • MongoDB Parameters: Einstellungen für die MongoDB-Integration, einschließlich Authentifizierung und Redundanz.

Redundanz:

  • OPC Router Redundanz: Unterstützung für den Redundanzmodus, um einen zweiten Pod mit einer OPC Router-Runtime zu betreiben, der im Falle eines Ausfalls des Haupt-Pods aktiv wird.
  • MongoDB Redundanz: Möglichkeit, mehrere MongoDB-Pods zu betreiben, um die Datenbank redundant zu machen und die Ausfallsicherheit zu erhöhen.

Best Practices

Um die Vorteile von Kubernetes und Helm Charts voll auszuschöpfen, sollten folgende Best Practices beachtet werden:

Private Repositories:

  • Sicherstellen, dass die Git-Repositories privat sind, um unautorisierten Zugriff zu verhindern.
  • Verbindung des internen Git-Systems des OPC Routers mit gehosteten Git-Servern wie GitHub, Bitbucket oder Microsoft Azure DevOps.

Secrets Management:

  • Secrets und Passwörter sollten niemals im Git-Repository gespeichert werden.
  • Der OPC Router speichert Secrets immer in einer separaten lokalen Vault, um sicherzustellen, dass diese nicht mit versioniert werden.

Regelmäßige Updates und Monitoring:

  • Regelmäßige Aktualisierung des Kubernetes-Clusters und der Helm Charts.
  • Überwachung des Clusters, um sicherzustellen, dass alle Komponenten ordnungsgemäß funktionieren und skalieren.

Praktische Umsetzung

Bereitstellung mit Helm Chart:

  1. Vorbereitung: Stellen Sie sicher, dass Kubernetes und Helm installiert und konfiguriert sind

  2. Helm Repository hinzufügen: Fügen Sie das OPC Router Helm Repository hinzu und aktualisieren Sie es:

    helm repo add opc-router https://opc-router.github.io/helm-charts
    helm repo update
  3. Installation des OPC Routers: Verwenden Sie den folgenden Befehl, um den OPC Router zu installieren:

    helm install my-opcrouter opc-router/opc-router --set I_do_accept_the_EULA=true
  4. Sicherheitskonfiguration: Fügen Sie Authentifizierung und Sicherheitsparameter hinzu, um die Installation abzusichern:

    helm install my-opcrouter opc-router/opc-router \
    --set webManagement.auth.disable=false \
    --set webManagement.auth.initialUser.name=<Nutzername für den initialen Web Management Nutzer> \
    --set webManagement.auth.initialUser.password=<Passwort für den initialen Web Management Nutzer> \
    --set mongodb.auth.enabled=true \
    --set mongodb.auth.rootPassword=<mongodb root Passwort> \
    --set mongodb.auth.replicaSetKey=<mongodb replicaset key> \
    --set I_do_accept_the_EULA=true

Redundanz und Skalierung:

  1. OPC Router Redundanz aktivieren: Konfigurieren Sie den OPC Router Redundanzmodus in der Helm Chart, sobald verfügbar.

  2. MongoDB Redundanz: Stellen Sie sicher, dass MongoDB im Redundanzmodus betrieben wird, indem Sie die Anzahl der Pods erhöhen:

    --set mongodb.replicaCount=2

Projekt aus Git-Repository laden:

  • Referenzieren Sie das Projekt-Repository und den Pfad in der Helm Chart, um ein OPC Router-Projekt aus einem Git-Repository zu laden:

    --set project.projectRepo=<URL zum Git Repository> \
    --set project.projectPath=<Pfad zur .rpe Projektdatei> \
    --set project.configPath=<Pfad zur Konfigurationsdatei des Projektes> \
    --set project.auth.ssh_key=<Privater SSH Schlüssel>

Zusammenfassung

Die Nutzung von Kubernetes und Helm Charts bietet eine leistungsstarke und flexible Möglichkeit, den OPC Router in einer skalierbaren und verwaltbaren Umgebung zu betreiben. Durch die Implementierung von Best Practices und die Nutzung der Konfigurationsmöglichkeiten können Unternehmen die Zuverlässigkeit und Effizienz ihrer OPC Router-Installationen maximieren.