Wie kann ich das Problem beheben, dass Puppet sich weigert zu starten und nach „master.pp“ fragt?

Wie kann ich das Problem beheben, dass Puppet sich weigert zu starten und nach „master.pp“ fragt?

Ich verwende die neueste Version von puppetund bin der Anleitung von Apress "Pro Puppet" Schritt für Schritt gefolgt. Ich habepuppet

sudo aptitude install ruby libshadow-ruby1.8
sudo aptitude install puppet puppetmaster facter

Ich habe es bearbeitet /etc/puppet/puppet.conf, um den Zertifikatsnamen einzuschließen

[master]
certname=puppet.mydomain.com

Ich habe /etc/hosts bearbeitet und die folgende Zeile hinzugefügt

127.0.0.1 puppet.mydomain.com puppet

Ich habe den Hostnamen des Servers festgelegt

echo "puppet.mydomain.com" > /etc/hostname
hostname -F /etc/hostname

puppetUnd dann versuche ich , es von der Befehlszeile aus auszuführen .

puppet master --verbose --no-daemonize

Und puppetgibt mir diesen Fehler:

Could not parse for environment production:
Could not find file /master.pp

Ich führe alle Befehle mit aus sudound die letzte Zeile der Fehlermeldung besagt immer, dass es nicht gefunden werden kann master.ppund der Pfad davor ist mein aktuelles Arbeitsverzeichnis.

Was mache ich falsch?

Ich sollte auch erwähnen, dass ich keinen DNS-Eintrag eingerichtet habe puppet.mydomain.com. Ich habe in einer Online-Dokumentation gelesen, dass dies ein Problem sein könnte. Ich war mir jedoch ziemlich sicher, dass hostsich das Problem mithilfe der Datei umgehen könnte.

Antwort1

Es sieht fast so aus, als würden Sie eine alte Version von Puppet verwenden, die den Unterbefehl „master“ nicht versteht und stattdessen versucht, ihn als Manifest auszuführen. Irgendwann um 0.25 herum wurde die neue Befehlssyntax eingeführt.

Überprüfen Sie noch einmal, welche Version Sie verwenden. Die aktuelle Version sollte 2.7 sein. Ich habe oft festgestellt, dass Distributionen ältere Versionen bündeln. Beispielsweise installiert Ubuntu 10.04LTS 0.25.4, was ziemlich alt ist.

Antwort2

Um die Version des Puppet-Pakets herauszufinden, führen Sie Folgendes aus:

sudo apt-cache policy puppet

Antwort3

MartijnIstRechts. Ihre Puppet-Version ist definitiv älter als 2.6. Verwenden Sie eine alte Version von Ubuntu oder Debian? Squeeze enthält bereits 2.6 und Ubuntu 11 enthält 2.7. Wenn Sie Lenny verwenden, finden Sie auf Backports eine neuere Version von Puppet. Und wenn das alles nicht hilft, glaube ich, dass Puppetlabs ein Repository für neuere Puppet-Versionen hat, obwohl es Ihnen mit der Ruby-Version möglicherweise Probleme bereiten könnte.

verwandte Informationen