Einführung
OpenBao ist ein Open-Source-Secret-Manager, ein Fork von HashiCorp Vault, der von der Linux Foundation gehostet wird. In diesem Tutorial wird er im Dev-Modus auf einem Kubernetes-Cluster installiert – dabei handelt es sich um einen einzelnen In-Memory-Server, der bereits im unverschlüsselten Zustand startet, was ideal zum Lernen ist. Im Dev-Modus werden keine Daten auf der Festplatte gespeichert und es wird ein festes Root-Token verwendet. Verwenden Sie ihn daher ausschließlich für Tutorials und Experimente, niemals in der Produktion.
Schritt 1 – Erstellen Sie einen lokalen Cluster (optional)
Wenn Sie bereits über einen Cluster verfügen, überspringen Sie diesen Schritt. Für einen temporären lokalen Cluster eignet sich „kind“ gut:
kind create cluster --name secrets-lab
Schritt 2 – Das Helm hinzufügen
helm add openbaohelm
helm update
Schritt 3 – OpenBao im Entwicklungsmodus installieren
helm openbao openbao/openbao \
--set "server.dev.enabled=true" \
--namespace openbao --create-namespace
Schritt 4 – Überprüfen Sie, ob es läuft
Das Diagramm zeigt die Bereitstellung eines OpenBao-Servers sowie eines Agent-Injectors. Warten Sie, bis der Server-Pod bereit ist:
kubectl get pods -l app.kubernetes.io/name=openbao-n openbao
NAME BEREIT STATUS NEUSTARTS LAUFZEIT
openbao-0 1/1 Läuft 0 20s
Überprüfen Sie den Status des Servers mit dem bao CLI innerhalb des Pods. Im Entwicklungsmodus ist der Server bereits entsperrt und das Root-Token lautet Stamm:
kubectl exec -n openbao openbao-0 -- sh -c \
'BAO_ADDR=http://127.0.0.1:8200 BAO_TOKEN=root bao status'
Versiegelt false
Storage inmem
Version 2.5.4
Versiegelt: false bedeutet, dass der Server betriebsbereit ist. (Ein OpenBao im Produktionsbetrieb ist zunächst gesperrt und muss mit Schlüsselanteilen entsperrt werden – im Entwicklungsmodus entfällt dieser Schritt.)
Aufräumen
So entfernen Sie OpenBao:
helm openbao -n openbao
So wird der gesamte lokale Cluster abgebaut:
kind delete cluster --name secrets-lab
Wie geht es weiter?
OpenBao läuft, ist aber noch leer. Als Nächstes werden Sie Ihre ersten Geheimnisse mit der Schlüssel-Wert-Engine speichern und abrufen.
Als Nächstes in dieser Reihe: Speichern und Auslesen von Geheimnissen mit OpenBao.
Zusammenfassung
- OpenBao lässt sich über sein Helm auf Kubernetes installieren;
server.dev.enabled=truebetreibt einen einzigen In-Memory-Server für das Training. - Der Dev-Modus startet im „Unsealed“-Modus mit einem festen Root-Token (
Stamm); die Produktionsläufe sind versiegelt und speichern Daten auf einem echten Backend. - Die
baoCLI innerhalb deropenbao-0pod meldet den Serverstatus;Versiegelt: falsebedeutet, dass es fertig ist.
