2012-03-30 3 views
4

以下は私のモットをインストールするためのレシピです。私は60秒ごとにシェフクライアントをデバッグするようにしています。シェフは、erbテンプレートに変更が加えられていないときにサービスを再開します。

シェフが再起動した場合、monit evry 60秒。いいえ、私はそれをやめますか?私はテンプルを変えたらシェフが再開すると思った。

[Fri, 30 Mar 2012 06:12:18 +0000] INFO: Processing package[monit] action install (monit::default line 5) 
[Fri, 30 Mar 2012 06:12:18 +0000] INFO: Processing service[monit] action enable (monit::default line 9) 
[Fri, 30 Mar 2012 06:12:18 +0000] INFO: Processing service[monit] action start (monit::default line 9) 
[Fri, 30 Mar 2012 06:12:18 +0000] INFO: Processing template[monitrc] action create (monit::default line 14) 
[Fri, 30 Mar 2012 06:12:18 +0000] INFO: template[monitrc] mode changed to 644 
[Fri, 30 Mar 2012 06:12:18 +0000] INFO: template[monitrc] sending restart action to service[monit] (immediate) 
[Fri, 30 Mar 2012 06:12:18 +0000] INFO: Processing service[monit] action restart (monit::default line 9) 
[Fri, 30 Mar 2012 06:12:22 +0000] INFO: service[monit] restarted 
[Fri, 30 Mar 2012 06:12:22 +0000] INFO: Processing template[monitstart] action create (monit::default line 25) 



package "monit" do 
    action :install 
end 

service "monit" do 
    supports :status => true, :restart => true, :start => true,:stop => true 
    action [ :enable, :start ] 
end 

template "monitrc" do 
    path "/etc/monit/monitrc" 
    source "monitrc.erb" 
    owner "root" 
    group "root" 
    mode "0644" 
    #notifies :restart, resources(:service => "monit") 
    #notifies :restart, "service[monit]" 
    notifies :restart, resources(:service => "monit"), :immediate 
end 

template "monitstart" do 
    path "/etc/default/monit" 
    source "monit.erb" 
    owner "root" 
    group "root" 
    mode "0644" 
    notifies :restart, "service[monit]" 
    #notifies :restart, resources(:service => "monit"), :immediate 
end 

答えて

5

たびMONITサービスは、eは、セキュリティ強化の、おそらくいくつかの並べ替えを、それを読み書きすることができます600これだけルートにファイル/etc/monit/monitrcパーミッションを変更し再起動します。

レシピを実行すると、アクセス許可が644に変更され、サービスが再起動され、ファイルが600に戻されます。これは、自分の尾を追う犬のようなものです。

簡単な解決策は、レシピを変更して、再起動を避けるためにテンプレートに600を適用することです。

関連する問題