2013-05-17 48 views
4

我正面臨DatabaseLessLeasing問題。我們的是一箇中間件應用程序。我們沒有任何數據庫,我們的應用程序正在WebLogic服務器上運行。我們在一個集羣中有兩臺服務器。兩臺服務器都已啓動並正在運行,但我們只使用一臺服務器進行處理。當主服務器發生故障時,整個服務器和服務將遷移到輔助服務器。這工作正常。DatabaseLessLeasing失敗並且服務器未處於大多數羣集分區

但我們曾在去年我們的次要服務器硬件下跌和輔助服務器不可用的一個問題結束。我們得到了以下問題。當我們去Oracle時,他們建議有一臺服務器或者有一個高可用性的數據庫來存放集羣租賃信息,以指出哪一臺是主服務器。到目前爲止,我們沒有這個選擇,因爲放置新的服務器意味着會有預算問題,客戶端還沒有準備好。

用於集羣

我們WebLogic配置有:

  1. 一個集羣與2個管理服務器
  2. 簇消息發送模式是組播
  3. 遷移基礎是共識
  4. 負載算法是輪循

這是我發現

0123日誌

LOG:關鍵的健康BEA-310006關鍵子系統 DatabaseLessLeasing失敗。將服務器狀態設置爲FAILED。 原因:服務器不在大多數羣集分區中>

嚴重WebLogicServer BEA-000385服務器運行狀況失敗。原因:關鍵服務「DatabaseLessLeasing」的 衛生不合格通知書 WebLogicServer BEA-000365服務器狀態變爲失敗

**注:**我記得一兩件事,服務器不下來的時候發生的。兩臺服務器都在運行,但突然間服務器突然嘗試重新啓動,無法重新啓動。重新啓動失敗。我看到該狀態顯示爲failedToRestart並且應用程序停機。

誰能請幫助我在這個問題上。

謝謝

回答

2

共識租賃需要大多數服務器繼續工作。每當有網絡分區時,大多數分區中的服務器將繼續運行,而少數分區中的服務器將失敗,因爲它們無法聯繫集羣領導或選擇新的集羣領導,因爲他們不會擁有大多數服務器。如果分區導致服務器的分配相等,則包含集羣領導的分區將存活,而另一分區將失敗。

由於上述功能,如果自動服務器遷移被啓用時,服務器都需要接觸所述羣集的領導者和週期性地更新他們的租約。如果服務器無法續約,服務器將自行關閉。失敗的服務器將自動遷移到多數分區中的機器上。

這得到了分區(而不是大多數集羣的一部分),服務器將進入故障狀態。這種行爲是爲了避免裂腦情況,其中有兩個分區的集羣,都認爲他們是真正的集羣。當一個集羣被分割時,最大的細分市場將生存下來,而較小的細分市場將自行關閉。當服務器無法到達集羣主節點時,它們會確定它們是否位於較大的分區中。如果他們在較大的分區中,他們將選擇一個新的集羣主控。如果不是,他們將在租約到期時全部關閉。在這種情況下雙節點羣集是有問題的。當一個集羣被分區時,哪個分區最大?當集羣主節點在雙節點集羣中關閉時,剩下的服務器無法知道它是否在大多數情況下。在這種情況下,如果剩餘的服務器是集羣主服務器,它將繼續運行。如果它不是主人,它會關閉。

通常,當onc羣集中只有2個託管服務器時會顯示此錯誤。

要解決此類問題,請創建另一臺服務器;由於羣集只有2個節點,因此如果丟失連接/丟棄羣集廣播消息,則任何服務器都將脫離大多數羣集分區。在這種情況下,羣集中沒有其他服務器。

對於共識租賃,它總是建議創建具有在-至少3個節點的集羣;這樣你可以確保一些穩定性。

在這種情況下,即使一臺服務器脫離羣集,其他兩臺服務器仍能正常工作,因爲它們仍保留在大多數羣集分區中。第三臺服務器將重新加入羣集,或最終重新啓動。

在你只有2臺服務器作爲集羣的一部分的場景,從一個集羣掉落會導致兩個服務器被重新啓動,因爲它們不是大多數集羣分區的一部分;這最終會導致非常不穩定的環境。

另一種可能的情況是管理服務器之間存在通信問題,您應該留意諸如「丟失。*消息」之類的消息[在單播情況下,它有點像「丟失2單播消息(一個或多個)。「]這可能是由於導致臨時網絡發出

1

確保在羣集遷移配置二次節點的節點管理器啓動並運行。

+0

這應該是一個評論,而不是一個答案! –

相關問題