2017-09-22 2 views
0

Wie kann Ansible für die Rotation von zerteilen auf verschiedenen Ebenen im kubernetes-Cluster verwendet werden?Verwenden von Ansible zum Implementieren der certs-Rotationsfunktionalität in Kubernetes-Cluster

Bevor wir Flotte und jetzt zu kubernetes migrieren.

+0

_unterschiedliche Schichten in kubernetes Cluster? _ Was bedeutet "verschiedene Schichten"? –

+0

Ist das neu in Ihrem Workflow, oder hatten Sie es unter der Flotte und möchten jetzt die gleichen Schritte unter kubernetes machen? –

+0

Verschiedene Layer: Infrastruktur Layer, Kubernetes Layer und Services Layer (Upper Plattform Services (Elasticsearch, etc ..) Lower Plattform Services (etcd, PWX, etc ...) – Ravim

Antwort

0

Wenn ich Ihre Situation richtig zu hören, dann denke ich, Sie am glücklichsten mit einem DaemonSet sein werden, die (und optional Monitore) ansible-pull.service und ansible-pull.timer auf dem Knoten installiert.

Die DaemonSet gewährleistet der Behälter auf jedem Knoten (im Gegensatz zu einem CronJob oder dergleichen) vorgesehen ist, und mit /etc/systemd/system Volumen in den Behälter montiert und go-systemd's ability to daemon-reload (zusammen mit dem D-BUS-Buchse, natürlich), kann der Behälter eines geeignet auszuzuschreiben Beschreibung .service und .timer Datei für diesen Knoten.

Dann wird ansible-pull wie zuvor laufen, was auch immer Ihre vorhandenen ansible Playbooks getan haben.

Es gibt viele Ansätze, um diese ähnliche Aktion auf Nicht-Knoten-Maschinen zu erreichen, also überlasse ich das dem Leser als Übung.

Ich weiß nicht, was Sie als „Infrastruktur“ Schicht definieren, aber das Drehen der Kubernetes Zert ist relativ einfach aus ansible-Pull-Perspektive: die neue worker.pem und worker.key in /etc/kubernetes/ssl schreiben, prallen kubelet.service (oder dessen hyperkube Äquivalent) , voilà. Obere Plattform-Dienste, die ich erwarten würde, werden von der (ReplicaSet | Deployment | ReplicationController | etc) verwaltet, die sie besitzt, was bedeutet, dass man für in-Cluster-Ressourcen viel deklarativer sein kann, Zugriff auf die volle Leistung von ConfigMap, Secret, Service, usw.

Verwandte Themen