Gérer ssh_known_hosts avec une marionnette

Je suis nouveau sur Puppet (version open source) et j'ai une question relativement simple.

Lorsque j'arrive à un nouvel hôte, j'aimerais que le maître de marionnettes ajoute la key publique rsa du nouvel hôte à / etc / ssh / ssh_known_hosts, et le file ssh_known_hosts mis à jour sera disponible pour être retiré par les agents de marionnettes.

J'ai essayé la ressource sshkey :

 # /etc/puppet/modules/ssh/manifests/client.pp sshkey { $hostname: ensure => present, type => "rsa", key => $sshrsakey, } 

Cependant, ssh_known_hosts ne semble pas être modifié sur le maître de marionnettes ou un agent pour cette question. Mon manifeste passe la validation de la syntaxe lorsque je lance puppet parser validate client.pp et l' puppet agent --test exécution puppet agent --test sur l'agent ne signale aucun problème.

Dois-je configurer Stored Configs pour utiliser la ressource sshkey? J'aime les fonctionnalités de Stored Configs, mais il semble que l'overkill soit pour ce dont j'ai besoin et semble append beaucoup de frais généraux. Ma autre option est de cracher le fait $sshrsakey dans un file , mais il faudra vérifier l'existence de la key publique afin qu'elle ne soit pas ajoutée plus d'une fois.

Oui, vous devez configurer les configurations stockées.

Sur chaque hôte, vous souhaitez collecter les keys dans la database des configurations stockées (notez @@ ):

 @@sshkey { $hostname: ensure => present, type => "rsa", key => $sshrsakey, } 

Ensuite, vous voudrez les écrire sur le file sur chaque hôte également.

 Sshkey <<| |>>