Wir haben ungefähr 300 RHEL-Server, die derzeit eine Verbindung zu einem Puppetmaster-Server herstellen. Wir haben jedoch einige Leistungsengpässe festgestellt und es ist der Punkt, an dem unser System versagt. Ich bin für Puppet im Allgemeinen ziemlich neu und denke darüber nach, eine dezentrale Puppet-Architektur zu erstellen, anstatt Puppet-Clients mit dem Puppetmaster-Server zu verbinden. Abgesehen von dem, was ich vermuten würde, wie Leistungsgewinn und das Fehlen des Signierens und Austauschs von SSL-Zertifikaten gegen neue Computer, was sind andere Vor- und Nachteile beim Aufbau einer dezentralen Architektur?
redhat
puppet
puppetmaster
JMeterX
quelle
quelle
Antworten:
Gehen Sie dezentral.
Erstellen Sie ssh-Schlüssel, anstatt Zertifikate zu signieren. Geben Sie die Schlüssel nicht an Administratoren weiter
Sie können Git als Transport anstelle von Subversion verwenden und dann für verschiedene Maschinen / Rollen verzweigen und dann Ihre Änderungen versionieren sowie zulassen ... aber Sie müssen das DVCS-Spiel an dieser Stelle kennen.
Es ist schneller und einfacher einzurichten. Fügen Sie einige Commit-Hooks für die Überprüfung der Vernunft hinzu.
Jetzt haben Sie den Puppenmeister durch das Client-Server-Modell mit ssh und git ersetzt, die beide besser skalieren als der Puppenmeister.
Möglicherweise besteht in Ihrer Organisation ein Bedarf an Hierarchien. Kein Problem, bewahren Sie einfach das Git-Repo mit dem definitiven Zweig an einem sicheren Ort auf.
Bonus:
Damit können Sie sehen, wer eine Änderung vorgenommen hat.
http://bitfieldconsulting.com/scaling-puppet-with-distributed-version-control
https://www.braintreepayments.com/braintrust/decentralize-your-devops-with-masterless-puppet-and-supply-drop ?
quelle
Laufen Sie Marionette im Passagier? gespeicherte configs? Sie sollten wirklich überhaupt keine Skalierbarkeitsprobleme mit 300 Knoten haben, solange Sie grundlegende Setup-Probleme behandeln.
quelle
Dezentral ist der beste Weg, da jeder Client sein eigenes Manifest aus einer lokalen Kopie der Manifestquelle kompiliert. Dies wird jedes Mal aktualisiert, wenn Sie Updates vom say git-Server herunterladen. Viel effizientere Nutzung der Bandbreite, da Kunden nicht bei jedem Lauf Kontakt mit dem Puppenspieler aufnehmen müssen. Beseitigt auch einzelne Fehlerquellen, da Clients von überall aus aktualisiert werden können.
quelle