OpenID Connect Authentizierung
Wir bieten einen OpenID Connect Authentifizierungsproxy in Form von SATOSA im WWU Kube an.
Dieser kommuniziert im Backend als Service Provider mit Shibboleth und reicht diese Informationen im Frontend über das OpenID Connect Protokoll weiter.
Für die Anmeldung an diesem Dienst, muss ein Client inklusive Passwort erstellt werden. Bei Interesse an diesem Dienst, einfach eine Mail an cloud@wwu.de.
Security Scanner
Im WWU Kube werden alle Docker Images, die in Pods
eingesetzt werden regelmäßig mit aqua trivy auf Sicherheitslücken gescannt.
Die Ergebnisse dieser Scans werden automatisch im Namespace
per Custom Ressource VulnerabilityReport
zur Verfügung gestellt.
Certificate Manager und DFN Issuer
Wir betreiben einen Cert-Manager im WWU Kube und einen ClusterIssuer
wwuit-acme
mit dem Zertifikate vom DFN beantragt werden können.
Die DNS Namen für die Zertifikate beantragt werden können, müssen vorher über den Projektantrag mit beantragt werden.
CNAME NIC Einträge
Über die Annotation wwu.io/nic_node
in Gateway
können automatisch die dort enthaltenen Hosts als CNAMEs im NIC für das passende Istio Ingressgateway eingetragen werden.
Das Value für diese Annotation ist der Eintrag für den der CNAME Eintrag erzeugt werden soll.
Jedes Cluster kann nur CNAMEs für die eigenen NIC Einträge erstellen, also momentan Produktion für
istio.k8s.wwu.de
istio.ms1.k8s.wwu.de
istio.ms2.k8s.wwu.de
und Staging für
istio.staging.k8s.wwu.de
istio.ms1.staging.k8s.wwu.de
istio.ms2.staging.k8s.wwu.de
Die ersten Einträge sind jeweils globale Einträge, sodass Anfragen auf allen Standorten landen. Die restlichen Einträge landen explizit bei einem Standort.
Wollen wir also beispielsweise einen CNAME Eintrag für das Istio Ingressgateway auf dem Staging Cluster nur auf ms1 erstellen, tragen wir als Annotation
wwu.io/nic_node: istio.ms1.staging.k8s.wwu.de
ein.
Die DNS Namen müssen aber vorher über den Projektantrag mit beantragt werden.
Automatischer Reload von Diensten bei Secret oder ConfigMap Änderung
Um es möglich zu machen, Deployments, StatefulSets und DaemonSets neuzustarten, wenn Änderungen an den gemounteten Secrets oder ConfigMaps gemacht werden, ohne Tools wie Helm verwenden zu müssen, läuft im WWU Kube stakater/Reloader.
Dieser kann über entsprechende Annotations konfiguriert werden und startet dann Dienste ensprechend bei Änderungen neu.
Beispielsweise würde das Annotation
secret.reloader.stakater.com/reload: "foo-secret"
auf einem Deployment, dazu führen, dass das Deployment neu gestartet wird, sobald sich der Inhalt des Secrets foo-secret
ändert.
Für eine detaillierter Beschreibung über die volle Funktionalität sei auf die Dokumentation des Reloaders selbst verwiesen.