我希望能够审核并跟踪由chef管理的节点的更改。理想情况下,我想知道是否/何时对节点进行了更改,以便能够将更改与事件相关联。
厨师中是否有任何内置功能可以生成此类内容?或者,也许是一个附加组件让我加入这种日志记录/审计?
答案 0 :(得分:5)
jtimberman在https://jtimberman.posterous.com/a-simple-report-handler的演示处理程序展示了如何访问在chef-client运行期间更新的特定资源。您可以编写一个处理程序来发送电子邮件,HTTP帖子或您喜欢的任何通知机制。
可以将Chef处理程序作为节点的run_list的一部分进行分发和安装。我通过修改/etc/chef/client.rb安装了几个处理程序,但显然社区烹饪书中有一个chef_handler食谱,请参阅https://github.com/opscode/cookbooks/blob/master/chef_handler/README.md。这可以配置处理程序,而不必使用模板。
答案 1 :(得分:1)
您可以在client.rb文件中更改日志级别和位置。
Chef包含一个资源,用于根据您的食谱将事件写入日志。
http://wiki.opscode.com/display/chef/Chef+Configuration+Settings#ChefConfigurationSettings-logoutput
http://wiki.opscode.com/display/chef/Resources#Resources-Log
答案 2 :(得分:0)
您可以添加一个自定义报告处理程序,该处理程序将遍历在chef-solo或chef-client运行期间更新的所有资源,记录它们,并可能通过电子邮件将它们发送给系统管理员。