2014-03-25 27 views
3

我使用Supervisord運行虛擬機來啓動和維護幾個重要的後臺進程。我使用vagrant和virtualbox創建虛擬機,並使用puppet進行配置。當機器啓動時,supervisord抓取/etc/supervisor/conf.d中的所有.conf文件並嘗試運行它們。不幸的是,當我運行Vagrant,VirtualBox,Supervisord:什麼時候安裝了synced文件夾?

Vagrant up 

supervisord開始試圖在共享同步文件夾之前立即運行conf.d中的文件。所以開始一些像Xvfb這樣的後臺進程運行得很好,但是啓動我的統計跟蹤器(駐留在同步文件夾內)是不可能的。事實上,我看到在supervisord記錄多次嘗試啓動該過程,抱怨它無法找到該文件,並最終放棄。然後,一旦機器完全運行,我可以通過SSH進入並在.conf文件中運行完全相同的命令並自己啓動該過程。

我創建了一箇中間腳本來持續循環,等待同步文件夾變爲可用,然後啓動我想要的過程。但在這種情況下,主管沒有辦法確保該流程仍在運行,並且感覺像是黑客。

有沒有更乾淨的方法來做到這一點?也許從傀儡或流浪者內部?

回答

相關問題