10 Juni 2014

Automatische Installationen mit Foreman und Puppet

Im ersten Teil wurde Foreman installiert und konfiguriert. Damit ist es bereits möglich, Systeme mit Puppet zu konfigurieren und Reports einzusehen. Jetzt folgt die Konfiguration des Provisionings, um auch neue Systeme installieren zu können.

  1. Subnet konfigurierenUm Installationen zu ermöglichen, muss zunächst das verwendete IP-Subnet in Foreman konfiguriert werden. Dazu wird unter Infrastructure -> Subnets der Button New subnet betätigt, der Dialog ausgefüllt und bestätigt. Hierbei ist es wichtig, dass Network address und Network mask entsprechend der eigenen Infrastruktur ausgefüllt werden. Außerdem muss auf dem Reiter Proxies ein TFTP-Proxy ausgewählt werden. („foreman“).
  2. Provisioning Templates für Ubuntu konfigurierenNachdem Puppet im ersten Teil dieser Anleitung erstmals ausgeführt wurde, kennt Foreman Ubuntu 12.04.4 LTS als Betriebssystem. Dies muss nun mit verschiedenen Templates verknüpft werden. Dazu müssen unter Hosts -> Provisioning Templates nacheinander die folgenden Templates editiert werden:
    • Preseed default
    • Preseed default PXELinux
    • Preseed finish

    Dort ist jeweils unter „Association“ der Haken vor „Ubuntu 12.0.4.4“ zu aktivieren und die Änderung mit „Submit“ zu übernehmen.

  3. Architektur mit dem Betriebssystem verknüpfen:Dieser Vorgang muss dann gleich noch einmal für die System-Architekturen unter Hosts -> Architekturen wiederholt werden: Anklicken, Haken aktivieren, mit Submit betätigen.
  4. Standard-Einstellungen für Ubuntu-Installation festlegenIm Bereich „Hosts -> Operating Systems“ können die Betriebssysteme verwaltet werden, die mit Foreman installiert werden sollen.Dort ist zur Zeit nur Ubuntu bekannt, das noch mit ein paar Einstellungen versehen werden muss, um es verwenden zu können. Nach dem Anklicken sind nacheinander die gewünschten Architekturen im Reiter „Operating System“, „Preseed default“ im Reiter „Partition Table“ und „Ubuntu mirror“ unter „Installation media“ zu wählen. Schließen müssen im Reiter „Templates“ noch die Templates aus Schritt 1 für „provision“, „PXELinux“ und „finish“ gewählt werden.
  5. DHCP konfigurierenFür die automatische Ubuntu-Installation wird ein DHCP-Server für das in Schritt 1 konfigurierte Subnet benötigt.Dieser kann mit der Konfiguration
    ignore unknown-clients;

    so konfiguriert werden, dass er nur an explizit konfigurierte Systeme IP-Adressen vergibt (benötigt also nicht zwingend einen IP-Pool). Außerdem werden die folgenden Einstellungen in der subnet-Deklaration benötigt:

    next-server <IP des Foreman-Systems>;
    filename "pxelinux.0";
  6. Neuen Host provisionieren:Nachdem der DHCP-Server konfiguriert wurde, ist Foreman prinzipiell in der Lage Systeme zu provisionieren. Dafür sind pro System folgende Schritte erforderlich:
    1. Eintragen des Systems mit Mac-Adresse in die DHCP-Konfiguration:
       host <hostname> { 
         hardware ethernet <mac-adresse>;
         fixed-address <ip> 
       } 
      
    2. Anlegen eines Hosts in ForemanDies geschieht, indem unter Hosts -> All Hosts der Button New host betätigt wird.Der nachfolgende Dialog ist weitestgehend selbsterklärend. Wichtig dabei ist, dass Environment, Puppet CA und Master (foreman), MAC-Adresse und Domain auf dem Reiter Network sowie alle Einstellungen im Reiter Operating System ausgefüllt werden.
    3. Start des Systems und Wahl von PXE-Boot als Bootoption Zu guter Letzt kannn das zu installierende System gestartet und dazu bewegt werden, per PXE zu booten. Die Installation erfolgt dann vollautomatisch.

    Damit wären wir am Ende unserer zweiteiligen Anleitung. Nachdem die vorherigen Schritte befolgt wurden, besteht eine voll funktionsfähige Foreman-Installation, mit der Systeme installiert und konfiguriert werden können. Damit ist es theoretisch möglich, ein ganzes Firmennetzwerk vollautomatisch zu provisionieren – auch wenn dies natürlich weiteres Zutun erfordert.

    Für weiterführende Informationen sei auch hier wieder auf die Puppet- und Foreman-Dokumentation verwiesen, die umfassende Informationen hinsichtlich der Entwicklung von Puppet-Manifesten und der Anwendung von Foreman bereit halten. Bei Fragen stehen wir aber auch gerne zur Verfügung.

     

    Dieser Artikel wurde ursprünglich geschrieben von Patrick Schönfeld.

Kategorien: HowTos
Tags: Foreman Puppet

SH

über den Autor

Sascha Heuer


Beitrag teilen: