星期一, 3月 27, 2017

IBM MobileFirst 7.1 WebSphere Liberty Server Farm Unresponsive

前一陣子有客戶反應,他們公司的 MobileFirst Server 無法正常啟動。

於是,開始這段伺服器搶救的過程。

1. 因為 console.log 及 message.log 中都沒有紀錄錯誤訊息,所以為了看更多的資訊,必須打開 trace.log

需要再 server.xml 中加上下列資訊,就可以產生 trace.log 了!
<logging maxfiles="10" maxfilesize="20" 
         tracefilename="trace.log" 
         traceformat="BASIC" 
  tracespecification="com.worklight.*=all:com.worklight.*=all:*=info">
</logging>
中間經歷了很多次重開的過程,Server 就是無法順利啟動。

在沒辦法之下,我只好使用 MobileFirst 的 Configuration-Tool 試著用 update 的方式,中置一下 worklight admin 服務及 runtime environment 的三個 war 檔案。

突然,其中一部 Server 正常啟動了。

心想,應該修好了!

結果在啟動另一個 Server 時,卻卡住了!

這時候剛剛啟動的 Server 也無法正常運作。

觀察一下 tracelog,後來我發現每 30 秒會出現一次下列紀錄

com.worklight.core.clustering.ClusterSynchronizationTask
解到這邊,我一直觀察資料庫內的資料跟伺服器運作的模式。
感覺,就是同步作業失敗,然後一直重做。

上網找了一下資料,看起來跟這個問題比較像的是:
IBM MobileFirst 7.1.0 Liberty Server Farm Unresponsive

但是,內文也是說重建 Server Instance 跟重新設定 Server Farm 就好了!

目前,重建後只能讓單一伺服器恢復運作。
只要想同時啟動 Server Farm 中的兩個伺服器,就會陷入同步失敗的問題。

現在還在等 IBM 原廠回覆此問題的正確解法。