Strom sparender Computereinsatz hilft nicht zuletzt auch Kosten zu senken. ADMIN 02/2011 geht der Frage nach, was Administratoren tun können, damit ihre ... (mehr)

Viele Hosts

Seine Leistungstärke spielt Func (siehe Abbildung 1) vor allem dann aus, wenn es darum geht, eine Vielzahl von Systemen zu verwalten. Hierzu können Sie auf die gewohnte Shell-Dateinamen-Expansion ("Globbing") zurückgreifen. Es ist allerdings darauf zu achten, das Dateinamensmuster in Hochkommas zu setzen.

Abbildung 1: Überblick der Func-Features in einer Konferenz-Präsentation.

Das folgende Beispiel fragt alle LDAP-Systeme aus der Domäne »virt.tuxgeek.de« nach der eingesetzten Kernel- Version ab, ausgenommen sind Systeme die im Hostnamen den String »slave« enthalten:

# func --exclude "*slave*" "*ldap*.virt.tuxgeek.de" show hardware kernelVersion
ldap1-ms.virt.tuxgeek.de:
2.6.18-128.el5
ldap2-ms.virt.tuxgeek.de:
2.6.18-128.el5

Func bietet ebenfalls die Verwaltung von Maschinen über Gruppen an. Hierfür können Sie entweder die Datei »/etc/func/groups« manuell editieren und die gewünschten Gruppen anlegen oder die Arbeit an Func übergeben. Das folgende Beispiel erzeugt die Gruppe LDAP-Server mit den beiden Hosts »ldap1« und »ldap2« , zeigt das Ergebnis an und kopiert schließlich die Datei »/etc/hosts« auf alle Systeme der Gruppe (Listing 4).

Listing 4

LDAP-Verwaltung

 

API für mehrere Sprachen

Am interessantesten wird es,wenn man auf die API des Management-Tools zurückgreift. Grundsätzlich können Sie jede Methode, die Sie auf Kommandozeile aufrufen, ebenfalls als API-Funktion ansprechen. Entsprechende Bindings existieren beispielsweise für die Skriptsprache Python. Listing 5 zeigt ein sehr einfaches Beispiel, das auf allen Systemen der LDAP-Gruppe überprüft, ob der LDAP-Service dort aktiv ist oder nicht und im Fehlerfall den Service nachstartet:

Listing 5

Func-API

 

# python check-ldap.py
ldap1.virt.tuxgeek.de LDAP-Server is UP
ldap2.virt.tuxgeek.de LDAP-Server is DOWN - starting it up
ldap2.virt.tuxgeek.de LDAP-Server is now UP

Wer beim Aufruf seines Editors direkt Spaß bekommen hat und nun eigene Module entwickeln möchte – kein Problem. Unter [3] findet sich eine recht ausführliche Anleitung, wie sich dies mithilfe von Python bewerkstelligen lässt.

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019