2017-11-28 3 views
0

Ich habe einige Geheimnisse erstellt und ich versuche, die Datei auf diese Weise zu importieren:lesen Geheimnisse aus der Datei in Helm

apiVersion: v1 
kind: Secret 
metadata: 
    name: {{ template "amq.broker.fullname" . }}-tls 
    labels: 
    app: {{ template "amq.name" . }} 
    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}" 
    component: "{{ .Values.broker.name }}" 
    release: "{{ .Release.Name }}" 
    heritage: "{{ .Release.Service }}" 
type: Opaque 
data: 
{{ (.Files.Glob "secrets/broker.ks").AsSecrets | indent 2 }} 

Die Datei ist unter der secrets Richt. Wenn ich die Installation ausführe, ist das broker.ks Geheimnis nicht da. Allerdings ist das Geheimnis unter dem secrets Ordner. Irgendeine Idee?

Hier die dir struct

├── Chart.yaml 
├── README.md 
├── secrets 
│   ├── broker.ks 
│   ├── broker_cert 
│   ├── client.ks 
│   └── client.ts 
├── templates 
│   ├── NOTES.txt 
│   ├── _helpers.tpl 
└── values.yaml 
+0

Was genau ist die Fehlermeldung, wenn Sie versuchen, "helm upgrade"? Wie sieht der Verzeichnisbaum Ihrer Tabelle aus? – fishi

+0

Kein Fehler während des Upgrades. – Mazzy

+0

Tut '{{.Files.Get" secrets/broker.ks "| b64enc | Einzug 2}} 'Arbeit? Oder benötigen Sie ein glob-Muster, um auf geheime Dateien zu zielen? – fishi

Antwort

0

Sie können stattdessen ein Geheimnis aus Ihren Dateien mit den notwendigen Optionen über KUBECTL

Syntax erstellen: kubectl < --generic Argumente des Clusters/Namensraum mit Auth definieren >erstellen geheime < .type> < .secret-name> --from-file = < .file-Standort>

Eg - kubectl --username = xxxxxx --password = yyyy --server = zzzzz.com --namespace = com-Test-Probe erstellen geheime generic Probe-Geheimnis --from-file = Geheimnisse/broker.ks

Sie können das Geheimnis separat im kubernetes-Cluster erstellen und dann über Datenträger-Mounts in Bereitstellungen in Ihren Microservice-Container einbinden.