軟件版本:
OS:CentOS 7 (虛擬機,主機為Windows)
WebSphere:8.5.5.0 + 8.5.5.13
目標:
安裝好 WebSphere 并且部署自己作為示例的war包。
前期準備:
將項目打包成 war,并且在tomcat服務器上測試部署,保證war包可以正常運行。
安裝Install Manager(IM):
注冊IBM賬號(免費)
下載 websphere application server network deployment(WebSphere ND)與IBM Install Manager
解壓 IBM Install Manager 的zip包。
如果當前用戶有 root 權限,則用 install 可執(zhí)行文件安裝 IM。如果當前用戶沒有 root 權限,則使用 userinst 可執(zhí)行文件安裝 IM。
IM 安裝過程中需要輸入 IBM 賬號與密碼。
安裝WebSphere:
將 WebSphere_ND 8.5.5.0 解壓至本地文件夾,文件夾中應該會有 repository.config。
打開 IM,選擇 preference -> Add repository -> Browse,選擇解壓后的 WebSphere 文件夾中的 repository.config。點擊 OK -> Apply -> OK。
點擊 Install , 按步驟安裝 WebSphere 8.5.5.0。
安裝完畢后,WebSphere會自動啟動,并彈出first steps界面。
點擊 Installation verification, 檢查程序完整性。
升級 WebSphere 的JRE:
啟動 WebSphere。
通過瀏覽器打開 Administrative console (http://localhost:9061/ibm/console)
在welcome頁面能看到 當前 WebSphere版本為 8.5.5.0,我們需要升級成 8.5.5.13 才能升級到 Java 8。
關閉 WebSphere
下載WAS 8.5.5.13 升級包 (http://www-01.ibm.com/support/docview.wss?rs=180&context=SSEQTP&uid=swg27004980#ver85_0)和Java SDK 8 (http://www-01.ibm.com/support/docview.wss?uid=swg24044501)
解壓三個WAS 8.5.5.13 升級包 和 Java SDK 8
打開 IM,將解壓后的WAS 8.5.5.13 升級包 和 Java SDK 8 加入 repository
點擊 IM 主頁面的更新,選中 WAS 8.5.5.13 升級包 并按提示安裝。
在終端配置默認SDK。
[root@localhost bin]# cd /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/bin
[root@localhost bin]# ./managesdk.sh -listAvailable
CWSDK1003I: 可用的 SDK:
CWSDK1005I: SDK 名稱:1.6_64
CWSDK1005I: SDK 名稱:1.8_64
CWSDK1001I: 已成功執(zhí)行請求的 managesdk 任務。
[root@localhost bin]# ./managesdk.sh -getNewProfileDefault
CWSDK1007I: 新概要文件創(chuàng)建 SDK 名稱:1.6_64
CWSDK1001I: 已成功執(zhí)行請求的 managesdk 任務。
[root@localhost bin]# ./managesdk.sh -setNewProfileDefault -sdkName 1.8_64
CWSDK1022I: 現(xiàn)在,新概要文件創(chuàng)建將使用 SDK 名稱 1.8_64。
CWSDK1001I: 已成功執(zhí)行請求的 managesdk 任務。
[root@localhost bin]# ./managesdk.sh -enableProfileAll -sdkName 1.8_64
CWSDK1017I: 現(xiàn)在,啟用了概要文件 Dmgr01 以使用 SDK 1.8_64.
安裝完畢后,啟動 WebSphere。
登錄 Administrative console,顯示 WebSphere版本為 8.5.5.13。
左側菜單欄 Servers -> Server Types -> WebSphere application servers -> 頁面中間的列表 server1 -> Server Infrastructure -> Java SDKs
選擇 1.8,然后點擊 make default
查看 日志文件(/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/logs/server1/*),確認當前使用的 Java SDK 版本
部署War格式的項目包:
啟動 WebSphere Server。
通過瀏覽器打開 Administrative console, http://localhost:9061/ibm/console
左側菜單欄 Application -> New Application -> New Enterprise Application
選擇 war 包,點擊 next 此時WAS會解析War包,耗時較久(可能在上傳文件時發(fā)生瀏覽器崩潰)
選擇”Fast Path",點擊 next.
確認 Application name,這將會是本應用在WAS中的應用名,點擊 next。
關聯(lián)Module與WAS Server:勾選 Module 并在 Cluster and Server 中選擇Server。點擊 Apply。點擊next。
勾選 Web Module,點擊 next。
填寫 Centext Root。(fp必須寫成:/ 否則無法加載靜態(tài)資源)
在當前頁面: Metadata for modules 不進行任何修改,直接點擊 next.
當前頁面:Summary 確認所有配置信息。點擊 finish
等待WAS將應用部署完畢后點擊 save。
查看 左側菜單欄 Application -> Application Types -> WebSphere enterprise applications。查看是否有剛剛部署的應用。
應用的環(huán)境配置:
將MyApplication.tar解壓到 /home/admin
目錄如下:/home/admin/output 和 /home/admin/MyApplication
設置 Java.library.path:
目的是加載 libnew.so
左側菜單欄 Environment -> Shared libraries
點擊頁面中間的列表的上方的 new
Name: fp-native-lib 隨意取
Classpath: /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/installedApps/localhostNode01Cell/fp-web_war.ear/fp-web.war/WEB-INF/lib
Native Library Path: /home/admin/MyApplication/
將剛剛設置的 Shared Library 綁定到fp-web:
左側菜單欄 Application -> Application Types -> WebSphere enterprise applications
進入之前部署的 fp 應用
點擊 Reference -> Shared library references
勾選 Application 列表中的 fp-web-war, 點擊列表上方的 reference shared libraries
將 Avaliable 中的 fp-native-lib 加入到 Selected
點擊 OK 以保存修改。
啟動應用:
啟動 WebSphere Server,此時會自動啟動所有部署在該 Server 上的應用。
通過瀏覽器打開 Administrative console
左側菜單欄 Application -> Application Types -> WebSphere enterprise applications
如果應用已經(jīng)啟動,則完成。否則可以勾選要啟動的應用 點擊表格上方的 start.
遇到的問題:
虛擬機 CentOS 的自帶 firefox 無法上傳文件:VM菜單->編輯->虛擬網(wǎng)絡編輯器->VMnet8 NAT模式 -> NAT設置。查看CentOS的網(wǎng)絡IP以及服務運行的端口,配置端口轉發(fā)。(Administrative console默認端口是9061)
JVM 內(nèi)存不足:Administrative console ->左側菜單欄 servers -> Server Types -> WebSphere application servers -> 頁面中間的列表 server1-> Server Infrastructure -> Java and Process Management -> Process Definition -> Java Virtual Machine -> 修改 Initial heap size 和 Maximum heap size
報錯:ERROR:detected both log4j-over-slf4j.jar and bound slf4j-log4j.jar on the class path. 刪除項目其中一個依賴