Jboss4集羣配置之四:啓動Jboss集羣

6.啓動Jboss集羣

步驟

先啓動負載均衡器apache,然後啓動各jboss節點。各jboss節點的啓動順序沒有要求。

啓動負載均衡器apache


在/usr/local/apache2/bin目錄下執行./httpd –k start

在/usr/local/apache2/logs/mod_jk.log中,看到apache初始化mod_jk的日誌:
[Wed Aug 01 10:36:11 2007][6636:63168] [info] init_jk::mod_jk.c (2743): mod_jk/1.2.23 initialized
[Wed Aug 01 10:36:11 2007][6637:63168] [info] init_jk::mod_jk.c (2743): mod_jk/1.2.23 initialized
後面如有錯誤信息,是因爲集羣中的節點尚未啓動,暫時忽略。

用netstat檢查8080監聽端口存在,apache啓動成功.

啓動Jboss節點

在集羣各機器的/usr/local/jboss/bin,分別執行/run.sh –c all 1>1 2>2 &

用netstat檢查8888端口監聽存在.
用瀏覽器訪問各節點的8888端口,能夠看到jboss的狀態.
Jboss啓動成功.

集羣的生命期

apache能夠自動發現新啓動的Jboss節點。當第一個Jboss節點啓動後,自動創建Jboss集羣。然後依次將其他節點加入到集羣中。現在訪問http://192.168.8.246:8888,能夠看到jboss的狀態.說明請求已經被轉發到Jboss節點。集羣啓動成功。

apache能夠監視集羣中各節點的狀況,自動從集羣中去掉無法訪問的節點,從而保證每個請求都被響應。當集羣的全部節點都停止工作,集羣消亡。

集羣的缺陷和粘着session

截止到現在,Jboss集羣工作得很完美,除了session。

目前配置的Jboss集羣中,各節點是被動的、相互獨立的,相當於增加了節點狀態檢測的DNS輪詢,所以session也是相互獨立的。當同一用戶的2個請求被轉發到不同的Jboss節點上時,會出現session信息假”丟失”的現象。

爲此,Jboss提出粘着session(sticky session)概念。使用粘着session後,來自同一IP的請求將被髮送到同一個Jboss節點,從而保證session使用的連續性。如果應用中沒有使用session,則可以使用非粘着session的jboss集羣。這樣,負載分佈更爲合理。(jijian91的話:也更簡單。)

設置方法是編輯負載均衡器的/usr/local/apache2/conf/workers.properties的worker.loadbalancer.sticky_session。設置爲1使用粘着session,設置爲0不使用粘着session。

使用粘着session還存在一種隱患,當某個節點發生故障時,該節點的session將全部丟失。要徹底解決這個問題,就要用到jboss session複製。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章