Im Webinterface von Foreman fügen Sie in der Reiterkarte "Hosts" ein neues System hinzu. Dieses bekommt neben der passenden Netzwerkkonfiguration nun auch das zuvor definierte Betriebssystem zugewiesen. Danach erscheint das System in der Übersicht und mit einem Klick auf "Deploy" legen Sie die Installationsdateien auf dem Foreman-Server an, sodass diese zum Installationszeitpunkt zur Verfügung stehen. Dazu gehört neben der passenden TFTP-Konfigurationsdatei
»/var/lib/tftpboot/pxelinux.cfg
«
ebenfalls der Installer
»var/lib/tftpboot/boot
«
für das zuvor ausgesuchte Betriebssystem. Treten an dieser Stelle Probleme auf, so überprüfen Sie, ob der Benutzer, unter dem der Smart-Proxy (foreman-proxy) läuft, über die notwendigen Schreibrechte auf den beiden genannten Verzeichnissen verfügt.
Listing: Erweitern der Default-Netzwerkkonfiguration
default 9bd6b60c-9645-40a0-8448-08dc4afa28bb host mac='52:54:00:bb:31:97' name='node1' ip='192.168.122.125'/>
Um nun die Installation zu beginnen, erzeugen Sie mittels
»virt-install
«
oder dem grafischen Virt-Manager einen neuen Container für die Maschine. Es ist darauf zu achten, dass dieser die MAC-Adresse erhält, für die Sie zuvor ein Mapping in der libvirt-Konfigurationsdatei eingerichtet haben. Starten Sie nun das System, so sollte die Installation beginnen. Erste Berichte über den Host stehen im Anschluss an die Installation über das Foreman-Webinterface zur Verfügung.
Die komplette Integration von Puppet würde den Umfang des Workshops sprengen, daher erfolgt an dieser Stelle lediglich eine kleine Anleitung, wie Sie Puppet-Module auf dem Puppet-Master der Foreman-Installation integrieren. Hierzu ist in der gewünschten Umgebung zuerst das entsprechend gewünschte Puppet-Modul zur Verfügung zu stellen. In diesem Beispiel handelt es sich um das NTP-Modul:
puppet module install -i /etc/
puppet/environments/production/
modules saz/ntp
Um das Modul in Foreman bekannt zu machen, lassen Sie dieses über den Menüpunkt "Configure / Environment" vom Puppet-Master ein. Dieser Schritt erfolgt über den Button "Import from Master". Danach stehen die einzelnen Klassen des Moduls zur Verfügung und die Parameter der Klasse lassen sich entsprechend anpassen. Beispielsweise tragen Sie hier den gewünschten NTP-Servernamen als Wert für den Parameter "server list" ein. In der Host-Übersicht übergeben Sie in den Eigenschaften des soeben installierten Hosts nun die gewünschten Puppet-Klassen mit. Nach dem Aufruf von puppet agent -test sehen Sie, wie der NTP-Service auf dem Host anhand des Puppet-Moduls neu konfiguriert wird. Natürlich wäre dies auch bereits zum Installationszeitpunkt des Hosts passiert, wären die benötigten Puppet-Module und Informationen zu diesem Zeitpunkt bereits vorhanden gewesen.