weblogic集群配置.docx
- 文档编号:6658870
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:13
- 大小:233.27KB
weblogic集群配置.docx
《weblogic集群配置.docx》由会员分享,可在线阅读,更多相关《weblogic集群配置.docx(13页珍藏版)》请在冰豆网上搜索。
weblogic集群配置
配置WebLogicServer集群—两台主机
配置环境说明:
beaweblogic8.1sp2,
1预备知识
1.1什么是Domain和Server
1.1.1Domain
Domain是WebLogicServer实例的基本管理单元。
所谓Domain就是,由配置为AdministratorServer的WebLogicServer实例管理的逻辑单元,这个单元是有所有相关资源的集合。
1.1.2Server
Server是一个相对独立的,为实现某些特定功能而结合在一起的单元。
1.2DomainandServer的关系
一个Domain可以包含一个或多个WebLogicServer实例,甚至是Server集群。
一个Domain中有一个且只能有一个Server担任管理Server的功能,其它的Server具体实现一个特定的逻辑功能。
1.3配置集群应用的必要条件
Ø集群中的所有Server必须位于同一网段,并且必须是IP广播(UDP)可到达的
Ø集群中的所有Server必须使用相同的版本,包括ServicePack
Ø集群中的Server必须使用永久的静态IP地址。
动态IP地址分配不能用于集群环境。
如果服务器位于防火墙后面,而客户机位于防火墙外面,那么服务器必须有公共的静态IP地址,只有这样,客户端才能访问服务器
Ø要以CLUSTER方式运行,必须有包含CLUSTER许可的LICENSE才行(从Bea网站上下载的试用版本就可以进行Cluster配置)
1.4本文环境
Ø平台:
Windowsxp2
Ø软件:
BeaWebLogicServer8.1SP2
Ø两台主机:
A:
127.0.0.2,B:
127.0.0.3
2第一台主机配置
2.1新建一个clusterdomain域
在domains建立了一个clusterdomain域,其中建立了一个admainserver的Server。
2.2配置ManagedServer
使用http:
//127.0.0.2:
7002/console登录到管理界面点击左面的“Server”栏,然后选择右面的"Configureanewserver",建立两个新managedServer,managedServer01如下:
Name:
managedServer01
ListenAddress:
127.0.0.2
ListenPort:
8001
按照前面的样子建立另一个新Server,,名字叫做managedServer02,注意这个managedserver时运行在B主机上。
Name:
managedServer02—部署在主机B上
ListenAddress:
127.0.0.3—主机B的地址
ListenPort:
8002
2.3建立一个cluster
点击左面的“Cluster”栏,然后选择右面的"Configureanewcluster",建立一个新Cluster:
mycluster
然后在右面有一个gap,名字叫做“Servers”,点击进入,然后把“Available”的managedServer01,managedServer02都"Chosen"了,就是把刚才定义的三个server都加入到cluster里面去。
2.4再建立一个代理server
Name:
proxyserver
ListenAddress:
127.0.0.2
port:
9001
切忌这次不要把这个server加入到cluster里面去。
2.5建立域之间的信任关系
由于managedServer是分别建在两台主机上部署的两个域中,所以要建立两台主机域之间的信任关系。
建立域之间的信任关系,是为了使一个WebLogicServer域的主题中的委托人作为另一个域的委托人被接受。
启用此功能后,将通过RMI连接在WebLogicServer域之间传递标识,而无需在第二个域中进行身份验证(例如,以Joe的身份登录到域1中,当对域2进行RMI调用时,仍会对Joe进行身份验证)。
启用内部域信任后,事务可跨越域提交。
当一个域的域凭据与另一个域的域凭据相匹配时,就会建立信任关系。
中文的资料说的不详细,按照以下英文说明就可以搞定
ToestablishatrustrelationshipbetweenWebLogicServerdomains:
1.Intheleftpaneloftheconsole,selectthedomainnameatthetopofthetree.
2.SelecttheSecurity-->Advancedtab.
3.UnchecktheEnableGeneratedCredentialattribute.
4.ClicktheChange...linkintheCredentialattribute.5.
5.Enterapasswordforthedomain.Choosethepasswordcarefully.BEASystemsrecommendsusingacombinationofupperandlowercaselettersandnumbers.
6.Confirmthepassword.
7.ClickApply.
8.RebootWebLogicServer.
去掉默认的“EnableGeneratedCredential”选项,这里将A和B主机的credential密码设置成一样。
如果在启动在B主机的managedServer02服务时候报出如下异常:
Reason:
weblogic.security.service.SecurityServiceRuntimeException:
[Security:
090411]SecurityRealm[myrealm]improperlyconfigured-withnestedexception:
[[Security:
090519]Therealmmyrealmisnotproperlyconfigured.Followthedirectionsinthefollowingerrorstocorrectlyconfiguretherealm.
[Security:
090529]Noneofthedeployablecredentialmappersinrealmmyrealmhasdeploymentsenabled.Tocorrecttheproblem,enabledeploymentsinoneofthedeployablecredentialmappers.]
解决方法:
1.进入A主机weblogicconsole控制台,然后点击“YourApplication'sSecuritySettings”下的Realms选项
2.进入Realms—>general选项,选中“IgnoreDeployCredentialMapping”,就OK了。
2.6启动新建的managedServer01,proxyserver
以managedServer01为例,服务启动脚本如下:
c:
cdE:
\bea\user_projects\domains\clusterdomain
E:
CallstartManagedWebLogic.cmdmanagedServer01http:
//127.0.0.2:
7001
2.7给cluster配置deploywebapplication
注意这里“SelecttargetsforthisWebapplicationmodule ”时,不要选择“Allserversinthecluster”选项,那样会部署不成功,具体原因我也不晓得。
这里我还是用我自己做测试的那个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
DOCTYPEweblogic-web-appPUBLIC"-//BEASystems,Inc.//DTDWebApplication8.1//EN""
810-web-jar.dtd">
2.8.2web.xml
DOCTYPEweb-appPUBLIC"-//SunMicrosystems,Inc.//DTDWebApplication2.3//EN""
weblogic.servlet.proxy.HttpClusterServlet
127.0.0.2:
8001|127.0.0.3:
8002
--servlet-mapping>
记住:
web.xml里面红颜色的部分,应该对应的你的系统里面managedServer01,跟managedServer02的IP和Port,中间用|分割。
然后
cd/tmp/
jar-c0vfproxy.warproxy
把这个webapplication打包成proxy.war.
然后把proxy.wardeploy到proxyserver上。
2.8.3中文字符问题解决
当出现java的中文乱码问题时,需要根据具体情况来分析解决。
在开发Portal内容管理程序中我们遇到了以下几种出现中文乱码的情况:
页面内的中文字符、提交到数据库中的内容、在页面中显示的从数据库中读出的内容和页面之间通过URL传递的中文参数。
通过实践和总结,有下面一种比较通用的简单解决方案,即在任何地方都使用GB2312字符集进行编码和解码,可以解决绝大多数中文乱码问题。
1.在startweblogic.cmd文件中添加如下代码(使程序编译时按gb2312编码):
%JAVA_OPTIONS%-Dfile.encoding=gb2312;
2.修改weblogic.xml文件(使页面向服务器发送的内容按gb2312编码):
3.修改web.xml文件(使页面之间通过URL方式传递的中文参数以gb2312进行编码):
2.9测试
8。
这个就是实现了failover了,不过现在还不知道那个loadbalance如何设置。
3第二台主机配置
3.1新建一个clusterdomain域
在domains建立了一个clusterdomain域(域名名字最好和第一台主机一样),再建立了一个admainserver的Server。
3.2配置ManagedServer
建立一个managedServer运行在B主机上。
要注意的是,“ManagedServer”上的配置信息要与在A主机中Cluster所指定的配置信息一致。
Name:
managedServer02—部署在主机B上
ListenAddress:
127.0.0.3—主机B的地址
ListenPort:
8002
3.3建立域之间的信任关系,B主机不用配置
参考A主机的“建立域之间的信任关系”
3.4启动新建的managedServer02
服务启动脚本如下:
c:
cdE:
\bea\user_projects\domains\clusterdomain
E:
CallstartManagedWebLogic.cmdmanagedServer02http:
//127.0.0.2:
7001
注意:
红色部分这里是将managedServer02放到托管到主机A上的admainserver下
4集群测试
现在访问http:
//localhost:
9001/app怎么样?
本来没有deploy到proxyserver上的应用也可以访问了吧。
这就说明,cluster已经配置成功了。
先在把myserver01停掉,访问http:
//localhost:
10001/portal/index.jsp还是可以的。
但是http:
//localhost:
8001/portal/index.jsp已经没有应答了。
再把myserver02停掉,访问http:
//localhost:
10001/portal/index.jsp还是可以的。
但是http:
//localhost:
8001/portal/index.jsp
跟http:
//localhost:
9001/portal/index.jsp已经没有反应了。
再把myserver停掉,这时侯cluster得后台的三个server都已经关掉了,此时呢,嘿嘿,再访问http:
//localhost:
10001/portal/index.jsp呢?
得到下面的应答:
Nobackendserversavailable
嘿嘿,这次大家都不行了。
附录A:
启用WebLogicServer域之间的信任
中文资料网址
注意:
在启用WebLogicServer域之间的信任后,会将服务器暴露于中间人攻击之下。
因此,在启用生产环境中的信任时应十分谨慎。
BEA建议使用强网络安全,例如使用专用通信通道或由强防火墙提供保护。
建立域之间的信任关系,是为了使一个WebLogicServer域的主题中的委托人作为另一个域的委托人被接受。
启用此功能后,将通过RMI连接在WebLogicServer域之间传递标识,而无需在第二个域中进行身份验证(例如,以Joe的身份登录到域1中,当对域2进行RMI调用时,仍会对Joe进行身份验证)。
启用内部域信任后,事务可跨越域提交。
当一个域的域凭据与另一个域的域凭据相匹配时,就会建立信任关系。
默认情况下,域凭据是在首次启动WebLogicServer域时随机创建的。
此过程可以确保,在默认情况下不会存在使用同一凭据的两个WebLogicServer域。
要启用两个WebLogicServer域之间的信任,必须为这两个WebLogicServer域中的凭据显式指定相同的值。
在管理控制台中,使用“域”节点下的“安全:
高级”页上的配置选项可以设置域凭据。
在“凭据”和“确认凭据”字段中,请使用为每个域指定的相同凭据替换随机凭据。
在创建委托人时,WebLogicServer将使用域凭据对委托人进行签名。
当从远程源收到主题时,将对其委托人进行验证(将重新创建签名,如果签名匹配,则表明远程域具有相同的域凭据)。
如果验证失败,将生成错误。
如果验证成功,将信任这些委托人,就如同他们是本地创建的一样。
注意:
下次将config.xml文件持久保存到磁盘时,任何采用明文形式的凭据都将被加密。
如果需要WebLogicServer6.x域与其他WebLogicServer域进行互操作,请将WebLogicServer域中的域凭据更改为WebLogicServer6.x域中的system用户的密码。
如果要在受管服务器环境中启用域之间的信任,必须停止两个域中的管理服务器和所有受管服务器,然后重新启动它们。
如果不执行此步骤,未重新引导的服务器将不会信任已重新引导的服务器。
在启用WebLogicServer域之间的信任时,请记住以下几点:
▪由于域将信任远程委托人而不会要求进行身份验证,因此,域中可以具有未在域的身份验证数据库中定义的已通过身份验证的用户。
此情况可导致出现授权问题。
▪域中任何已通过身份验证的用户均可以访问与原始域之间启用信任的任何其他域,而无需重新进行身份验证。
进行此类登录时,将不会进行审核,也不会对组成员资格进行验证。
因此,如果Joe是对其进行身份验证的原始域中的管理员组成员,则当他对所有可信域进行RMI调用时,他将自动成为这些域的管理员组成员。
▪如果域2信任域1和域3,则现在域1和域3将隐式信任对方。
因此,域1中的Administrators组成员也是域3中的Administrators组成员。
这可能不是所需的信任关系。
▪如果扩展WLSUser和WLSGroup委托人类,则必须在共享信任的所有域的服务器类路径中安装自定义委托人类。
请参阅“管理控制台联机帮助”中的启用域之间的信任关系。
注意:
也可以使用WebLogic脚本工具或Java管理扩展(JavaManagementExtensions,简称JMX)API来修改安全配置。
英文资料网址
http:
//e-
Note:
EnablingtrustbetweenWebLogicServerdomainsopenstheserversuptoman-in-the-middleattacks.Greatcareshouldbetakenwhenenablingtrustinaproductionenvironment.BEArecommendshavingstrongnetworksecuritysuchasadedicatedcommunicationchannelorprotectionbyastrongfirewall.
AtrustrelationshipisestablishedwhenprincipalsinaSubjectfromoneWebLogicServerdomain(referredtoasthedomain)areacceptedasprincipalsinthelocaldomain.
ThisreleaseofWebLogicServeraddsmorerestrictionstothetrustrelationshipbetweendomains.NowatrustrelationshipisestablishedwhentheCredentialattributeforonedomainmatchestheCredentialattributeforanotherdomain.
Bydefault,whenyoubootanAdministrationServerforthefirsttime,theCredentialattributeisnotdefined.AstheAdministrationServerboots,itnoticesthattheCredentialattributeisnotdefinedandgeneratesarandomcredential.TheAdministrationServerusesthatcredentialtosignprincipalsinsubjectscreatedinthatdomain.Theconfig.xmlfilewhichstoresthecredentialissavedafterthecredentialisgenerated.ManagedserversinthatdomainobtainthecredentialfromtheAdministrationServerwhenbooting.
WebLogic
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- weblogic 集群 配置