Neben unserer internen IT-Infrastruktur verfügen wir über rund 500 Linux-Computer, auf denen unsere Dienste für die Online-Welt gehostet werden. Sie sind in einer Reihe von Clustern wie Datenbank An, Produkt An, NFS, Backoffice usw. zusammengefasst. Darüber hinaus werden sie von einem externen Anbieter gemäß unseren Spezifikationen und Anforderungen verwaltet.
Wir haben jedoch große Probleme bei der (Web-) Softwareentwicklung, dem Roll-out und der Bereitstellung - insbesondere, weil die Entwicklungs- und Staging-Umgebungen fast nichts mit den Live-Systemen gemeinsam haben (ich erspare die bösen Details.) .
Daher habe ich versucht, virtuelle Maschinen zu erstellen, die verschiedenen Live-Systeme so genau wie möglich zu kopieren und sie darauf vorzubereiten, z. B. eine Verbindung zu den Entwicklungsdatenbanken anstelle der "realen" für Entwickler transparent herzustellen (sie sind es nicht root
). Das funktioniert ziemlich gut, aber ...
Ich habe mich gefragt, wie man diese Systeme remote und in großen Mengen verwalten kann . Gibt es eine Softwarefamilie, die mir nicht bekannt ist? Oder zumindest einige Techniken oder Prinzipien, mit denen man vertraut sein sollte?
Wir würden jedem Entwickler eine Reihe von Bildern zur Verfügung stellen, die lokal ausgeführt werden sollen (VirtualBox). Die QS-Abteilung. würde virtuelle Cluster (XEN oder Hyper-V) erhalten. Wenn ich ein zusätzliches Servermodul bereitstellen, eine neue Datenbankverbindung umleiten oder einfach alles aktualisieren möchte, was vom Paketmanager bereitgestellt wird ... wie könnte ich das möglicherweise tun, ohne gezwungen zu sein, mich bei jedem System und / oder anzumelden Bitten Sie meine Kollegen, ein Fixture-Skript herunterzuladen und auszuführen?
Ich glaube, es gibt viele Lösungen. Irgendwie bin ich zu dumm, um die richtigen Schlüsselwörter in die Suchmaschinen einzugeben ... Oder ist dieses Problem nicht so trivial, wie es sich anhört?
Für die Aufzeichnung:
- Auf fast allen Systemen wird Debian GNU / Linux 6.x "Squeeze" ausgeführt.
- Kein Entwickler ist gezwungen, ein bestimmtes Betriebssystem an seiner Workstation zu verwenden
- Das Budget ist natürlich begrenzt, aber nicht zu klein, um proprietäre Software zu kaufen
- Eine Lösung, an der unser oben genannter Anbieter beteiligt wäre, wird bevorzugt