1. 程式人生 > >配置WebLogic 叢集—兩臺主機

配置WebLogic 叢集—兩臺主機

配置WebLogic Server叢集兩臺主機

配置環境說明:bea weblogic8.1sp2

1預備知識

   1.1什麼是DomainServer

1.1.1Domain

DomainWebLogic Server例項的基本管理單元。所謂Domain就是,由配置為Administrator ServerWebLogic Server例項管理的邏輯單元,這個單元是有所有相關資源的集合。

1.1.2Server

Server是一個相對獨立的,為實現某些特定功能而結合在一起的單元。

   1.2Domain and Server的關係

一個Domain 可以包含一個或多個WebLogic Server

例項,甚至是Server叢集。一個Domain中有一個且只能有一個Server 擔任管理Server的功能,其它的Server具體實現一個特定的邏輯功能。

   1.3配置叢集應用的必要條件

Ø叢集中的所有Server必須位於同一網段,並且必須是IP廣播(UDP)可到達的

Ø叢集中的所有Server必須使用相同的版本,包括Service Pack

Ø叢集中的Server必須使用永久的靜態IP地址。動態IP地址分配不能用於叢集環境。如果伺服器位於防火牆後面,而客戶機位於防火牆外面,那麼伺服器必須有公共的靜態IP地址,只有這樣,客戶端才能訪問伺服器

Ø要以CLUSTER方式執行,必須有包含CLUSTER

許可的LICENSE才行(從Bea網站上下載的試用版本就可以進行Cluster配置)

   1.4實驗環境

Ø平臺:Windows xp2

Ø軟體:Bea WebLogic Server 8.1 SP2

Ø兩臺主機:A: 127.0.0.2 , B: 127.0.0.3

2第一臺主機配置

   2.1新建一個clusterdomain

domains建立了一個clusterdomain域,其中建立了一個admainserverServer

   2.2配置Managed Server

使用http://127.0.0.2:7002/console登入到管理介面點選左面的“Server”欄,然後選擇右面的"Configure a new server",

建立兩個新managedServer, managedServer01如下:

Name: managedServer01

Listen Address:127.0.0.2

Listen Port:8001

按照前面的樣子建立另一個新Server,,名字叫做managedServer02,注意這個managedserver時執行在B主機上。

Name: managedServer02—部署在主機B

Listen Address:127.0.0.3—主機B的地址

Listen Port:8002

   2.3建立一個cluster

點選左面的“Cluster”,然後選擇右面的"Configure a new cluster",建立一個新Cluster:mycluster

然後在右面有一個gap,名字叫做“Servers”,點選進入,然後把“Available”managedServer01, managedServer02"Chosen"了,就是把剛才定義的三個server都加入到cluster裡面去。

2.4再建立一個代理server

Name: proxyserver

Listen Address127.0.0.2

port9001

切忌這次不要把這個server加入到cluster裡面去。

   2.5建立域之間的信任關係

由於managedServer是分別建在兩臺主機上部署的兩個域中,所以要建立兩臺主機域之間的信任關係。

建立域之間的信任關係,是為了使一個 WebLogic Server 域的主題中的委託人作為另一個域的委託人被接受。啟用此功能後,將通過 RMI 連線在 WebLogic Server 域之間傳遞標識,而無需在第二個域中進行身份驗證(例如,以 Joe 的身份登入到域 1 中,當對域 2 進行 RMI 呼叫時,仍會對 Joe 進行身份驗證)。

啟用內部域信任後,事務可跨越域提交。當一個域的域憑據與另一個域的域憑據相匹配時,就會建立信任關係。

中文的資料說的不詳細,按照以下英文說明就可以搞定

To establish a trust relationship between WebLogic Server domains:

1. In the left panel of the console, select the domain name at the top of the tree.

2. Select the Security-->Advanced tab.

3. Uncheck the Enable Generated Credential attribute.

4. Click the Change... link in the Credential attribute. 5.

5. Enter a password for the domain. Choose the password carefully. BEA Systems recommends using a combination of upper and lower case letters and numbers.

6. Confirm the password.

7. Click Apply.

8. Reboot WebLogic Server.

去掉預設的“Enable Generated Credential”選項,這裡將AB主機的credential密碼設定成一樣。

如果在啟動在B主機的managedServer02服務時候報出如下異常:

Reason:weblogic.security.service.SecurityServiceRuntimeException: [Security:090411]Security Realm [myrealm] improperly configured - with nested exception:

[[Security:090519]The realm myrealm is not properly configured. Follow the directions in the following errors to correctly configure the realm.

[Security:090529]None of the deployable credential mappers in realm myrealm has deployments enabled. To correct the problem, enable deployments in one of the deployable credential mappers.]

解決方法:

1. 進入A主機weblogic console控制檯,然後點選“Your Application's Security Settings”下的Realms選項

2. 進入Realms>general選項,選中“Ignore Deploy Credential Mapping”,就OK了。

2.6啟動新建的managedServer01,proxyserver

managedServer01為例,服務啟動指令碼如下:

c:

cd E:/bea/user_projects/domains/clusterdomain

E:

Call startManagedWebLogic.cmd managedServer01http:// 127.0.0.2:7001

2.7cluster配置deploy web application

注意這裡“Select targets for this Web application module  ”時,不要選擇“All servers in the cluster”選項,那樣會部署不成功,具體原因我也不曉得。

這裡我還是用我自己做測試的那個war檔案,然後通過訪問

http:// 127.0.0.2:8001/app

http:// 127.0.0.3:8002/app

可以成功得到結果

2.8配置proxyserver,讓它支援HttpClusterServlet

/tmp/下建立proxy的目錄,然後再在/tmp/proxy下面建立一個WEB-INF的目錄。

cd /tmp/proxy/WEB-INF

然後再建立如下兩個檔案

2.8.1weblogic.xml

<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic

810-web-jar.dtd">

<weblogic-web-app>

<context-root>/</context-root>

</weblogic-web-app>

2.8.2web.xml

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

<servlet>

<servlet-name>HttpClusterServlet</servlet-name>

<servlet-class>

weblogic.servlet.proxy.HttpClusterServlet

</servlet-class>

<init-param>

<param-name>WebLogicCluster</param-name>

<param-value>

127.0.0.2:8001|127.0.0.3:8002

</param-value>

</init-param>

</servlet>

<context-param>

<param-name>weblogic.httpd.inputCharset./*</param-name>

<param-value>GB2312</param-value>

</context-param>

<servlet-mapping>

<servlet-name>HttpClusterServlet</servlet-name>

<url-pattern>/</url-pattern>

</servlet-mapping>

<!--servlet-mapping>

<servlet-name>HttpClusterServlet</servlet-name>

<url-pattern>*.jsp</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>HttpClusterServlet</servlet-name>

<url-pattern>*.htm</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>HttpClusterServlet</servlet-name>

<url-pattern>*.html</url-pattern>

</servlet-mapping-->

</web-app>

記住:web.xml裡面紅顏色的部分,應該對應的你的系統裡面managedServer01,managedServer02IPPort,中間用|分割。然後

cd /tmp/

jar -c0vf proxy.war proxy

把這個web application打包成proxy.war.

然後把proxy.war deployproxyserver上。

2.8.3中文字元問題解決

當出現java的中文亂碼問題時,需要根據具體情況來分析解決。在開發Portal內容管理程式中我們遇到了以下幾種出現中文亂碼的情況:頁面內的中文字元、提交到資料庫中的內容、在頁面中顯示的從資料庫中讀出的內容和頁面之間通過URL傳遞的中文引數。通過實踐和總結,有下面一種比較通用的簡單解決方案,即在任何地方都使用GB2312字符集進行編碼和解碼,可以解決絕大多數中文亂碼問題。     1. startweblogic.cmd 檔案中新增如下程式碼(使程式編譯時按gb2312編碼):

   %JAVA_OPTIONS% -Dfile.encoding=gb2312     2. 修改weblogic.xml檔案(使頁面向伺服器傳送的內容按gb2312編碼):

   <jsp-param>

<param-name>encoding</param-name>

<param-value>gb2312</param-value>

   </jsp-param>

     3. 修改web.xml檔案(使頁面之間通過URL方式傳遞的中文引數以gb2312進行編碼):

 <context-param>

<param-name>weblogic.httpd.inputCharset./*</param-name>

<param-value>gb2312</param-value>

  </context-param>

3第二臺主機配置

   3.1新建一個clusterdomain

domains建立了一個clusterdomain域(域名名字最好和第一臺主機一樣),再建立了一個admainserverServer

   3.2配置Managed Server

建立一個managedServer執行在B主機上。要注意的是,“Managed Server”上的配置資訊要與在A主機中Cluster所指定的配置資訊一致。

Name: managedServer02—部署在主機B

Listen Address:127.0.0.3—主機B的地址

Listen Port:8002

   3.3建立域之間的信任關係,B主機不用配置

3.4啟動新建的managedServer02

服務啟動指令碼如下:

c:

cd E:/bea/user_projects/domains/clusterdomain

E:

Call startManagedWebLogic.cmd managedServer02http:// 127.0.0.2:7001

注意:紅色部分這裡是將managedServer02放到託管到主機A上的admainserver

   4叢集測試

現在訪問http://localhost:9001/app怎麼樣?本來沒有deployproxyserver上的應用也可以訪問了吧。這就說明,cluster 已經配置成功了。

 

相關推薦

配置WebLogic 叢集主機

配置WebLogic Server叢集—兩臺主機 配置環境說明:bea weblogic8.1sp2, 1預備知識    1.1什麼是Domain和Server 1.1.1Domain Domain是WebLogic Server例項的基本管理單元。所謂Domain就是,由配

思科 通過配置DHCP使主機ping通

cisco 路由 dhcp第一次寫博文,內容在附件裏。本文出自 “13266133” 博客,請務必保留此出處http://13276133.blog.51cto.com/13266133/1963808思科 通過配置DHCP使兩臺主機ping通

配置靜態IP實現主機的互通

靜態IP:主機互通1.打開gns3 軟件,選擇兩個路由器,兩個主機,並且用網線將其連接起來,顯示其各個端口的名稱。將各個端口標註上IP地址,並運行。備註:同一路由器的兩個端口不能是相同的網段2.1利用CRT軟件遠程連接,配置路由器,輸入list命令查看路由器IP及端口號。2.2輸入正確端口號及IP,即可遠程登

主機之間單向Ping不通的問題

軟件 無法 它的 適配 鏈路 沒有 陌生 默認 有用 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } p.p2 { margin: 0.0px 0.0

主機通過四個路由器互通

AD 3.3 兩臺 png 路由表 http vim 51cto 相對 讓兩臺主機通過四個路由器互通 網絡拓撲圖如下: 環境準備:需要在vmware虛擬機中克隆6臺虛擬機,每臺系統環境為centos6.9 ,每臺分配的最小內存為256M. R1,R2,R3,R4 這四臺主

網絡中主機通信的完整過程

nbsp -i 端口 tom span 目標 star com ims 主機A和主機B通信報文的轉發過程 1、主機A和主機B在同一個二層網絡中,直接走二層交換 主機A查看自己的ARP緩存,檢查是否有主機B的IP到MAC的映射,如果有映射,構造報文,目的

linux下主機互傳檔案

假設主機B:[email protected] 1.從本機傳至另一臺主機B $ scp [引數] [檔案地址+名字] [email protected]:[要儲存的位置] 此時輸入密碼即可 2.從主機B傳到本機 $ scp [引數] [email&#

Linux主機之間建立信任(ssh免密碼)

背景: 有時候我們在兩個主機之間複製檔案的時候,提示輸入密碼,很不方便,那如何免密碼複製呢?,就是使用通過linux公鑰和祕鑰,建立雙機信任關係。 在整理之前,我先說下ssh免密碼的要點 :  你想免密碼登陸到哪個主機哪個使用者, 就把你自己的公鑰檔案內容追加到遠端主

網路中主機通訊

主機A和主機B通訊報文的轉發過程     1、主機A和主機B在同一個二層網路中,直接走二層交換 主機A檢視自己的ARP快取,檢查是否有主機B的IP到MAC的對映,如果有對映,構造報文,目的IP為主機B的IP,源IP為主機A的IP,目的MAC為主機B的MAC,源MAC為主機A的M

詳談為何主機網路掩碼不一致可能導致ping不通

言歸正傳,論壇上曾經有人提問: “在一個交換機下,PCA 的IP為 192.168.0.6  掩碼 255.255.255.0    PCB的IP 為192.168.1.3 掩碼為 255.255.0.0 。    按我的理解,這兩臺電腦應該處於同一網段,但是互相卻

淺談TIDB及其整體架構 | docker-compose單機部署TIDB叢集 | 多主機使用docker部署TIDB叢集 | 網路容器的作用

TiDB 是 PingCAP 公司設計的開源分散式 HTAP (Hybrid Transactional and Analytical Processing) 資料庫,結合了傳統的 RDBMS 和 NoSQL 的最佳特性。TiDB 相容 MySQL, 支援無限的水平擴充套件,

不同內網的主機之間的通訊

若是兩臺主機分別處於兩個不同內網,他們之間要通訊,兩邊都無法主動發出連線請求,誰也不知道誰的公網地址,那該如何做呢? 這時就得需要一箇中介來聯絡這兩個內網主機。 現在我們來看看一個P2P軟體的流程,以下圖為例:     首先,Client A登入伺服器,NAT A為這次的Session分配了一個埠60000,

Linux 不同網段主機相互ping通

[[email protected] ~]$ ping 10.11.12.202 PING 10.11.12.202 (10.11.12.202) 56(84) bytes of data. 64 bytes from 10.11.12.202: icmp_seq=1 ttl=63 time=0.9

ssh連線區域網內主機

1.建立連線 (1)安裝客戶端 sudo apt-get install openssh-client sudo apt-get install openssh-server (2)檢

路由器配置實踐 教你如何在Linux中三主機個網段互相通信

網絡配置 虛擬機大家好我是你們的齊天大聖又到了齊天大聖給大家講解的時間了今天我帶你們做一個 大大項目 你們信不信如果把你不小心打開這個文檔 希望你能看完 這個博文花費了我兩天的時間所以請尊重我的勞動 假裝看完好嗎 齊天大聖在此謝過各位看官首先歡迎大家觀看操作步驟 我們正式開始題目:路由配置實踐:01. 需要按

ssh機器配置互相信任關系

Linux配置ssh互信操作步驟: 1.生成公鑰 [root@hadoop000 ~]# rm -rf ~/.ssh [root@hadoop000 ~]# ssh-keygen [root@hadoop001 ~]# rm -rf ~/.ssh [root@hadoop001 ~]# ssh-keygen

Linux多主機配置SSH免密登陸

包含 生成 目錄 apt 裏的 html .cn 密碼 查看 1.安裝ssh. sudo apt-get install ssh. 安裝完成後會在~目錄(當前用戶主目錄,即這裏的/home/xuhui)下產生一個隱藏文件夾.ssh(ls -a 可以查看隱藏文件)。如果沒有

Huawei交換機配置交換機堆疊示例

dom mit use HERE quit priority cat 如果 系統 配置兩臺交換機堆疊示例(先配置後連線方式,推薦) # 配置SwitchA的堆疊優先級為150,Domain ID為10。缺省情況下,設備的堆疊成員ID為1。此處默認SwitchA的堆疊成員I

ssh-keygen的使用方法及配置authorized_keyslinux機器相互認證

ssh-keygen的使用方法及配置authorized_keys兩臺linux機器相互認證 一、概述 1、就是為了讓兩個linux機器之間使用ssh不需要使用者名稱和密碼。採用了數字簽名RSA或者DSA來完成這個操作 2、模型分析 假設 A (192.168.20.59)為客戶機器

Log4j配置,Log4j叢集配置,Log4j Weblogic叢集配置

Log4j配置,Log4j叢集配置,Log4j Weblogic叢集配置     ================================ ©Copyright 蕃薯耀 2018年10月19日 http://fanshuyao.iteye.com/