
Puppet マスターを使用して、Vagrant で複数の開発 VM を構成したいと思います。例: vagrant は新しいボックスを作成し、Puppet エージェントを使用してプロビジョニングします。
ただし、いくつかのテストでは、Puppet マスターがホスト名ごとに証明書を割り当てることが示されているようです。そのため、2 つのクライアントが同じホスト名を持つ場合、Puppet はカタログのダウンロードを拒否します。Puppet エージェント/サーバーで重複するホスト名を許可する方法はありますか?
Puppet を使用して機密データが展開されるわけではなく、リポジトリを設定して必要なソフトウェアをインストールするだけなので、セキュリティは実際には問題になりません。
答え1
最初の実行時(新しい証明書のリクエストを送信するとき)には、パラメータを使用できます。--certname各マシンに特定の名前を付ける(同じホスト名を持つ場合も含む)
したがって、シェルでは次のように使用できます。
puppet agent -t --certname=myhostXX
Puppet サーバーにその名前の新しいリクエストが表示されます。
これはあなたの環境でも役立つでしょうか?
答え2
ricciocriが提案したように、--certnameを使用できますが、マスターでは設定できます"allow_duplicate_certs = true"
この設定によりallow_duplicate_certs
、以前のクライアントと同じ名前のクライアントを追加するときに問題が解決されます。
開発やテストにVagrantを使用している場合は、すべてをまとめて自動的に作業できると思います。
1: certname #in your client side
2: allow_duplicate_certs = true #in your master
3: autosigning #in your master
自動署名の詳細についてはhttps://docs.puppetlabs.com/puppet/latest/reference/config_file_autosign.html