Puppet requiert des certificats entre le client (marionnette) géré et le serveur (marionnettiste). Vous pouvez exécuter manuellement sur le client, puis aller sur le serveur pour signer le certificat, mais comment automatisez-vous ce processus pour les clusters / machines cloud?
26
Réponses:
Sur le serveur (puppetmaster) exécutez:
Copiez ensuite les éléments suivants du serveur sur le client:
Si vous souhaitez vous connecter
<NAME>
avec autre chose que le nom d'hôte, utilisez:Et ajoutez à /etc/puppet/puppet.conf si vous exécutez le démon
la source
puppet cert --generate <NAME>
voir serverfault.com/a/457364/71452Si vous avez une base de données hôte, vous pouvez utiliser la fonction de signature automatique. Dans votre
puppet.conf
fichier, dans le[puppetmasterd]
, ajoutez:Utilisez ensuite une crontab pour générer ce fichier. Le fichier de signature automatique n'est qu'une liste d'hôtes à signer automatiquement lorsqu'ils se connectent pour la première fois au marionnettiste. J'utilise LDAP pour configurer mes hôtes marionnettes, donc mon cron ressemble à:
Je suis sûr que les personnes qui utilisent iClassify pourraient écrire une requête pour faire de même.
Bien sûr, vous devez avoir une certaine confiance dans le réseau. Je l'utilise sur EC2. Mon serveur puppetmaster fait partie d'un groupe qui autorise uniquement les connexions à partir d'autres groupes de confiance. Je ne recommanderais pas de faire cela si votre marionnettiste est ouvert à Internet.
la source
Réponse simple: signez automatiquement de nouvelles demandes. Bien sûr, cela est dangereux parce que vous faites aveuglément confiance à n'importe quel système qui se connecte à votre marionnettiste, ce qui est le but d'exiger une signature manuelle.
Vous pouvez également spécifier false et un fichier à utiliser pour déterminer les clés à signer.
Voir la référence de configuration sur le wiki Puppet.
Une autre option consiste à utiliser un outil comme Capistrano , dans lequel vous spécifiez le nœud puppetmaster et créez les nœuds d'instance client, et dans la tâche:
la source
[puppetmasterd]
-tête de section devrait maintenant être[master]
. Voir docs.puppetlabs.com/guides/tools.html pour plus d'informations.Sur le serveur (puppetmaster) exécutez:
Copiez ensuite les éléments suivants du serveur sur le client:
Si vous souhaitez utiliser autre chose que le nom d'hôte, utilisez:
Et ajoutez à /etc/puppet/puppet.conf si vous exécutez le démon
la source