2013-01-08 74 views
0

具體來說,如果cfengine用於安裝板載設備固件的最新版本,並進行一些測試以確定是否需要重新啓動,並且結果表明該設備需要重新啓動,那麼可以通過cfengine在cfengine內還是應該避免這種做法?如果是這樣,爲什麼?我對Puppet的經驗告訴我,在某些情況下停止運行重啓可能是非常糟糕的事情,所以我想知道是否同樣的限制也適用於cfengine。應該避免在cfengine策略中重新啓動Linux主機嗎?

回答

0

停止CFEngine運行並不是那麼糟;它的設計是收斂的,修改總是原子的。如果停止,下一次運行將表現正確。但是,重寫設備的寫入承諾可能導致不好的意外(例如,如果承諾的邏輯中存在缺陷,導致永無止境的重新啓動),所以我建議應該避免它,如果可能的話,如果有必要(例如,處理數千個設備),它應該被徹底測試

0

就像尼古拉斯說的那樣,停止CFEngine運行並沒有什麼壞處。 CFEngine策略將在下次運行時繼續收斂。如果你想確保在重新引導之前所有的東西都已經正確完成,你可以設置一個類來指示需要重新引導,並且在你的bundle序列結尾附近調用一個單獨的包中重新引導(我假設CFEngine 3)。

事實上,非常謹慎,並且非常仔細地測試重啓將發生的條件!

相關問題