Woran erkennt man, welche Version der Puppe auf Centos läuft?

17

Ich habe angefangen mit Puppe auf Centos und war über ein paar Dinge verwirrt. Zunächst existiert eine Manpage für, puppet-masteraber nicht für puppetmaster, obwohl der Daemon in /etc/init.d istpuppetmaster

Das Ausführen des Befehls $ puppet-master --versiongibt bash: puppet-master: Befehl nicht gefunden zurück.

Wie kann ich feststellen, welche Version ich sowohl für den Master als auch für den Client verwende?

user784637
quelle

Antworten:

25

Neuere Versionen von Puppet verwenden eine etwas andere Befehlszeile. Der Befehl von Ihnen gesuchten wäre puppet --version, puppet master --versionundpuppet agent --version

Für Versionen vor 4.0, wenn Puppet als RPM-Paket installiert wurde, können Sie die RPM-Datenbank wie folgt abfragen rpm -qa | grep puppet. Für Debian / Ubuntu / Mint-Fans ist die Paketabfrage dpkg -l | grep puppet.

Puppetlabs hat die Verpackung geändert und die verpackte Puppenversion ist nicht durch die Versionsnummer des Puppet-Agent-Pakets gekennzeichnet.

Rik Schneider
quelle
Ist der Bindestrich für die Version vor 2.6? Müssen Master und Agent dieselbe Hauptversion ausführen?
User784637
Ich bin nicht sicher, wann sie die Änderung vorgenommen haben. Mit der Version 3 haben sich Puppet Labs dazu verpflichtet, die semantische Versionierung zu verwenden. Dies bedeutet, dass Änderungen der Hauptversionsnummer auf eine Änderung hinweisen, die die Abwärtskompatibilität beeinträchtigt. Sie sollten in Ordnung sein, wenn Sie eine Mischung aus 3.xy haben. Ich würde keine Mischung aus 2.x und 3.x versuchen, ohne zu testen, ob die Ergebnisse meinen Erwartungen entsprechen.
Rik Schneider
Ich habe ein bisschen mehr getestet und festgestellt, dass ich einen 2.7-Puppenagenten mit einem 3.2.x-Puppenserver verwenden kann.
Rik Schneider
4
root@puppet01 ~:
# puppet --version
3.2.2
root@puppet01 ~:
# puppet master --version
3.2.2
yoonix
quelle
3
# rpm -qa | grep puppet
puppet-server-2.6.18-3.el6.noarch
puppet-2.6.18-3.el6.noarch

Die erste Zeile ist die Version der Serverseite, die zweite die der Clientseite

# puppet agent --version
2.6.18

# puppet master --version
2.6.18

funktioniert auch

ALex_hha
quelle
0

Für den Spaß können Sie auch Puppet verwenden!

puppet apply -e 'notice("$clientversion")'

Außerdem können Sie in einem Manifest auf dem Puppet Master folgende Zeile hinzufügen:

fail("Server version: $serverversion, Client version: $clientversion")'
fail(inline_template("<%=clientversion.split('.')[0]%>"))

(Beachten Sie, dass $serverversionbei der Verwendung leer ist puppet apply)

Franklin Piat
quelle
0

Installierte die Puppe auf Ubuntu 18.04, bekam den gleichen Fehler, der Puppenbefehl wird nicht zum Pfad hinzugefügt, daher dieser Fehler

Navigieren Sie zu diesem Pfad / opt / puppetlabs / bin und führen Sie den Befehl puppet master --version aus

Sie erhalten das gewünschte Ergebnis

Sunil Vikram
quelle