Comment savoir quelle version de marionnette vous utilisez sur centos?

17

Je commence avec marionnette sur centos et j'étais confus à propos de quelques choses. Tout d'abord, une page de manuel existe pour puppet-mastermais pas pour puppetmastermême si le démon dans /etc/init.d estpuppetmaster

L'exécution de la commande $ puppet-master --versionrenvoie bash: puppet-master: commande introuvable.

Comment savoir quelle version j'utilise pour le maître et le client?

user784637
la source

Réponses:

25

Les versions plus récentes de marionnettes utilisent une ligne de commande légèrement différente. La commande que vous recherchez serait puppet --version, puppet master --versionetpuppet agent --version

Pour les versions antérieures à 4.0, si marionnette a été installée en tant que package RPM, vous pouvez interroger la base de données RPM comme rpm -qa | grep puppet. Pour les fans de Debian / Ubuntu / Mint, la requête de package est dpkg -l | grep puppet.

Puppetlabs a changé son emballage et la version de la marionnette emballée n'est pas indiquée par le numéro de version du package puppet-agent.

Rik Schneider
la source
Le tiret est-il pour la version pré 2.6? Le maître et l'agent doivent-ils également exécuter la même version principale?
user784637
Je ne sais pas quand ils ont fait le changement. Avec la version 3, Puppet Labs s'est engagé à utiliser le versioning sémantique. Cela signifie que les principaux changements de numéro de version indiquent un changement qui rompt la compatibilité descendante. Vous devriez être OK si vous avez un mélange de 3.xy, je n'essaierais pas un mélange de 2.x et 3.x sans tester que les résultats correspondent à mes attentes.
Rik Schneider
J'ai fait un peu plus de tests et j'ai découvert que je pouvais utiliser un agent de marionnettes 2.7 avec un serveur de marionnettes 3.2.x.
Rik Schneider
4
root@puppet01 ~:
# puppet --version
3.2.2
root@puppet01 ~:
# puppet master --version
3.2.2
yoonix
la source
3
# rpm -qa | grep puppet
puppet-server-2.6.18-3.el6.noarch
puppet-2.6.18-3.el6.noarch

la première ligne est la version du côté serveur, la seconde - côté client

# puppet agent --version
2.6.18

# puppet master --version
2.6.18

fonctionne aussi

ALex_hha
la source
0

Pour le plaisir, vous pouvez également utiliser Puppet!

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

En outre, dans un manifeste sur le maître de marionnettes, vous pouvez ajouter une telle ligne:

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

(Notez qu'il $serverversionest vide lors de l'utilisation puppet apply)

Franklin Piat
la source
0

Installé la marionnette sur Ubuntu 18.04, a obtenu la même erreur, la commande de marionnette n'est pas ajoutée au chemin d'où cette erreur

accédez à ce chemin / opt / puppetlabs / bin et exécutez la commande puppet master --version

vous obtenez le résultat souhaité

Sunil Vikram
la source