An meinem derzeitigen Arbeitsplatz kümmere ich mich um zwei VMware-Host-Maschinen, eine physische OpenBSD-Maschine, drei Debian-VMs und sechs Windows Server-VMs (2008/2012).
Ich überlege, ein Konfigurationsmanagement-Tool wie Puppet oder Chef zu implementieren. Ist dies vernünftig oder überwiegt der Aufwand für das Erlernen des Tools den Nutzen? Wo liegt der Wendepunkt zwischen Verwaltbarkeit und Implementierungskosten?
Antworten:
IMHO lohnt es sich zu lernen, auch wenn Sie nur einen einzigen Server verwalten,
Ja, es wird eine Lernkurve geben. Ja, Sie werden frustriert sein. Für diese Kosten werden Sie jedoch durch zuverlässige, konsistente Ein-Klick-Bereitstellungen, versionskontrollierte Serverkonfiguration, einfache Einrichtung von Test- / Entwicklungsumgebungen usw. um ein Vielfaches zurückgezahlt.
Neben den Vorteilen für Ihren aktuellen Job ist die Möglichkeit, Ihrem Lebenslauf ein CM-System hinzuzufügen, ein großer Gewinn. Moderne sysadmins sind jetzt zumindest zu erwarten Exposition zu einem Config - Management - System, wenn nicht Kenntnisse.
(Nebenbemerkung: Betrachten Sie auch Ansible. Es ist mein bevorzugtes CM und sehr einfach in Betrieb zu nehmen - viel einfacher als Puppet oder Chefkoch. Außerdem kommt die Windows-Unterstützung in Ansible gut voran.)
quelle
Das hängt davon ab, wie viel Zeit und Geld Sie verbrennen müssen und ob Sie Ihr Geld verbrennen oder nicht.
Ein Konfigurationsmanagement-Tool (eines davon) wird zu einer wertvollen Fähigkeit auf dem heutigen Markt.
Die Zeit für das Erlernen und Implementieren eines CM-Tools zu verwenden, ist aus Sicht Ihres Unternehmens oder Ihrer Umgebung möglicherweise nicht die effizienteste Aufgabe, aber es lohnt sich möglicherweise aufgrund Ihrer Kenntnisse.
Die meisten Konfigurationsmanagement-Tools sind kostenlos verfügbar, da sie schwieriger zu installieren und in Betrieb zu nehmen sind.
Diese Frage ist etwas schwierig zu beantworten, da es wirklich davon abhängt, was Sie täglich tun, um diese Server zu verwalten. Wenn Sie gar nicht viel tun müssen, ist ein Konfigurationsmanagement-Tool möglicherweise ein totaler Overkill.
Wenn Sie Ihre Infrastruktur nur wirklich in einen vorhersehbaren und grundlegenden Zustand versetzen müssen, kann es wenig schaden, die Grundlagen von etwas wie SaltStack oder Ansible zu erlernen.
Meiner persönlichen Erfahrung nach ist Salt sehr einfach in Betrieb zu nehmen und auf Server zu booten und kann für sehr einfache Remote-Ausführung und Berichterstellung verwendet werden, was nützlich sein kann, wenn Sie es noch nicht in Ihrer Umgebung implementiert haben.
Denken Sie daran, ich bin voreingenommen. Sie sollten jedes CM-Tool selbst bewerten.
quelle
Genau wie @EEAA sagte - Anzahl der Server ist irrelevant. Sie können die Vorteile der Konfigurationsverwaltung auf einem einzelnen Computer nutzen:
Ich kann sagen, dass ich CM für alle meine persönlichen Server implementieren musste, da ich dort selten arbeite und all die kleinen Details vergesse. CM-Skripte zu haben, während es zeitaufwändig zu sein scheint (es ist), lohnt sich die Rückzahlung. Langfristig sparen Sie viel mehr Zeit für die Einrichtung.
quelle
Ich habe Erfahrung mit Puppet und Ansible. Ansible ist IMO einfacher, da es prozedural ist, während Puppet deklarativ ist. Beides hat Vor- und Nachteile, aber ich habe aufgrund von Puppets kryptischen Fehlern genug Haare gezogen.
Beide erfordern viel Arbeit, wenn Sie eine saubere und wiederverwendbare Konfiguration erstellen möchten. Die Kosten zahlen sich aus, wenn Sie mindestens zwei sehr ähnliche Server haben, z. B. Clouds oder Cluster.
Es kann jedoch auch für eigenständige Server verwendet werden - Sie können Administratorbenutzer, Standardkonfigurationen (mit lokalen Variationen) für sshd, postfix oder snmpd einrichten und sie auch zum einfachen Sammeln von Informationen verwenden, z.
Wie von der EEAA erwähnt, enthält es auch einen Wert zum Dokumentieren des Setups, wenn Sie sicherstellen, dass ein Server wirklich vom Basisstatus in den Ausführungsstatus versetzt wird. Es ist gut, es mit dem Versionskontrollsystem (git) zu kombinieren, damit die von Ihnen vorgenommenen Änderungen versioniert und dokumentiert werden. Das ist sehr wertvoll, wenn Sie ein Team von Administratoren haben.
quelle
Puppet oder jedes andere Managementsystem bringt große Vorteile, die alle durch andere Antworten hervorgehoben wurden, aber es gibt kein Patentrezept, wenn es um das Management geht.
Zum Beispiel kostet das Erstellen von Puppenklassen für komplexe Systeme viel Zeit und Mühe und manchmal Tränen, da es viele Fallstricke gibt und Fehlermeldungen nicht immer zu 100% klar sind. Wenn die Software aktualisiert wird, müssen Sie Zeit investieren, um Ihre Puppenklassen an neue Spezifikationen anzupassen oder Prozedur und herauszufinden, welcher Ansatz am besten dafür geeignet ist (Puppe zum Beispiel deklarativ und ein Upgrade ist typischerweise prozedural)
Außerdem müssen Sie herausfinden, wie Sie die an Ihren Klassen vorgenommenen Änderungen kontrolliert implementieren und wie Sie die verschiedenen Versionen Ihrer Manifeste verwalten.
Sie sollten sich auch überlegen, wie Sie Ihre Management-Lösung aktualisieren können, wenn die Zeit dafür gekommen ist.
Wenn Sie viel Zeit damit verbringen, zum Beispiel Marionettenklassen zu schreiben, müssen Sie viele Ein-Klick-Installationen durchführen, um die tatsächlichen Vorteile zu nutzen.
Ich empfehle, immer noch nachzuschlagen, dh die Verteilung von Konfigurationsdateien kann ein guter Ausgangspunkt sein und von dort aus erfolgen.
quelle