Wie dokumentieren Sie Windows Server-Konfigurationen?

15

Ich komme aus einem Unix-Hintergrund, in dem die Dokumentation der Konfiguration eines Dienstes (z. B. E-Mail) so einfach sein kann, dass Sie ein paar Textkonfigurationsdateien und einen oder zwei Absätze mit erläuterndem Text herunterladen.

Angesichts der Dokumentation der Konfiguration vieler (50+) Windows-Boxen ist es mir ein Rätsel, wie schwierig es ist, einen Überblick über eine Dienstkonfiguration zu erhalten. Ich baue diese Maschinen von Grund auf neu und stehe vor der Notwendigkeit, die Konfiguration auf allen Maschinen konsistent zu halten. Ich werde alle Server abbilden, auf denen Ghost oder ähnliches verwendet werden kann, aber die tatsächliche Konfiguration von Diensten wie AD oder Exchange ist ein so manueller Point & Click-Prozess, dass es leicht zu Inkonsistenzen kommen kann.

Wie schlagen die Leute vor, eine Build-Dokumentation zu erstellen, die die Konsistenz gewährleistet? und zweitens, wie dokumentiert man die Konfiguration, ohne auf jede Menge Screenshots usw. zurückzugreifen? Ich denke darüber nach, Camtasia zu verwenden, um ein Video des Konfigurationsprozesses aufzunehmen, was lächerlich erscheint.

Danke für Ihre Hilfe!

Bearbeiten: Einige der folgenden Antworten waren sehr hilfreich und ich denke, sie werden mich dahin bringen, wo ich gerne sein würde. Insbesondere die Verwendung von Antwortdateien für skriptfähige Installationen trägt zur Erstellung konsistenter Installationen bei, und einige der WMI-Tools sind sehr nützlich für die Dokumentation (LANsweeper, SYDisproject usw.).

Was ich wirklich wirklich will, ist ein Tool, das die gesamte Konfiguration in ein für Menschen lesbares / editierbares Format ausspuckt und es auch wieder einsaugt. Unix hat dies im Grunde immer mit selbstdokumentierenden Konfigurationsdateien gemacht, daher ist es eine große Enttäuschung, in einem vermeintlich modernen Betriebssystem nicht dieselbe Funktion zu haben!

John
quelle
+1, da ich das gleiche Problem teile. Jede Menge Screenshots und TXT-Dateien für mich im Moment :(
Chris Driver
1
@ Chris: Sie schreiben nicht hart genug, dann ...> lächeln <
Evan Anderson

Antworten:

7

Sie sagen, Sie erstellen die Systeme von Grund auf neu. Es scheint also, dass Sie mehr an der automatisierten Einrichtung interessiert sind, als dass Sie die Konfiguration von einem "Live" -System übernehmen.

Die Installation jeder Windows-Version seit Windows 2000 war relativ einfach über "Antwortdateien" zu automatisieren.

Die Installation von Active Directory (dcpromo.exe) kann über eine Antwortdatei erfolgen.

Objekte können aus CSV / LDIF-Dateien in Active Directory importiert oder programmgesteuert über ein Skript hinzugefügt werden. Wenn Sie eine einzelne Domäne erstellen, müssen diese Objekte nur einmal importiert werden, und der CSV / LDIF-Import ist wahrscheinlich in Ordnung. Wenn Sie mehrere Domänen oder mehrere Gesamtstrukturen erstellen, empfiehlt es sich, ein Skript zu schreiben (da sich die eindeutigen Namen von Objekten auf Domänenbasis und Gesamtstrukturbasis unterscheiden).

Die Installation jeder Exchange-Version seit Exchange 2000 kann mit einer Antwortdatei automatisiert werden.

In einer Active Directory-Umgebung kann mithilfe von Gruppenrichtlinien eine hohe Konfigurationskonsistenz erzielt werden, um Einstellungen auf Computern durchzusetzen. Ich arbeite für das Ziel, alle Nicht-Standard-Konfigurationseinstellungen in Bezug auf das von der Gruppenrichtlinie festgelegte Betriebssystem so festzulegen, dass ich beim Bereitstellen eines neuen Servers keine Konfigurationselemente von Hand ankreuze (zulassen von 'Remote Desktop', Ausführen von 'Hinzufügen / Entfernen') Windows Components '/ SYSOCMGR, um die geladenen Windows-Komponenten zu ändern, lokale Dateisystem- und Registrierungsberechtigungen anzuwenden usw.).

Über die Erstinstallation der Produkte hinaus können Sie einen langen Weg zur Konsistenz zurücklegen, wenn Sie wissen, wo jedes Produkt seine Konfiguration speichert. Skripte zur Manipulation des Dateisystems und der Registrierung unterscheiden sich unter Windows nicht wesentlich von der Manipulation von Konfigurationsdateien auf einem * nix-Computer. Wo eine Manipulation der Registrierung nicht angebracht ist, gibt es normalerweise Befehlszeilenprogramme, mit denen die meisten anderen Konfigurationsaufgaben ausgeführt werden können (netsh, der Befehl "net", Resource Kit-Tools usw.). Ich bin mir ziemlich sicher, dass die meisten Konfigurationsaufgaben, auf die Sie stoßen werden, bereits automatisiert und von jemandem skriptfähig gemacht wurden, wenn Sie genau genug hinschauen.

re: disk imaging - Wenn Sie über identische Hardware verfügen, können Sie Disk Imaging durchführen, nachdem Sie mit dem SYSPREP-Tool die Sicherheits-ID (SID) des Computers zurückgesetzt und für das Imaging vorbereitet haben. Wenn Ihre Hardware jedoch nicht konsistent ist, würde ich die Verwendung von Disk Imaging empfehlen. Ihr Serverhersteller sollte, sofern es sich um einen Markennamen handelt, eine "Story" für die automatisierte Betriebssystembereitstellung haben, die die Bereitstellung der Treiber für die Hardware (OpenManage Server Assistant, SmartStart usw.) umfasst.

Evan Anderson
quelle
Das sieht sehr hilfreich aus, danke Evan - die automatische Installationsoption könnte definitiv dazu beitragen, die Konsistenz der Installation zu gewährleisten, das werde ich untersuchen. Ich werde in der Tat ein Vendor-Tool verwenden, um Images zu erstellen, und die Hardware ist identisch, so dass es keine Schwierigkeiten gibt.
John
Ideal wäre eine Möglichkeit, die Installationsantwortdatei automatisch von einem laufenden Computer aus zu erstellen. Ist dies möglich? Mann, ich weiß nicht, wie ihr euch mit diesem Zeug abgefunden habt ;-)
John
1
@ John: Es ist nicht wirklich so schlimm. Sobald Sie den Dreh bekommen verwenden Registry Manipulation Befehlszeile und einige der verschiedenen Spezialkommandozeilen - Tools (dnscmd.exe von den Support - Tools, netsh.exe, etc.) kann man wirklich einen tun LOT aus der Kommandozeile (und aus Skripten), um wiederholbare Konfigurationen zu erhalten. Ich habe mein Leben mit "echter" Software in der Unix-Welt (Xenix-ick) begonnen und bin mit der Art und Weise, wie Windows Dinge macht, einverstanden. Die Registrierung fühlt sich für mich wie ein / etc-Verzeichnis an. Microsoft hat einen bekommen LOT auch Admin den letzten yeras besser zu Befehlszeile.
Evan Anderson
Mir fällt ein, dass Windows sinnvolle Schnittstellen bietet, um eine laufende Konfiguration zu dokumentieren und einige Teile der Konfiguration ausspucken kann (wie das erwähnte GPO-Beispiel), aber es gibt keine Möglichkeit, diese zu kombinieren, dh ich möchte, dass die Maschine alle ihre Teile ausspuckt config in einer für Menschen lesbaren / bearbeitbaren Form, die es mir ermöglichen würde, es mit ein paar Änderungen einfach auf einen anderen Computer zu übertragen. Unix hat dies für immer getan. Es ist erstaunlich, dass Sie dies in Windows nicht tun können. Vielen Dank für Ihre Hilfe, zumindest kann ich irgendwie zu dem gelangen, was ich will!
John
5

Eine weitere Option für "Live" -Systeme ist SYDI ( http://sydiproject.com/ ).

Über die Projektwebsite: "Auf der einfachsten Ebene besteht SYDI aus einer Sammlung von Skripten, die Informationen von Ihren Servern und Netzwerken sammeln und die Daten dann in einen Bericht schreiben.

Die Dokumentation eines Netzwerks kann wie ein riesiges Projekt erscheinen. SYDI hilft Ihnen beim Einstieg. Anstatt Informationen wie IP-Adressen, Betriebssystemversion und Hardwarekonfiguration manuell zu erfassen, erfasst das Skript diese automatisch und kann sie direkt in Word (oder XML) schreiben. "

Marcos
quelle
2

Viele Windows-Konfigurationen werden tatsächlich auf vernünftige und logische Weise und an vernünftigen und logischen Orten gespeichert. Wenn Sie mit festem Unix-Hut darauf kommen, versuchen Sie wahrscheinlich einen Unix-ähnlichen Ansatz zu wählen, um diese Informationen zu sammeln, was Sie sehr schnell in ein Chaos führen wird.

Beispiel für Gruppenrichtlinien: Um die GPO-Konfiguration zu dokumentieren, können Sie mit gpmc (1) lesbare Konfigurationsdokumente und (2) maschinell verwendbare Exporte Ihrer aktuellen GPO-Konfiguration erstellen. Dies sind nur ein paar Mausklicks und Sie haben alles in einem schönen Paket.

Für die Serverkonfiguration können Sie WMI-Skripts verwenden, um alle vorstellbaren Informationen im gewünschten Format auszugeben, ohne sich in der Nähe von AD, Dateisystem oder Registrierung befinden zu müssen. Sie können sogar kostenlose Tools wie LANSweeper ( http://www.lansweeper.com/ ) verwenden, um den Prozess zu automatisieren und das Endergebnis auf einer Webseite für alle sichtbar zu machen.

Ein weiterer zu beachtender Punkt, der oben angesprochen wurde, sich jedoch wiederholt, ist, dass Server in einer AD-Umgebung nicht isoliert voneinander existieren. Das Konfigurieren von AD, Exchange und Gruppenrichtlinienobjekten ist ein einmaliger Vorgang. Beispielsweise müssen Sie Gruppenrichtlinienobjekte nicht auf jedem Domänencontroller separat konfigurieren.

Maximus Minimus
quelle
Es gibt eine Menge Reifen, durch die man springen muss, um die einfachsten Dinge zu erreichen, wie es scheint. Mein Setup ist insofern ungewöhnlich, als ich über mehrere ähnliche, separate AD-Domänen verfüge, die völlig unabhängig voneinander sind, aber zur Vereinfachung der Verwaltung sehr ähnliche Konfigurationen gemeinsam verwenden müssen. Daher besteht der Wunsch nach einfach zu dokumentierenden, wiederholbaren Konfigurationen. Es scheint einfach zu sein, ein Konfigurationsdokument mit WMI zu erstellen, wenn ein Server ausgeführt wird. Es ist jedoch nicht so einfach, die gesamte Konfiguration so auszuspucken, dass sie schnell bearbeitet und auf einen anderen Server eingelesen werden kann (wie dies bei Unix der Fall ist) behandelt dieses Zeug für immer).
John
2

Wir haben einige Software, die IIS, Windows Server, SQL Instances, Exchange dokumentieren kann.

Es gibt eine KOSTENLOSE Version, die möglicherweise einige Ihrer Anforderungen abdeckt.

http://centrel-solutions.com/xiaconfiguration

Vielen Dank,

Dave


quelle
1

Ich habe vor kurzem angefangen, mit Spiceworks zu spielen, und ich muss zugeben, dass es nach dem FM-Prinzip funktioniert.

Solange Ihre Computer domänenauthentifiziert sind, kümmert sie sich um alles. Verwenden Sie es zumindest, um eine Dokumentation in einer Form zu erstellen, mit der Sie besser vertraut sind.

Matt Simmons
quelle
Vielen Dank für den Vorschlag, Matt, es sieht so aus, als wäre dies ein nützliches Werkzeug zum Erstellen und Verwalten von Inventaren laufender Netzwerke. Es scheint jedoch nicht in der Lage zu sein, mir beispielsweise die vollständige Konfiguration eines Exchange-Servers so zu geben, dass er schnell wiederhergestellt werden kann. Ich muss sagen, ich bin erstaunt, dass dies so schwer zu tun scheint. Wie bereits erwähnt, in der Unix-Welt ein paar Textkonfigurationsdateien und Sie können loslegen. Besorgt über die Konsistenz? Einfach die 2 Configs unterscheiden! Einfach.
John
@ John: Die Konfiguration für Exchange wird beispielsweise in Active Directory und nicht auf dem Exchange Server-Computer gespeichert. Wenn Sie einen Computer "neu erstellen" müssen, ist die Konfiguration bereits in AD vorhanden. Das Exportieren und "Vergleichen" der Konfiguration für serverspezifische Einstellungen für Exchange wäre nicht allzu schwierig. Viele Windows-Administratoren schauen nicht "unter die Haube" und stellen fest, dass der Großteil der Konfiguration ihrer Server-Computer nur aus einer Reihe von Schlüssel-Wert-Paaren im Dateisystem, in der Registrierung oder im Active Directory besteht.
Evan Anderson
Dank Evan ist es sicherlich viel komplexer als das Abrufen einer Konfigurationsdatei und das Ausführen eines Diffs, wenn die Konfiguration auf das Dateisystem, die Registrierung und AD aufgeteilt werden kann. Wie kann man diese Informationsflut auf kohärente und nützliche Weise zusammenführen?
John