標籤:http java os 檔案 io 問題
上一篇文章寫到了災難恢複中WEB伺服器的配置。其實說白了很簡單,就是在另一個地方類比出原始伺服器叢集的環境。
這個文章主要謝謝APP伺服器的配置。
災難恢複呢,對於APP伺服器來說,無非包括兩方面的內容:
- DB的配置,保證新的伺服器也能串連到特定的DB伺服器。
- 可以接收到新的WEB伺服器的請求。
DB的配置呢,無非就是配置一下DabaSource,測試連接這些的,直接在管理主控台上就可以配置了。(記住有的時候配置完DB之後需要重啟Application Server甚至Node Agent才會使變更生效。)
接下來就是如何保證APP伺服器可以接收到新的WEB伺服器的請求了。也很簡單:
- 應用程式在用那些Virtual Host,那就把Virtual Host修改一下,在裡面的Alias設定裡,把新的WEB伺服器的地址全都添加進去就好了。
- 重建Plugin,並且拷貝到WEB伺服器上。(或者不重建,直接在WEB伺服器上把Plugin檔案裡面所有舊的IP地址改成新的就好了。)
——如果確實想要重建Plugin檔案的話,一定要確保Application部署到了所定義的WEB伺服器上!
如何查看?
在IBM Console,開啟Enterprise Application,然後找到對應的Application,點擊進去,然後點擊“View Modules”,開啟之後就可以看到這個應用程式到底部署到了哪些模組之上。
一般來說,一個應用程式,
- 如果部署到了Cluster上面,那麼這個程式就已經可以正常執行了,可以通過:http://<APP伺服器的IP地址>:<連接埠號碼>/URI 來訪問到。
- 如果出了部署到了Cluster上面,而且還部署到了在IBM Console裡面定義的WEB伺服器上面,那麼就可以正常產生Plugin了。
產生Plugin的做法:
開啟IBM Console,找到WEB Servers,開啟,然後勾選上要產生Plugin的WEB伺服器(注意,這些不是說真的在APP伺服器上完全做出了一個WEB伺服器環境,這裡只是一個WEB伺服器的定義,可以作為一個載體,用來產生Plugin等操作),勾選完之後,點擊“Generate Plugin”即可看到產生的Plugin的路徑了。然後找到產生的Plugin,把裡面的內容替換掉WEB伺服器上的Plugin裡面的內容,重啟WEB伺服器即可。
另外,想通過:http://<APP伺服器的IP地址>:<連接埠號碼>/URI 來訪問APP伺服器上的應用的時候,有時候這個應用伺服器並不是在綁定的預設的9080,那麼如何查看它所綁定的連接埠呢?
還是開啟IBM Console,找到Application Servers,點開對應的伺服器,然後找到Ports這個項目,點擊Ports前面的+號,就可以看到很多連接埠了。找到“WC_default”所對應的連接埠,這個就是應用程式伺服器所綁定的為應用程式留出來的連接埠了。
到此為止,這兩篇文章大概就說清楚在災難恢複中需要配置的東西了。寫起來很簡單,項目也不多,但是確實在實際操作中會產生各種各樣的問題。比如我遇到過的:
Troubleshooting:Websphere不管遇到什麼情況的問題,先看LOG,看SystemOut.log這個檔案,內容最全了。
- 如果看到了連接埠被佔用因此無法啟動的話,那很大一部分的可能就是應用伺服器從舊的複製成新的,但是之前的Java進程還在運行,但是新的伺服器因為IP變了,所以應用程式伺服器也基本上不可能識別出來那些舊的進程了。所以就可以開啟工作管理員,把所有Java進程全部殺掉,然後把Nodeagent和Application Server依次重啟。
- 如果看到了“無法解析URI”或者之類的資訊,那情況就比較複雜了,也許是應用程式在啟動的時候會用到一些Server名,然後必須要能解析到Server的IP地址才可以正常啟動。。。這種時候呢就說不定到底是哪方面的問題了,如果Application團隊不在的話,也許可以看看hosts檔案是否有一些特別的內容,也許需要添加上一些記錄才能是WAS識別。
- 其他奇奇怪怪的問題。。。想起來再補充好了。。。。。。
反正一點特別重要,要學會查看LOG,看不懂的可以去IBM網站上或者Google裡搜(注意,是Google,不是Baidu),基本上可以得到一定的解釋的。