Я новичок в Кукольный (версия с открытым исходным кодом) и задать относительно простой вопрос.
Когда я вызываю новый хост, я бы хотел, чтобы марионеточный мастер добавил открытый ключ rsa нового хоста в / etc / ssh / ssh_known_hosts, чтобы обновленный файл ssh_known_hosts был доступен для загрузки агентами марионеток.
Я пробовал sshkey
ресурс:
# /etc/puppet/modules/ssh/manifests/client.pp
sshkey { $hostname:
ensure => present,
type => "rsa",
key => $sshrsakey,
}
Однако похоже, что ssh_known_hosts не изменяется на puppetmaster или агенте, если на то пошло. Мой манифест проходит проверку синтаксиса при запуске puppet parser validate client.pp
и бег puppet agent --test
по агенту не сообщает о проблемах.
Я должен иметь Сохраненные конфигурации настроить для использования ресурса sshkey? Мне нравятся функции Stored Configs, но это кажется излишним для того, что мне нужно, и, кажется, добавляет много накладных расходов. Другой вариант - выплюнуть $sshrsakey
факт к file
, но ему нужно будет проверить наличие открытого ключа, чтобы он не добавлялся более одного раза.
Да, у вас должны быть включены сохраненные конфигурации.
На каждом хосте вы захотите собрать ключи в базу данных сохраненных конфигураций (обратите внимание на @@
):
@@sshkey { $hostname:
ensure => present,
type => "rsa",
key => $sshrsakey,
}
Затем вы также захотите записать их в файл на каждом хосте.
Sshkey <<| |>>