Viele Menschen haben Missverständnisse über Ansible und die von ihnen unterstützten Plattformen und glauben, dass es nur für Ubuntu zugänglich ist. Ansible kann jedoch auch zur Steuerung von Windows -PCs, verbundenen Geräten, Internet -Sicherheitsgeräten, Webdiensten, Anwendungen und anderen Dingen verwendet werden. Wir werden über die Verwendung von Windows mit Ansible in diesem Tutorial sprechen.
Das Ansible -Konfigurationstool kann wesentliche Aufgaben in Windows -Installationen verwalten und ausführen, z. B. Remote -Manager mit WinRM- und Schutzwarnungen. Obwohl Microsoft Controller Ubuntu in Ansible operieren müssen, können sie ihre Geräte trotz vorheriger Erfahrung mit Ubuntu -Terminals verwalten und verwalten. Microsoft Controller können Microsoft Windows auf eine Weise verwalten, die für sie aufgrund der nativen Windows -Funktionalität relevant ist, die Microsoft Windows PowerShell Remote verwendet. Erweiterte Lösungen zur Steuerung und Verwaltung von Microsoft Windows -Plattformen sind in der Ansible -Softwareplattform für das Organisationsmanagement enthalten. Sie können Bereitstellungen, Softwareaktivierung und Systemintegration für eine Multivendor -Umgebung mit Hilfe der Ansible -Softwareplattform automatisieren.
In Ansible gelten die meisten Terminologie und Richtlinien zur Verwaltung von Remote -Hosts von Linux sowie diese Terminologien gleichermaßen für Microsoft Windows -Hosts. Es gibt jedoch immer noch bestimmte Besonderheiten, wenn es sich um Variablen von Ansible wie Pfadabscheider oder OS-spezifische Aktivitäten handelt. WinRM muss eingerichtet werden, um den Zugriff auf Windows -Systeme vom Ansible Controller zu ermöglichen. Sie können mithilfe von Ansible für Microsoft Windows in Ihren Entwicklungs- oder Überwachungseinstellungen eingeleitet werden, indem Sie das PowerShell -Skript ausführen. Jeder autorisierte Microsoft Windows -Host wird vom Skript für WinRM konfiguriert.
Voraussetzungen:
Bitte stellen Sie sicher, dass Sie immer diese Anforderungen hatten:
Ausführung: Wir werden Ansible Controller Version 2 verwenden.9. Um Änderungen vorzunehmen, benötigen wir einen Steuerserver für Ansible, und in diesem Fall verwenden wir Ansible als Controller mit der IP -Adresse 192.168.5.220.
Windows Host: Wir verlangen von ihnen, dass sie mit den lokalen Wirten interagieren. Darüber hinaus verwenden wir den Windows -Host in dieser Instanz als Ziel -Remote -Server für die Dauer des Vorgangs.
Python: Ihr Ansible Controller -Host -Gerät wird so konfiguriert, dass er Python ausführt. Python verwendet Version 2, während Version 3 auch eine Option ist.
Paket: Der Windows -Host -Server wird so konfiguriert, dass das PIP -Paket installiert wird.
Windows Workstation: Sie müssen Zeit an einer Windows-Konsole verbringen, während wir den Host vorkonfigurieren, den Microsoft verwendet.
Power Shell: Der Windows -Server kann PowerShell Remote -Zugriff steuern.
Beispiel: Erstellen eines Microsoft Windows -Host
In diesem Beispiel werden wir zunächst für den Ziel -Remote -Host arbeiten, der Windows_Host ist. Dann werden wir mit Ansible arbeiten, damit der Benutzer keine Verwirrung gibt.
Zielfenster_Host
Für Ansible sind keine Server erforderlich. Sowohl SSH- als auch Windows Remote Manager sind also mit Windows WinRM kompatibel. WinRM bezeichnet Windows Remote Manager und es wird aufgrund der engen Integration von WinRM häufig über SSH verwendet.
PS C: \ Windows \ System32> WinRM GET WinRM/CONFORT/ServiceRichten Sie die WinRM ein
Danach werden wir die WinRM in Microsoft Windows aktualisieren. Die Ansible -Software verfügt. Obwohl wir nur grundlegende Anmeldeinformationen verwenden möchten, würden wir es vorziehen, etwas sichereres zu verwenden, um darauf zuzugreifen. Im Folgenden finden Sie die Schritte für das Update des WinRM:
Speichern des Befehlspfads
Wir werden die Befehle verwenden. Dafür starten wir zuerst das Microsoft PowerShell -Terminalfenster, damit wir den Befehlsweg speichern können.
PS C: \> $ url = "https: // raw.GithubuSercontent.com/ansible/ansible/Devel/Beispiele/Skripte/Wir werden die folgende URL verwenden, damit wir die Befehle dort problemlos speichern können:
PS C: \> $ file = "$ env: temp \ configurerEmotingforsible.PS1 "Laden Sie die Befehle herunter und präsentieren Sie sie lokal
Jetzt werden wir die Befehle herunterladen und diese Befehle in einem lokalen Dokument anzeigen.
PS C: \> (New -Object -Type -System -System.Netz.Webclient).DownloadFile ($ url, $ file)Führen Sie die Befehle aus
Um auszuführen, ist der Befehl der Pfad, der die Ausführung des Dokuments zeigt.
PS C: \> PowerShell.exe -executionPolicy Bypass -file $ DateiNachdem wir den obigen Weg geschrieben haben, erhalten wir die folgende Ausgabe in der PowerShell in Windows.
Überprüfen Sie die WinRM -Konnektivität
Dies soll überprüfen, ob die Verbindung des WinRM mit Ansible gebaut wird oder nicht.
PS C: \> WinRM Enumerate WinRM/Konfiguration/HörerWie gezeigt, sind Ansible und WinRM miteinander kompatibel.
Ansible Controller
Dies ist die Arbeit im Ansible -Tool und die Befehle werden vom Controller verwendet, damit die Informationen konfiguriert und die Verbindung zwischen Windows und Ansible erstellt werden können. Erstens werden wir das Spielbuch erstellen.
Erstellen des Spielbuchs
Jetzt verwalten wir die Bereitstellung und Aktualisierung von Paketen. Lassen Sie uns zuerst ein Spielbuch in Ansible erstellen:
[root@master ansible]# nano Win_Ping.YMLHier ist die Erklärung des Ansible Playbooks. Wenn das Playbook Win_Ping.YML wird erstellt, dann wird es in das neue Terminal von Ansible gestartet. Hier schreiben wir die Hosts und die Aufgabe, die wir ausführen möchten. In Win_Ping.YML, wir nennen vor dem Spielbuch das Spielbuch, das wir im Spielbuch machen möchten.
Dann schreiben wir den Namen der Hosts, da wir die Daten des Microsoft Windows -Hosts konfigurieren. Der Name des Zielhosts lautet also "windows_host". Anschließend haben wir die Option „Falsch“ an die Option Cause_fact des Playbooks übergeben, damit die Informationen des Ziel Windows -Hosts im Spielbuch nicht abgerufen werden. Als nächstes haben wir die Aufgaben im Spielbuch aufgeführt. Wir möchten die Verbindung zwischen dem Ansible Playbook Controller und dem Ziel Windows -Host überprüfen, damit wir den Spielbuchnamen in der Aufgabe übergeben werden.
- Name: Win_Ping Modul -TestErstellen der Inventardatei
Nach der Erstellung und Beendigung des Spielbuchs erstellen wir die Inventardatei, damit wir die Informationen zum Windows -Host hier bereitstellen. Wir schreiben die IP -Adresse, den Namen des Benutzers, das Kennwort, die Verbindungsname, die Portnummer und die WinRM -Validierung. Dies ist die Anweisung, die wir schreiben werden, um die Inventardatei in Ansible zu erstellen.
[root@master ansible]# nano Win_Ping.yml alle:Nachdem wir die erforderlichen Informationen über den Ziel Windows -Host bereitgestellt haben, werden wir das Spielbuch zusammen mit der Inventardatei ausführen. Schreiben Sie dazu den Befehl unten:
[Root@Master Ansible]# Ansible-Playbook Win_Ping.YML -ich Host.YMLWie gezeigt, wurde die Verbindung zwischen dem Ansible -Controller und dem Windows -Host erfolgreich hergestellt.
Abschluss
Mit dem WinRM -Paket in Ansible haben wir gelernt, wie man Microsoft Windows in dieser Vorlesung automatisiert. Wir haben ausführlich beschrieben, wie ein Microsoft Windows -Host für Ansible eingerichtet wird. Ansible ist ein Tool, das historisch gesehen mit Linux in Verbindung gebracht wurde, obwohl es mit Microsoft Windows auch mühelos verwendet werden kann.