您好,登錄后才能下訂單哦!
這篇文章主要講解了“websphere集群的創(chuàng)建方法”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“websphere集群的創(chuàng)建方法”吧!
前面已經(jīng)介紹了創(chuàng)建概要文件,這里把前面創(chuàng)建的管理節(jié)點(diǎn)和受管理節(jié)點(diǎn)結(jié)合起來(lái)做集群。
首先進(jìn)入管理節(jié)點(diǎn)的bin目錄啟動(dòng)管理節(jié)點(diǎn),啟動(dòng)了才能進(jìn)入管理控制臺(tái)
./startManager.sh
進(jìn)入其他受管理節(jié)點(diǎn)啟動(dòng)節(jié)點(diǎn),也可以不啟動(dòng),不啟動(dòng)也可以創(chuàng)建集群,因?yàn)閯?chuàng)建概要的時(shí)候我們已經(jīng)把受管理節(jié)點(diǎn)添加到管理節(jié)點(diǎn)中了,現(xiàn)在啟動(dòng)只是為了方便后續(xù)操作
./startNode.sh
然后進(jìn)入管理控制臺(tái),然后服務(wù)器 > 集群 > WebSphere Application Server 集群 ,點(diǎn)擊新建集群,新建集群的名字我們自己隨便填,配置 HTTP 會(huì)話(huà)內(nèi)存到內(nèi)存復(fù)制的復(fù)選框我們這里先不勾選,選擇的好處就是我們這里所有節(jié)點(diǎn)的會(huì)話(huà)是共享的,如果配置負(fù)載均衡的話(huà),這幾個(gè)節(jié)點(diǎn)的會(huì)話(huà)是無(wú)縫切換的。如果這幾個(gè)節(jié)點(diǎn)都在同一臺(tái)服務(wù)器上,使用這個(gè)選項(xiàng)就非常方便了,如果位于多個(gè)不同服務(wù)器就麻煩了。這里我們不勾選,因?yàn)槲覀兿旅媸褂脮?huì)話(huà)管理的另一種方式。集群名字填好后,下面就是要添加集群的成員,所有需要的節(jié)點(diǎn)添加完集群就創(chuàng)建完成了。
集群創(chuàng)建完成后,我們就可以創(chuàng)建JDBC 提供程序了,還有數(shù)據(jù)源了,創(chuàng)建的時(shí)候注意作用域都要選擇集群。
這里我們重點(diǎn)創(chuàng)建一個(gè)數(shù)據(jù)源,用來(lái)管理會(huì)話(huà)的,數(shù)據(jù)源名:sessions,JNDI 名稱(chēng):jdbc/sessions,以上名字可以隨便寫(xiě),最好容易分辨。下一步選擇我們之前創(chuàng)建的JDBC提供程序,websphere默認(rèn)支持DB2和Oracle,我們使用Oracle,這里選擇Oracle JDBC Driver,然后下一步填寫(xiě)數(shù)據(jù)庫(kù)連接的URL,最后完成。
數(shù)據(jù)源配置好了,數(shù)據(jù)庫(kù)的表結(jié)構(gòu)是什么樣的呢,參考IBM官方文檔
https://www.ibm.com/support/knowledgecenter/zh/SSAW57_9.0.5/com.ibm.websphere.nd.multiplatform.doc/ae/uprs_rpersistence.html
https://www.ibm.com/support/knowledgecenter/zh/SSAW57_9.0.5/com.ibm.websphere.nd.multiplatform.doc/ae/tprs_cnfp.html
https://www.ibm.com/support/knowledgecenter/zh/SSAW57_9.0.5/com.ibm.websphere.nd.multiplatform.doc/ae/tprs_table_creation.html
對(duì)于 Oracle:
CREATE TABLE SESSIONS ( ID VARCHAR(128) NOT NULL , PROPID VARCHAR(128) NOT NULL , APPNAME VARCHAR(128) NOT NULL, LISTENERCNT SMALLINT , LASTACCESS INTEGER, CREATIONTIME INTEGER, MAXINACTIVETIME INTEGER , USERNAME VARCHAR(256) , SMALL RAW(2000), MEDIUM LONG RAW , LARGE RAW(1) )
如果 Web 容器定制屬性 UseOracleBLOB 設(shè)置為 true,那么:
CREATE TABLE SESSIONS ( ID VARCHAR(128) NOT NULL , PROPID VARCHAR(128) NOT NULL , APPNAME VARCHAR(128) NOT NULL, LISTENERCNT SMALLINT , LASTACCESS INTEGER, CREATIONTIME INTEGER, MAXINACTIVETIME INTEGER , USERNAME VARCHAR(256) , SMALL RAW(2000), MEDIUM BLOB, LARGE RAW(1) )
兩者只是MEDIUM字段的類(lèi)型不一樣,我們這里采用默認(rèn)第一種方式在數(shù)據(jù)創(chuàng)建好表。
創(chuàng)建完數(shù)據(jù)源之后需要重啟nodeagent,不然連接數(shù)據(jù)庫(kù)會(huì)有錯(cuò)誤.應(yīng)用安裝完成之后同步一下節(jié)點(diǎn),然后再啟動(dòng)應(yīng)用.
然后設(shè)置服務(wù)器配置,服務(wù)器 > 服務(wù)器類(lèi)型 > WebSphere Application Server > server_name > 會(huì)話(huà)管理 > 分布式環(huán)境設(shè)置,直接點(diǎn)擊數(shù)據(jù)庫(kù),修改 數(shù)據(jù)源 JNDI 名稱(chēng),這個(gè)名稱(chēng)看仔細(xì)了,是系統(tǒng)默認(rèn)的,需要改成我們上面創(chuàng)建的jdbc/sessions,修改用戶(hù)標(biāo)識(shí)和密碼,也就是SESSIONS表所在庫(kù)的用戶(hù)名和密碼,其他配置不用修改,然后保存配置,數(shù)據(jù)庫(kù)默認(rèn)就會(huì)被選中有效。這里的server_name是我們的節(jié)點(diǎn),把所有節(jié)點(diǎn)的服務(wù)器都這樣配置好以后,重啟所有server,然后就會(huì)生效了。
可以安裝一個(gè)應(yīng)用,通過(guò)一個(gè)節(jié)點(diǎn)的端口登錄應(yīng)用,再在另一個(gè)節(jié)點(diǎn)的端口打開(kāi)應(yīng)用,看看會(huì)話(huà)是否也有效,同時(shí)數(shù)據(jù)庫(kù)SESSIONS表應(yīng)該已經(jīng)有數(shù)據(jù)了。
注意應(yīng)用程序的管理也有一個(gè)會(huì)話(huà)管理 > 分布式環(huán)境設(shè)置,這里無(wú)需設(shè)置,設(shè)置后也沒(méi)有作用。
集群創(chuàng)建好,接下來(lái)配置ihs,實(shí)現(xiàn)ihs的負(fù)載均衡。先配置 Web 服務(wù)器插件,使用命令行來(lái)創(chuàng)建,可參考
https://www.ibm.com/support/knowledgecenter/zh/SSEQTP_9.0.5/com.ibm.websphere.base.doc/ae/tins_pctcl_using.html
需要先配置一個(gè) tool 自變量的響應(yīng)文件,創(chuàng)建定義時(shí),此參數(shù)是必需的。
我們就在WCT目錄創(chuàng)建一個(gè)響應(yīng)文件把
cd /opt/IBM/WebSphere/Toolbox/WCT
這個(gè)目錄下有個(gè)pct_responsefile.txt,就是響應(yīng)文件的模板,不過(guò)是Windows下的,我們需要改動(dòng)的很多,不過(guò)可以參考,里面有很多注釋。我們創(chuàng)建響應(yīng)文件
vi responsefile.txt
文件內(nèi)容如下,這里的概要文件指定的是受管理節(jié)點(diǎn)Custom01,指定管理節(jié)點(diǎn)是運(yùn)行生成configurewebserver1.sh腳本報(bào)不是有效的節(jié)點(diǎn)錯(cuò)誤,可以看下面后續(xù)的測(cè)試。
configType=local enableAdminServerSupport=true enableUserAndPass=true ihsAdminUserID=admin ihsAdminPassword=ihsadmin ihsAdminPort=8008 ihsAdminCreateUserAndGroup=true ihsAdminUnixUserGroup=was ihsAdminUnixUserID=ihs mapWebServerToApplications=true wasExistingLocation=/opt/IBM/WebSphere/AppServer/ profileName=Custom01 webServerConfigFile1=/opt/IBM/HTTPServer/conf/httpd.conf webServerDefinition=webserver1 webServerHostName=localhost webServerOS=Linux webServerInstallArch=64 webServerPortNumber=80 webServerSelected=ihs
創(chuàng)建完響應(yīng)文件以后我們就可以進(jìn)行配置了
./wctcmd.sh -tool pct \ -createDefinition \ -defLocPathname /opt/IBM/WebSphere/Plugins \ -defLocName WebServerPlugins \ -response /opt/IBM/WebSphere/Toolbox/WCT/responsefile.txt
如果創(chuàng)建失敗,檢查參數(shù)設(shè)置是否有問(wèn)題,比如參數(shù)路徑、系統(tǒng)是不是Linux、系統(tǒng)是不是64版本,然后修改響應(yīng)參數(shù),還有可能缺少一些32位類(lèi)庫(kù)支持,可嘗試下載如下軟件
yum install ld-linux.so.2 libgcc.i686
創(chuàng)建成功后會(huì)在/opt/IBM/WebSphere/Plugins/bin/目錄下生成一個(gè)configurewebserver1.sh腳本,因?yàn)槲覀冺憫?yīng)文件定義的服務(wù)器名字就是webserver1。
我們將這個(gè)腳本文件復(fù)制到管理節(jié)點(diǎn)bin目錄下
cp /opt/IBM/WebSphere/Plugins/bin/configurewebserver1.sh /opt/IBM/WebSphere/AppServer/bin/
然后在A(yíng)ppServer/bin/下運(yùn)行這個(gè)腳本
./configurewebserver1.sh
后續(xù):
上面通過(guò)命令創(chuàng)建的configurewebserver1.sh,如果指定的概要文件是管理節(jié)點(diǎn),運(yùn)行會(huì)報(bào)節(jié)點(diǎn)不是有效的節(jié)點(diǎn)的問(wèn)題,通過(guò)圖形界面創(chuàng)建的,同樣是管理節(jié)點(diǎn),則不會(huì)報(bào)錯(cuò),這樣我們可以自己手動(dòng)編輯configurewebserver1.sh腳本,比對(duì)兩個(gè)生成的腳本,唯一的區(qū)別就是最后一行的參數(shù),一個(gè)是unmanaged ihs-node,另一個(gè)是managed Dmgr01Node,可能是生成的Dmgr01Node名字與現(xiàn)有節(jié)點(diǎn)名字重復(fù)了,命令行工具的一個(gè)Bug吧。
#!/bin/sh binDir=`dirname "$0"` . "$binDir/setupCmdLine.sh" COMMAND_INVOKED="$0" PROFILE_NAME_PARAMETER= WSADMIN_USERID_PARAMETER= WSADMIN_PASSWORD_PARAMETER= IHS_ADMIN_PASSWORD_PARAMETER= printUsage() { echo "" echo "" echo "Usage: $COMMAND_INVOKED" echo " [ -profileName profile_name ] " echo " [ -user WAS_Admin_userID ] " echo " [ -password WAS_Admin_password ] " echo " [ -ihsAdminPassword IHS_Admin_password ]" echo " [ -help | -? ]" echo " " echo "Where:" echo " \"profileName\" is the name of the profile in which " echo " web server should be created" echo " \"user\" is the WebSphere Administration userID" echo " \"password\" is the WebSphere Administration password" echo " \"ihsAdminPassword\" is the password to access the IHS Adminstration server" echo " " echo "Example: " echo " $COMMAND_INVOKED -profileName AppSrv01 -user admin -password admin1" echo " " echo " " exit 0 } printError() { echo "ERROR: $1" printUsage } while [ $# -gt 0 ]; do case $1 in -help|-?) printUsage exit 0 ;; -profileName) shift echo "Using the profile $1" PROFILE_NAME_PARAMETER="-profileName $1" ;; -user) shift echo "Using WAS admin userID $1" WSADMIN_USERID_PARAMETER="-user $1" ;; -password) shift WSADMIN_PASSWORD_PARAMETER="-password $1" ;; -ihsAdminPassword) shift IHS_ADMIN_PASSWORD_PARAMETER="$1" ;; -*) echo "Unsupported option" echo "$1" printUsage exit 0 ;; esac shift done "$binDir/wsadmin.sh" $PROFILE_NAME_PARAMETER $WSADMIN_USERID_PARAMETER $WSADMIN_PASSWORD_PARAMETER -f $WAS_HOME/bin/configureWebserverDefinition.jacl webserver1 IHS '/opt/IBM/HTTPServer' '/opt/IBM/HTTPServer/conf/httpd.conf' 80 MAP_ALL '/opt/IBM/WebSphere/Plugins' unmanaged ihs-node localhost linux 8008 admin ihsadmin
如果有其他改動(dòng),比對(duì)上面腳本中的參數(shù)修改就可以了。創(chuàng)建好之后添加運(yùn)行權(quán)限
chmod +x configurewebserver1.sh
然后在A(yíng)ppServer/bin/目錄下運(yùn)行就好了,運(yùn)行之后會(huì)單獨(dú)創(chuàng)建一個(gè)ihs-node節(jié)點(diǎn),可以在拓?fù)鋱D中看到,
要想在管理控制臺(tái)可以啟動(dòng)和停止ihs,需要啟動(dòng)ihs的管理服務(wù)
/opt/IBM/HTTPServer/bin/adminctl start
注意編輯的是運(yùn)行生成腳本wctcmd.sh之后生成的configurewebserver1.sh,如果不運(yùn)行上面wctcmd.sh直接寫(xiě)一個(gè)configurewebserver1.sh執(zhí)行也正常,但是啟動(dòng)ihs控制臺(tái)adminctl start會(huì)報(bào)錯(cuò)誤
Syntax error on line 7 of /opt/IBM/HTTPServer/conf/admin.conf:Port must be specified
因?yàn)椴贿\(yùn)行生成腳本,一些環(huán)境變量就沒(méi)有設(shè)置,管理端口等變量就找不到正確的值。
注:
如果你是用的圖形界面的Web插件管理工具,點(diǎn)擊菜單沒(méi)反應(yīng),一般是Linux服務(wù)器會(huì)出現(xiàn)這種情況,由于缺少軟件包導(dǎo)致的,或者64位操作系統(tǒng),缺少32系統(tǒng)包的支持,可以在終端下運(yùn)行wct.sh看看有什么錯(cuò)誤,或者查看一下錯(cuò)誤日志
cat /root/.ibm/WebSphere/workspaces/WCT85/.metadata/.log
再或者直接安裝一下包試試
yum install libgcc libgcc.i686 ld-linux.so.2 gtk2.i686 PackageKit-gtk3-module PackageKit-gtk3-module.i686
再提供兩條命令
#刪除服務(wù)器定義 ./wctcmd.sh -tool pct -deleteDefinition webserver1 -defLocName WebServerPlugins #刪除插件位置定義 ./wctcmd.sh -tool pct -removeDefinitionLocation -defLocName WebServerPlugins
感謝各位的閱讀,以上就是“websphere集群的創(chuàng)建方法”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)websphere集群的創(chuàng)建方法這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。