WebSphere7集羣部署實踐與總結

轉自 http://xjsunjie.blog.51cto.com/999372/1208640 謝謝老師的分享。

WebSphere(簡稱WAS)集羣一般由一組應用服務器組成,每個服務器上部署了同樣的應用程序。通過集羣可以實現可擴展性、負載均衡、高可用性(提供故障恢復和補償機制,在關鍵性業務中提供容錯功能)。WAS提供水平集羣和垂直集羣兩種形式,垂直集羣是指同一機器上部署多個服務器,充分利用硬件資源,而水平集羣利用多臺機器資源,每臺機器部署相同的應用。本案例主要側重水平集羣,但是其中的很多概念對於垂直集羣也是適用的。


一、安裝環境和文件版本

操作系統:SUSE LINUX 10 SP3 企業版

Websphere版本:WAS7.0

安裝部署環境:一臺DM+APP  另一臺APP  還有兩個IHS服務器(或者也可裝在兩個APP上)

二、集羣部署方案圖

如圖所示

中間件平臺主要包括兩大部分:

負載分發層:

包括兩臺服務器,通過Heartbeat實現HA,提供浮動IP給客戶端,保證了系統不存在單點故障問題

負載分發軟件採用IBM HTTP Server實現

通過IBM HTTP Server配置虛擬主機,實現對不同應用的請求分發到不同的後臺WAS中間件集羣。

WAS中間件集羣:

包括兩臺服務器,每個服務器上通過水平擴展可以啓動多個WAS服務器。

基於應用部署要求,爲每個應用建立一個集羣,邏輯上實現應用之間的隔離。

保證一個集羣至少包括2個WAS實現,並且這兩個實例分別在不同的物理服務器上,這樣才能保證不出現單點故障。

三、WebSphere7集羣安裝

1、安裝前的檢查

集羣安裝時,確認所有機子的時間日期要一致

確認磁盤空間足夠

安裝目錄都是安裝於默認的/opt目錄下

確認管理域之內的所有的服務器主機名和ip地址相互能夠ping通

在安裝前,要確保四臺機的/etc/hosts文件裏面增加四臺機的ip與主機名,修改如下

**.**.**.1           app1

**.**.**.2           app2

**.**.**.3           server1

**.**.**.4           server2

(對於初次安裝系統後的主機,因爲沒有在HOSTS文件中增加此類記錄,會導致安裝失敗,現象是安裝後生成的profiles不完整,並且startManager.sh執行失敗,啓動不了管理服務。另外,安裝完WAS後,不能隨意修改主機名,否則WAS的服務啓動不了,需要重新安裝)

2、開始安裝

上傳安裝的軟件介質到指定的服務器,配置服務器能夠用xmanager或VNC進行圖形化安裝。如不能進行圖形化安裝,則需要修改was或his下的responsefile.txt文件中的各參數,工作量大而且易出錯。

進入suse linux環境,打開終端,打開文件系統,在was安裝目錄下找到launchpad.sh腳本 ,./launchpad.sh運行

下一步,進入下一個安裝畫面

選擇I ACCEPT,再下一步使用默認的安裝目錄(也可自定義安裝目錄)

接下來再進行下一步,選擇第一項安裝CELL,會安裝dmgr01與appsrv01,並且自動聯結。

注:app1主機是管理控制的主機需安裝dmgr與appsrv,app2只安裝一個Application Server(APPSRV),這是兩臺應用服務器安裝過程的唯一區別

設置管理用戶與口令

後面下一步下一步,直至安裝完成。

安裝成功完成後,在app1主機下的/opt/IBM/WebServer/AppServer/profiles目錄下可看到DMGR01,APPSRV01兩個目錄。其中DMGR01是管理臺概要文件,只在app1主機上有。


同樣,在主機app2機上安裝was後,在app2下的/opt/IBM/WebServer/AppServer/profiles目錄下可看到APPSRV01一個目錄。


在app1主機下的profiles\DMGR01\FIRSTSTEPS目錄下,

運行firststeps.sh,可進行安裝後檢測

檢測結果如果正常,則DMGR服務可正常啓動,訪問端口是9060

此時到IE,可打開WAS控制檯

http://**.**.**.**:9060/ibm/console


輸入用戶名和密碼,進入主控畫面

此時在服務器可以看到一個SERVER1,但沒有啓動代理服務前,前臺是不能啓動的。

需到服務器下運行。

# cd Profiles/AppSrv01/bin

# ./startNode.sh

節點代理啓動

ADMU0116I: Tool information is being logged in file

          /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/logs/nodeagent/startServer.log

ADMU0128I: Starting tool with the AppSrv01 profile

ADMU3100I: Reading configuration for server: nodeagent

ADMU3200I: Server launched. Waiting for initialization status.

ADMU3000I: Server nodeagent open for e-business; process id is 330


此時再到前控制檯,可正常啓動server1了


(或者在服務器下運行命令./startServer.sh Server1 ,同樣可以啓動服務)


至此,主機APP1安裝並驗證完畢。


在APP2上:

過程同app1機,不同處只是在概要文件創建裏不選擇cell,只選擇一個application server就行了。

安裝執行完成後,檢查profiles下,已有appsrv01

至其下的bin執行如下腳本,關聯節點NODE2到主機app1(server1)的DMGR服務節點

cd /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/bin

./addNode.sh  **.**.**.** 8879

其中IP地址是主機app1的IP,後面的8879是SOP端口。


輸入app1上DMGR01管理用戶wasadmin,口令******


執行成功

# ./addNode.sh  **.**.**.** 8879

ADMU0116I: Tool information is being logged in file

          /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/logs/addNode.log

ADMU0128I: Starting tool with the AppSrv01 profile

CWPKI0308I: Adding signer alias "CN=APP1, OU=Root Cer" to local

          keystore "ClientDefaultTrustStore" with the following SHA digest:

          B5:37:07:88:00:A4:78:10:95:B0:56:17:3C:8D:A9:A7:C0:BD:76:3F

Realm/Cell Name: <default>

Username: admin    

Password:      

CWPKI0308I: Adding signer alias "datapower" to local keystore

          "ClientDefaultTrustStore" with the following SHA digest:

          A9:BA:A4:B5:BC:26:2F:5D:2A:80:93:CA:BA:F4:31:05:F2:54:14:17

ADMU0001I: Begin federation of node AAAAAPP2-******Node01 with Deployment

          Manager at **.**.**.36:8879.

ADMU0009I: Successfully connected to Deployment Manager Server:

          **.**.**.36:8879

ADMU0505I: Servers found in configuration:

ADMU0506I: Server name: server1

ADMU2010I: Stopping all server processes for node AAAAAPP2-******Node01

ADMU0512I: Server server1 cannot be reached. It appears to be stopped.

ADMU0024I: Deleting the old backup directory.

ADMU0015I: Backing up the original cell repository.

ADMU0012I: Creating Node Agent configuration for node: AAAAAPP2-******Node01

ADMU0014I: Adding node AAAAAPP2-******Node01 configuration to cell:

          APP1Cell01

ADMU0016I: Synchronizing configuration between node and cell.

ADMU0018I: Launching Node Agent process for node: AAAAAPP2-******Node01

ADMU0020I: Reading configuration for Node Agent process: nodeagent

ADMU0022I: Node Agent launched. Waiting for initialization status.

ADMU0030I: Node Agent initialization completed successfully. Process id is:

          6848

ADMU0300I: The node AAAAAPP2-******Node01 was successfully added to the

          APP1Cell01 cell.

ADMU0306I: Note:

ADMU0302I: Any cell-level documents from the standalone APP1Cell01

          configuration have not been migrated to the new cell.

ADMU0307I: You might want to:

ADMU0303I: Update the configuration on the APP1Cell01 Deployment

          Manager with values from the old cell-level documents.

ADMU0306I: Note:

ADMU0304I: Because -includeapps was not specified, applications installed on

          the standalone node were not installed on the new cell.

ADMU0307I: You might want to:

ADMU0305I: Install applications onto the APP1Cell01 cell using

          wsadmin $AdminApp or the Administrative Console.

ADMU0003I: Node AAAAAPP2-******Node01 has been successfully federated.


此時再到app1主機的DMGR控制檯可以看到節點app2主機的SERVR1


可以啓動app2機上的SERVER1。(在app2機上的profiles/appsvr01/bin下執行./startServer.sh server1也可)


四、WebSphere7集羣配置

把app1與app2的應用服務放在集羣中

1、刪除兩個應用服務器下的單個SERVER。

停止兩個服務後,刪除,保存設置。

把單個服務器刪除


2、建集羣,起名HR_cluster

注意:把配置HTTP會話內存到內存的複製勾上。


下一步分別對應兩應用服務主機,各一個SERVER,分別名稱爲

app1

app2

集羣建完後如下


進入系統管理->節點中同步各節點


然後啓動集羣,集羣可正常啓動


至此,兩臺應用服務器的集羣安裝完畢!


五、安裝IHS HTTP WEB服務器

安裝IHS HTTP SERVER與PLUGINS插件

解壓程序安裝包後,執行http_ins/ihs/目錄下的install.sh文件,用xmanager來執行該文件進行安裝。


安裝畫面如下:

第一步設置端口,選擇默認的

Web1機的http port 80

http administration port 8008


後面一步,在設置插件安裝目錄與應用服務器主機名稱那裏,

app1對應的插件安裝目錄是默認的/opt/IBM/HTTPServer/plugins

對應的應用服務主機名設爲 app1

(注意:app2那臺機安裝httpserver時,選擇對應的應用服務主機設爲app2,其他過程都相同)

注意在管理用戶與口令那裏設置爲admin,******

注意:因爲這兩個web服務器要通過另外一臺應用服務器的dmgr來管理,所以這裏的安全管理用戶與口令要設。否則dmgr上無法管理啓停。


下面這一步,設置用戶與組分別爲nobody,nobody

(注意:這個用戶與組在etc/group,passwd,shadow中要有)

兩臺IHS HTTP WEB服務器的啓動過程

正常過程:

在兩臺WEB服務器下,HTTPServer/bin目錄下,執行如下腳本,啓停apache服務

./apachectl start

提示./adminctl start: admin http started


回到app1的DMGR主控制檯,建立WEB服務節點與啓動管理。

選擇系統管理->節點,增加非受管制的兩個WEB節點(前面兩個app節點是受管制節點)


點添加,選擇非受管節點


爲WEB1機上的節點命名並設置主機名稱

非受管節點名稱:servernode01

主機名:server1


第一個節點添加成功


再同樣操作繼續添加第二個非受管節點

非受管節點名稱:servernode02

主機名:server2


然後回到服務器類型下,選擇WEB服務器,選擇兩個非受管節點,分別去創建WEBSERVER


下一步後,增加設置屬性,管理用戶與口令 .用戶與口令是在WEB機上安裝IHS HTTP SERVER時的設置admin,admin


完成第一個WEB節點上WEBSERVER的創建


同上操作再去完成第二個web服務節點的webserver創建。

兩個都創建完畢後。選擇生成插件(Generate plug-in)和傳播插件(Propagate Plug-in)


生成插件成功,提示如下:

PLGC0005I: Plug-in configuration file =


/opt/IBM/WebSphere/AppServer/profiles/Dmgr01/config/cells/APP1Cell01/nodes/webnode1/servers/webserver1/plugin-cfg.xml

PLGC0052I: Plug-in configuration file generation is complete for the Web server. APP1Cell01.webnode1.webserver1.

PLGC0005I: Plug-in configuration file =


/opt/IBM/WebSphere/AppServer/profiles/Dmgr01/config/cells/APP1Cell01/nodes/webnode2/servers/webserver1/plugin-cfg.xml

PLGC0052I: Plug-in configuration file generation is complete for the Web server. APP1Cell01.webnode2.webserver1.


傳播插件成功,提示如下:

PLGC0062I: The plug-in configuration file is propagated from


/opt/IBM/WebSphere/AppServer/profiles/Dmgr01/config/cells/APP1Cell01/nodes/webnode1/servers/webserver1/plugin-cfg.xml to


/opt/IBM/HTTPServer/Plugins/config/webserver1/plugin-cfg.xml on the Web server computer.

PLGC0048I: The propagation of the plug-in configuration file is complete for the Web server. APP1Cell01.webnode1.webserver1.

PLGC0062I: The plug-in configuration file is propagated from


/opt/IBM/WebSphere/AppServer/profiles/Dmgr01/config/cells/APP1Cell01/nodes/webnode2/servers/webserver1/plugin-cfg.xml to


/opt/IBM/HTTPServer/Plugins/config/webserver1/plugin-cfg.xml on the Web server computer.

PLGC0048I: The propagation of the plug-in configuration file is complete for the Web server. APP1Cell01.webnode2.webserver1.


兩個WEB服務已建立,並可通過DMGR 來控制啓停。


最後安裝補丁加強系統的安全性。至此整個部署過程完畢。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章