はじめに
Puppetmasterの変更が、Puppetエージェントによってすぐに認識されないことが1日に何度も発生します。この場合、変更が認識される前に、Puppetを5回以上実行する必要があります(たとえば、X <5分)。
期待される
Puppetmasterの変更は、Puppet-agentによって常にすぐに認識される必要があります
試行
この問題を解決する試みの1つは、 このドキュメント を読んだ後に実行されました。
Puppet includes a basic puppet master web server based on Ruby’s WEBrick library.
(This is what Puppet uses if you run puppet master on the command line or use
most puppetmaster init scripts.)
You cannot use this default server for real-life loads, as it can’t handle
concurrent connections; it is only suitable for small tests with ten nodes
or fewer. You must configure a production quality web server before you
start managing your nodes with Puppet.
Any Rack-based application server stack will work with a puppet master, but if
you don’t have any particular preference, you should use Passenger combined
with Apache. This guide shows how to configure Puppet with this software.
現在
試行しても問題は解決しませんでした。つまり、Puppetmasterの変更がPuppet-agentによってすぐに認識されません。
これは、環境のキャッシュに関する問題である可能性があります。デフォルトでは、3.7では、ファイルシステム上の環境からのデータが3分間キャッシュされるため、そのキャッシュの有効期限が切れるまで、変更はエージェントノードに表示されません。
マスターのenvironment_timeout
を調整して、必要な動作を実現します。キャッシュを完全に回避するために0
を使用すると、パフォーマンスに悪影響を与える可能性があるという警告が表示されます。