我正在爲我們的一些軟件開發initscripts,並且難以決定如何將它用於特定的一塊。多進程InitScript邏輯
我們擁有自行開發的軟件,負責將數據傳出網絡,它建立在標準的pubsub模型上。有一個發佈者進程(實際上是兩個不同的用例),一個代理進程和一個訂閱者進程。這些過程的任何組合,甚至是同一過程的多個組合,都可以在給定的框中同時運行。我無法決定如何最好地配置它。由於它可以在不同的框之間變化,所以可能會進入/etc/sysconfig/pubsub
,這將被initscript讀入。
我必須允許配置的唯一東西是(1)進程名稱,它是log_publish,dir_publish,broker,subscribe和(2)對應於該特定進程的配置文件之一。
我希望避免告訴人們如何修改每個盒子的initscript,以便更改正在運行的進程列表,因此每個盒子的這個唯一配置文件是我可以實現的最佳方式。
我認爲這也意味着我將不得不在每個進程上有一些獨特的標識符,因爲我打算使用大多數RedHat腳本使用的方法已經鎖定一個進程兩次運行。知道這一點,我知道標識符不能始終是隨機的,否則它永遠不會有效,以防止具有相同配置文件的重複進程(因爲我需要能夠使用不同的配置文件運行多個進程) 。
我不知道如何最好地在配置中表示這個。
您有關於如何最好地管理配置所有這些過程的建議嗎?某種助手腳本/應用程序可以生成每個盒子需要的初始腳本? – VxJasonxV 2010-11-10 18:17:56
只要擁有它們,讓人們使用chkconfig或者不要打開或關閉它們。 – 2010-11-10 18:19:05
您錯過了可能有多個相同過程的部分。所以它不像「全部出貨並讓他們選擇」那麼簡單。我們有一個(不幸的)使用案例,其中我們的一個盒子有7個或8個發佈者,沒有別的。想想看,我實際上已經完全忘記了存在的第五個過程,我們在同一個多個發佈者框中使用。 「 – VxJasonxV 2010-11-10 18:30:29