Installation

Information

  • Für die Installation von PLANTA pulse gibt es drei Möglichkeiten:
    • pulse Appliance - virtuelle Appliance
    • pulse Docker Image
    • pulse Helm Chart

pulse Appliance

Informationen

  • Die Lieferung erfolgt mittels eines OVA-Images, dieses kann auf einer Virtualisierungslösungen wie VMWare ESXi oder Microsoft Hyper-V eingespielt werden
  • Als Betriebssystem wird eine PhotonOS verwendet. Die zum Betrieb von PLANTA pulse benötigten Komponenten sind bereits installiert und vorkonfiguriert.
  • Für Kommunikation innerhalb der Appliance zum Beispiel zwischen pulse und der Datenbank werden die IP ranges 172.17.0.0/28 und 172.18.0.0/28 verwendet.

Anpassungen der Dienstspezifikation

  • Start und Wartung durch SSH-Login auf dem virtuellen Server
    • Start im Verzeichnis /opt/planta über docker-compose up -d

pulse Docker Image

Informationen

  • Die Basis für jedes PLANTA pulse Deployment stellt ein Docker Image dar.
  • Das Docker Image kann überall dort bereitgestellt werden, wo eine Docker-Installation oder eine kompatible Container Runtime vorhanden ist.
    • Dies schließt Windows-Rechner ein, wobei das PLANTA pulse-Image auf Linux basiert.
  • Für eine minimale Installation wird neben dem pulse Container auch eine laufende MongoDB Datenbank benötigt
  • Im Folgenden wird die Bereitstellung mit docker-compose beschrieben.

PLANTA pulse-Container herunterladen

Vorgehensweise

  • Das Image ist auf der PLANTA Registry unter registry.planta.services verfügbar (Web-Schnittstelle unter https://registry.planta.services ). Die Anmeldedaten erhalten Sie von PLANTA.

PLANTA pulse-Container mit docker-compose konfigurieren

Vorgehensweise

  • Die Konfiguration von PLANTA pulse kann über Umgebungsvariablen vorgenommen werden (docker-compose.yml, Abschnitt "Environment").
    • Liste?
  • Port-Mapping (docker-compose.yml, Abschnitt "Ports")
  • Artefaktversion (docker-compose.yml, Abschnitt "Image") entspricht dem Docker-Image-Namen + Tag, z.B. registry.planta.services/planta/webclient:latest. Entsprechung bei pulse?


Beispiel docker-compose.yml

Eigenes Beispiel für pulse?
YML

PLANTA pulse-Container mit docker-compose bereitstellen

Vorgehensweise

  1. Die Konfiguration bearbeiten.
  2. (Wenn noch kein Image vorhanden ist) In die Registry mit den üblichen Anmeldedaten einloggen: docker login registry.planta.services.
  3. (Wenn noch kein Image vorhanden ist) Das Docker Image ziehen:  docker-compose pull.
  4. Aus der Registry ausloggen:  docker logout registry.planta.services.
  5. Container erstellen bzw. starten:  docker-compose up -d.

Kommandozeilen-Befehle

  • Container stoppen: docker-compose stop
  • Container stoppen und löschen: docker-compose down
  • Logs ansehen: docker-compose logs

pulse Heml Chart

Helm Chart

Dieses Chart erstellt ein vollständiges PLANTA pulse-Deployment inklusive aller zusätzlich benötigten Komponenten. Über einen Subchart wird die für den Betrieb benötigte Datenbank MongoDB mit einem Replica-Set aufgesetzt.

  • Informationen zur Benutzung siehe unten
  • Für das initiale Aufsetzen der Datenbank wir das Tool mongo-k8s-sidecar verwendet
  • Harbor registry.planta.services/planta/pulse (z.B. 0.1.3)
Erstellen eines Secrets auf Basis von Docker Registry Credentials 
oc create secret docker-registry <pull_secret_name> --docker-server=<registry_server> --docker-username=<user_name> --docker-password=<password> --docker-email=<email>
CODE

Installation

Harbor Registry Pull
helm registry login registry.planta.services
helm pull oci://registry.planta.services/planta/pulse --version X.X.X
CODE
  • Verbindung zum Kubernetes/Openshift Cluster (z.B.  oc login)
  • ./values.yaml  anpassen
helm install [release name] /path/to/pulse-X.X.X.tgz --render-subchart-notes
helm registry logout registry.planta.services
CODE
Manuell

Information

  • Wenden Sie sich an PLANTA, wenn Sie das Chart manuell herunterladen möchten.

Vorgehensweise

  • Chart herunterladen
  • Verbindung zum Kubernetes/Openshift Cluster (z.B.  oc login)
  • ./values.yaml  anpassen
  • helm install [release name] /path/to/chart --render-subchart-notes

--render-subchart-notes   zeigt extra Informationen der mongo subchart an.

Bei einem Update eines bereits vorhandenen Releases stattdessen  helm upgrade  verwenden.

Konfiguration

Chart.yaml
ParameterBeschreibungBeispiel
versionVersion des Charts; Sollte jedes mal erhöht werden wenn Änderungen am Chart durchgeführt werden.0.1.0
appVersionVersion von Pulse (Image Tag)"release31"
values.yaml
ParameterBeschreibungDefault
replicaCountAnzahl der Pulse Replications1
clusterDomainDomänenname des Clusterscluster.local
image.repositoryImage Repository für Pulseregistry.planta.services/planta/pulse
image.pullPolicyEntscheidet wann ein Image gepullt werden soll.IfNotPresent
image.tagÜberschreibt den Image Tag für Pulse; Standardmäßig wird die  appVersion  hierfür verwendet""
imagePullSecretsListe von Secrets um auf das definierte Repository zugreifen zu können.
  - name: harbor
nameOverrideÜberschreibt  pulse.name; Default:  .Chart.Name""
fullnameOverrideÜberschreibt  pulse.fullname; Default:  .Chart.Name""
namespaceOverrideÜberschreibt  pulse.namespace; Default:  .Release.Namespace""
serviceAccount.createEntscheidet ob ein Service Account erstellt werden soll.true
serviceAccount.annotationsAnnotations für den Service Account{ }
serviceAccount.nameName des Service Accounts; Wenn leer gelassen und der Service Account aktiviert ist, wird ein Name durch den  fullname  generiert.""
podAnnotationsAnnotations für Pods{ }
podSecurityContextSecurity Context für Pods{ }
securityContextSecurity Context{ }
service.typeType des ServicesClusterIP
service.portService Port8080
ingress.enabledToggle  Ingresstrue
ingress.annotationsAnnotations für Ingress-Controller, Cert-Manger, etc.
ingress.hostsListe aller Hosts

- host: pulse.apps.sandbox.x8i5.p1.openshiftapps.com paths: - path: /

ingress.tlsTLS Einstellungen von Ingress[]
resourcesResource Einstellungen (CPU, RAM Limits etc.){ }
mongo.replicaCountAnzahl der Mongo Replications3
mongo.clusterDomainDomänenname des Clusterscluster.local
mongo.image.repositoryImage Repository für Mongomongo
mongo.image.pullPolicyEntscheidet wann ein Image gepullt werden soll.IfNotPresent
mongo.initdb.databaseMongoDB  Pulse Datenbank Namepulse
mongo.initdb.replSetMongoDB  Replica Set Namers0
mongo.storageClassName

MongoDB  StorageClassName für den  PVC

gp2
oracle.imageImage Repository für Mongo2Oracleregistry.planta.services/planta/mongo2oracle:latest
oracle.secretnameOracle Secret; muss folgende Keys enthalten: connect (Oracle connection String), username (Oracle Username), password (Oracle Passwort)oracle
oracle.portMongo2Oracle Port14220
storageClassNamePulse StorageClassName für den  PVCgp2

Troubleshooting

  • Status aktueller Releases:  helm status [release]
    • Liste aller Releases:  helm list
  • Helm Chart Syntax überprüfen:  helm lint /path/to/chart
  • Abhängigkeiten des Charts überprüfen:
    • helm dependency list
    • helm dependency update
  • Die Befehle  helm get  bzw.  helm template  erlauben es sich fertig verarbeitete Dateien anzuschauen (ausgefüllte Templates).
  • Logs anschauen: Je nach Kubernetes Distribution (z.B.  oc logs)

Konfiguration

Vor Start: Anpassung der Dienstspezifikation

  • Domainnamen
  • Authentifizierung
  • Datenbank (so dediziert vorhanden)
  • Datensicherung

Weitere Konfiguration über das Panel Administration

  • Mailserver
  • Authentifizierung

Erste Schritte

Informationen

  • Um PLANTA pulse verwenden zu können, muss zunächst ein erster Benutzer registriert werden.

Vorgehensweise

  • Das PLANTA pulse-System aufrufen.
  • In der Anmeldemaske auf Registrieren klicken.
  • Benutzername, E-Mail und Passwort eingeben.
  • Auf Registrieren klicken.
  • Der Benutzer kann nun in das Panel Administration wechseln und dort bei Bedarf weitere Benutzer anlegen oder einen API-Benutzer anlegen.
    • Ein API-Benutzer ist ein technischer Benutzer, der für die Bedienung der REST-API aus Fremdsystemen verwendet wird.

Update