Schritt 1. OS installieren und wichtiger Hostname-Hinweis 🏷️
Ubuntu-Installation starten (wichtig: Version 22.04). Der Prozess ist standard, aber es gibt einen kritischen Moment:
- Im Menü, wo Server name (Hostname) einzugeben ist: 👉 Eingeben:
puppet - Username:
user(oder wie es beliebt). SSH installieren:
sudo apt install openssh-serverSchritt 2. Vorbereitung (In der Konsole) 🛠️
Sobald der Server installiert und neu gestartet ist:
- Per SSH verbinden (PowerShell vom echten PC):
ssh user@IP-ADRESSE - Puppet ist sehr empfindlich gegenüber genauer Zeit (wegen Sicherheitszertifikaten). Zeit prüfen:
date- System vor dem Start aktualisieren:
sudo apt update && sudo apt upgrade -yName ändern, wenn ein anderer gewählt wurde:
sudo hostnamectl set-hostname puppetHosts-Datei korrigieren (PFLICHT!) ⚠️
Wenn dieser Schritt übersprungen wird, beginnt der Befehl sudo zu “hängen” (lange Denkzeit) und Puppet kann sich nicht selbst verbinden.
- Hosts-Datei öffnen:
sudo nano /etc/hosts
- Die Zeile finden, die mit
127.0.1.1(oder127.0.0.1) beginnt. Dort steht der alte Name. - Den alten Namen durch
puppetersetzen.- Beispiel:
127.0.1.1 puppet
- Beispiel:
- Speichern:
Ctrl+O→Enter→Ctrl+X.
Neustart:
sudo reboot
Schritt 3. Puppet 8 Repository einbinden 📦
In den Standard-Ubuntu-Repositories ist Puppet meist sehr alt. Wir brauchen Version 8 (Platform 8) — das ist der aktuelle Industriestandard.
Befehle der Reihe nach ausführen:
- Repository-Paket herunterladen:
wget https://apt.puppet.com/puppet8-release-noble.deb(Wenn “Command not found” erscheint, wget installieren: sudo apt install wget).
2. Installieren:
sudo dpkg -i puppet8-release-noble.deb
- Paketlisten aktualisieren (damit das System neue Software sieht):
sudo apt update
Schritt 4. Puppetserver installieren 🎭
Jetzt den Server selbst installieren. Das ist das “Gehirn” der gesamten Konfiguration.
sudo apt install puppetserver -y
Er zieht Java und viele Bibliotheken. Das dauert ein paar Minuten.
Schritt 5. Speicher konfigurieren (Java) 🧠
Standardmäßig will Puppet Server 2 GB RAM beanspruchen (Java Heap). Da wir der VM 4 GB zugeteilt haben, passen die Standardeinstellungen perfekt. Werfen wir aber einen Blick in die Konfiguration, damit du weißt, wo du das künftig änderst (z.B. wenn der Server abstürzt):
- Einstellungsdatei öffnen:
sudo nano /etc/default/puppetserver- Zeile finden:
JAVA_ARGS="-Xms2g -Xmx2g ..." - Sicherstellen, dass dort
2g(2 Gigabyte) steht. Falls die VM weniger Speicher bekommt, hier auf1gändern. - Beenden (
Ctrl+X), ohne etwas zu ändern.
Schritt 6. Erster Start (Dauert!) ⏳
Der wichtigste Moment. Der erste Start ist schwer, da der Server kryptografische Schlüssel und Zertifikate (CA) generiert.
- Starten:
sudo systemctl start puppetserver
⚠️ Achtung: Der Befehl kann eine Minute oder zwei “hängen”. Nicht abbrechen! Das ist normal. 2. Autostart aktivieren:
sudo systemctl enable puppetserver
- Status prüfen:
sudo systemctl status puppetserver
Sollte grün aufleuchten: active (running).
Schritt 7. Erreichbarkeit prüfen 📡
Puppet läuft auf Port 8140. Prüfen, ob er ihn abhört.
ss -tulpn | grep 8140Wenn eine Zeile mit :::8140 und java erscheint — Herzlichen Glückwunsch! Dein Puppet Master lebt und wartet auf Befehle.
Schritt 8. Konfigurationsdatei ansehen 📡
sudo nano /etc/default/puppetserverSchritt 9. Zugriffsrechte reparieren 🔑
Diesen Befehl eingeben, um alle Puppet-Ordner dem richtigen Besitzer zu übergeben:
sudo chown -R puppet:puppet /etc/puppetlabs /var/log/puppetlabs /var/run/puppetlabs /opt/puppetlabs/server/data/puppetserverSchritt 10. Server neu starten 🔄
Jetzt, wo die Rechte stimmen, kann er Schlüssel erstellen.
sudo systemctl restart puppetserverEine Minute warten und Status prüfen:
sudo systemctl status puppetserverPfade eintragen:
echo 'export PATH=$PATH:/opt/puppetlabs/bin:/opt/puppetlabs/puppet/bin' >> ~/.bashrcÄnderungen anwenden:
source ~/.bashrcVersion prüfen:
puppet --versionServer prüfen:
sudo puppet agent -tSchritt 11. /etc/hosts auf dem Puppet Server korrigieren 🛠️
Der Server muss wissen, dass er selbst — das ist 192.168.0.14.
- Per SSH zu Puppet verbinden (wie schon gemacht).
- Hosts-Datei öffnen:
sudo nano /etc/hosts
- Seine interne Adresse eintragen:
192.168.0.14 puppet puppet.local- Speichern (
Ctrl+O,Enter,Ctrl+X). Jetzt weiß der Server: “Ich bin puppet, meine Adresse ist 192.168.0.14”.