Zusammenfassung
- Ansible ist ein DevOps-Tool, das PowerShell stark ersetzt
- RunDeck als grafische Oberfläche ist praktisch
- Einige Leute führen RunDeck + Ansible zusammen aus
Clustersh
Zum Senden von Remote-Befehlen an mehrere Server würde ich für Anfänger Clustersh empfehlen
So installieren Sie clusterssh
in Debian:
apt-get install clusterssh
Ein weiteres Cluster-Tutorial :
ClusterSSH ist ein Tk / Perl-Wrapper für Standard-Linux-Tools wie XTerm und SSH. Als solches läuft es auf nahezu jedem POSIX-kompatiblen Betriebssystem, auf dem die Bibliotheken existieren - ich habe es unter Linux, Solaris und Mac OS X ausgeführt. Es benötigt die Perl-Bibliotheken Tk (perl-tk unter Debian oder Ubuntu). und X11 :: Protocol (libx11-protocol-perl unter Debian oder Ubuntu), zusätzlich zu xterm und OpenSSH.
Ansible
Als Remote-Framework für die Verwaltung mehrerer Systeme ist Ansible eine sehr interessante Alternative zu Puppet. Es ist schlanker und benötigt keine dedizierten Remote-Agenten, da es über SSH funktioniert (es wurde auch von RedHat gekauft).
Die Playbooks sind umfangreicher als die Befehlszeilenoptionen.
Um Ansible zu verwenden, müssen Sie jedoch eine einfache Installation durchführen und die Textdatei für die Client-Liste einrichten.
Danach ist es so einfach, einen Befehl auf allen Servern auszuführen:
ansible all -m command -a "uptime"
Die Ausgabe ist außerdem sehr gut formatiert und nach Regeln / Servern getrennt. Während der Ausführung im Hintergrund kann die Ausgabe in eine Datei umgeleitet und später abgerufen werden.
Sie können mit einfachen Regeln beginnen, und die Verwendung von Ansible wird interessanter, wenn Sie unter Linux wachsen und Ihre Infrastruktur größer wird. Als solches wird es so viel mehr tun als PowerShell.
Als Beispiel ein sehr einfaches Playbook zum Upgrade von Linux-Servern, das ich geschrieben habe:
---
- hosts: all
become: yes
gather_facts: False
tasks:
- name: updates a server
apt: update_cache=yes
- name: upgrade a server
apt: upgrade=full
Es sind auch viele Module definiert, mit denen Sie einfach umfassende Richtlinien erstellen können.
Modulverzeichnis - Ansible Dokumentation
Es hat auch ein interessantes offizielles Hub / "soziales" Netzwerk von Repositories, um nach bereits gesetzten Ansible Policies der Community zu suchen. Ansible Galaxy
Ansible ist auch weit verbreitet, und Sie werden viele Projekte in Github finden, wie dieses von mir für das FreeRadius-Setup .
Ansible ist ein kostenloses Open-Source-Framework, hat aber auch eine kostenpflichtige Web-Panel-Oberfläche, Ansible Tower, obwohl die Lizenzierung ziemlich teuer ist.
Heute, nachdem RedHat es gekauft hat, hat Tower auch die Open-Source-Version AWX .
Als Bonus ist Ansible auch in der Lage, Windows-Server zu verwalten, obwohl ich es nie dafür verwendet habe.
Es ist auch in der Lage, Netzwerkgeräte (Router, Switches und Firewalls) zu verwalten, was es zu einer sehr interessanten Lösung als schlüsselfertige Automatisierungslösung macht.
Wie installiere ich Ansible?
Rundeck
Wiederum empfehle ich Rundeck , um ein Remote-Framework zu verwenden, das einfacher ist, aber nicht so leistungsfähig wie Ansible .
Es ist eine sehr leistungsstarke grafische Benutzeroberfläche für mehrere Benutzer / Anmeldungen, mit der Sie einen Großteil Ihrer alltäglichen Aufgaben automatisieren und Sysops oder Helpdesk-Mitarbeitern verwässerte Ansichten geben können.
Wenn Sie die Befehle ausführen, erhalten Sie auch Fenster mit einer nach Server / Task aufgeschlüsselten Ausgabe.
Es kann mehrere Jobs im Hintergrund nahtlos ausführen und Sie können den Bericht und die Ausgabe später anzeigen.
So installieren Sie RunDeck
Bitte beachten Sie, dass es Leute gibt, die Ansible + RunDeck als Webinterface ausführen. Nicht alle Fälle sind dafür geeignet.
Es versteht sich auch von selbst, dass die Verwendung von Ansible und / oder RunDeck als Form oder Teil der Infrastrukturdokumentation ausgelegt werden kann und im Laufe der Zeit die Replikation und Verbesserung der Aktionen / Rezepte / Playbooks ermöglicht.
Als letztes würde ich, wenn ich von einem zentralen Befehlsserver spreche, einen erstellen, der nur für die Aufgabe geeignet ist. Eigentlich ist der Fachbegriff eine Sprungbox. "Sprungkästen" verbessern die Sicherheit, wenn Sie sie richtig einrichten .