2

Ich versuche, meine App zu Kubernetes in Google Container Engine zu implementieren.Erhalten Sie YAML für bereitgestellte Kubernetes-Dienste?

Die App finden Sie unter: https://github.com/Industrial/docker-znc.

Die Dockerfile ist in ein Bild auf Google Container Registry eingebaut.

Ich habe die App in Kubernetes über die Schaltfläche + bereitgestellt. Ich habe dafür nicht die YAML .

Ich habe ein Geheimnis in Kubernetes für die PEM-Datei eingefügt von der App erforderlich.

  1. Wie erhalte ich die YAML für die Deployment, Dienst und Pod von Kubernetes erstellt von im Formular ausfüllen?
  2. Wie bekomme ich die Secret in meine Pod für die Verwendung?

Antwort

10

Um die yaml für einen Einsatz (Service, pod, Geheimnis, etc.) zu erhalten:

kubectl get deploy deploymentname -o yaml --export 
+0

eine Idee, wie es für den gesamten Cluster (alle Bereitstellungen) zu tun? Die Idee ist natürlich, Spiegelumgebungen mit genau den gleichen Diensten zu erstellen. – Sinaesthetic

1

für die zweite Frage nach dem Geheimnis, das von der K8S Dokumentation. siehe https://kubernetes.io/docs/concepts/configuration/secret/#using-secrets für weitere Informationen.

  1. Erstellen Sie ein Geheimnis oder verwenden Sie ein vorhandenes. Mehrere Pods können auf dasselbe Geheimnis verweisen.
  2. Ändern Sie Ihre Pod-Definition, um ein Volume unter spec.volumes [] hinzuzufügen. Benennen Sie das Volume mit irgendetwas und weisen Sie ein Feld spec.volumes []. Secret.secretName auf, das dem Namen des geheimen Objekts entspricht.
  3. Fügen Sie jedem Container, der das Geheimnis benötigt, einen spec.containers []. VolumeMounts [] hinzu. Geben Sie spec.containers []. VolumeMounts []. ReadOnly = true und spec.containers []. VolumeMounts []. MountPath in einen nicht verwendeten Verzeichnisnamen ein, in dem die Secrets angezeigt werden sollen.
  4. Ändern Sie das Bild und/oder die Befehlszeile, damit das Programm nach Dateien in diesem Verzeichnis sucht. Jeder Schlüssel in der geheimen Datenzuordnung wird zum Dateinamen unter mountPath.

Ich habe das verwendet und es funktioniert gut.

Verwandte Themen