weblogic11g集群配置

最近学习weblogic11g的集群配置,由于以前配置时总是遇到问题,所以现在写下来供大家交流一下。如果不对的地方,希望指教。本文针对与windows xp 32位系统。

   有图为证:

【1】先把weblogic11g安装到本地机器。然后点击Oracle WebLogic-->WebLogic Server 11gR1-->Tools-->Configuration Wizard开始配置集群。


【2】选择域源


【3】输入域的名称和选择位置


【4】输入管理员用户名和密码


【5】配置服务器的启动模式和jdk。一般开发模式的话就选择Oracle\Middleware\jdk160_29这个jdk。生产模式的话选择JRockit的jdk,路径在Oracle\Middleware\jrockit_160_29_D1.2.0-10


【6】选择可选配置。这里我们配置管理服务器和受管服务器


【7】配置管理服务器,这里的listen address一定要选择自己的静态IP地址,否则启动时会报异常。


【8】配置受管服务器。我这里都是在本地机器上面,所以选择的IP地址都是本地IP。


【9】配置集群。这里涉及到选择多播地址的问题,一般是外网访问的一个IP地址,但是一般没什么用,用默认的就行了,端口不要跟主管服务器、受管服务器、代理服务器的端口重复就行了(当然我的是本地的所以不要重复,如果你是多台机器,那就无所谓了)。


【10】向集群分配服务器。把刚才添加的受管服务器的Server1和Server2分配给集群。


【11】创建代理服务器。刚才添加了三个受管服务器,分配给集群两个Server1和Server2,剩下的那个ProxyServer就是代理服务器。


【12】配置计算机。有的人都没有配置这个计算机,也是可以启动的。但是如果你配置了这个计算机,那么你就可以直接通过主管服务器来启动和停止受管服务器了。


【13】把受管服务器和代理服务器添加到刚添加的计算机下。


【14】直接创建


【15】启动weblogic的集群也是不一样的。

Oracle\Middleware\user_projects\domains\admin_domain\bin目录下

首先,启动主管服务器

startWebLogic.cmd启动服务。当然如果是linux的话,请启动startWebLogic.sh这个命令。

然后,启动代理服务器

startManagedWebLogic.cmd ProxyServer http://192.168.15.193:8001

最后,启动受管服务器

受管服务器1:

startManagedWebLogic.cmd Server1 http://192.168.15.193:8001

受管服务器2:

startManagedWebLogic.cmd Server1 http://192.168.15.193:8001

到现在,我们的weblogic的集群算是启动完毕了。接下来访问http://192.168.15.193:8001/console这个IP,然后你会看到自己配置的服务器的启动状态。


【接下来说明一下自己配置中遇到的问题:】

1.启动主管服务器报以下错误:

<2014-9-17 上午08时52分03秒 CST> <Notice> <WebLogicServer> <BEA-000365> <Serverstate changed to STARTING>
<2014-9-17 上午08时52分03秒 CST> <Info> <WorkManager> <BEA-002900> <Initializing self-tuning thread pool>
<2014-9-17 上午08时52分07秒 CST> <Notice> <Log Management> <BEA-170019> <The server log file D:\weblogic11g\Oracle\Middleware\user_projects\domains\admin_domain\servers\AdminServer\logs\AdminServer.log is opened. All server side log eventswill be written to this file.>
<2014-9-17 上午08时52分22秒 CST> <Notice> <Security> <BEA-090082> <Security initializing using security realm myrealm.>
<2014-9-17 上午08时52分42秒 CST> <Notice> <WebLogicServer> <BEA-000365> <Serverstate changed to STANDBY>
<2014-9-17 上午08时52分42秒 CST> <Notice> <WebLogicServer> <BEA-000365> <Serverstate changed to STARTING>
<2014-9-17 上午08时53分26秒 CST> <Error> <HTTP> <BEA-101216> <Servlet: "AppManagerServlet" failed to preload on startup in Web application: "console".
java.lang.NoSuchMethodError: com/bea/utils/misc/ProcessUtil.getPropValues(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
        at com.bea.p13n.license.LicenseHelper.getLicensePropertyValues(LicenseHelper.java:259)
        at com.bea.netuix.servlets.services.LightNetUIxServices.getRestrictedPortalLimit(LightNetUIxServices.java:140)
        at com.bea.netuix.servlets.manager.UIServlet.reinitInternal(UIServlet.java:177)
        at com.bea.netuix.servlets.manager.UIServlet.initInternal(UIServlet.java:164)
        at com.bea.netuix.servlets.manager.UIServlet.access$100(UIServlet.java:60)
        Truncated. see log file for complete stacktrace>
<2014-9-17 上午08时53分26秒 CST> <Error> <Deployer> <BEA-149231> <Unable to setthe activation state to true for the application 'consoleapp'.weblogic.application.ModuleException: [HTTP:101216]Servlet: "AppManagerServlet"failed to preload on startup in Web application: "console".java.lang.NoSuchMethodError: com/bea/utils/misc/ProcessUtil.getPropValues(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
        at com.bea.p13n.license.LicenseHelper.getLicensePropertyValues(LicenseHelper.java:259)
        at com.bea.netuix.servlets.services.LightNetUIxServices.getRestrictedPortalLimit(LightNetUIxServices.java:140)
        at com.bea.netuix.servlets.manager.UIServlet.reinitInternal(UIServlet.java:177)
        at com.bea.netuix.servlets.manager.UIServlet.initInternal(UIServlet.java:164)
        at com.bea.netuix.servlets.manager.UIServlet.access$100(UIServlet.java:60)
        at com.bea.netuix.servlets.manager.UIServlet$ServletLifecycleListenerImpl.init(UIServlet.java:555)
        at com.bea.netuix.util.ServletLifecycleListener.initOrReinitInternal(ServletLifecycleListener.java:131)
        at com.bea.netuix.util.ServletLifecycleService.addServletLifecycleListener(ServletLifecycleService.java:252)
        at com.bea.netuix.util.ServletLifecycleService.addServletLifecycleListener(ServletLifecycleService.java:182)
        at com.bea.netuix.servlets.manager.UIServlet.init(UIServlet.java:131)
        at com.bea.netuix.servlets.manager.SingleFileServlet.init(SingleFileServlet.java:75)
        at javax.servlet.GenericServlet.init(GenericServlet.java:241)
        at com.bea.console.utils.MBeanUtilsInitSingleFileServlet.init(MBeanUtilsInitSingleFileServlet.java:38)
        at weblogic.servlet.AsyncInitServlet.initDelegate(AsyncInitServlet.java:100)
        at weblogic.servlet.AsyncInitServlet.init(AsyncInitServlet.java:84)
        at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
        at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64)
        at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58)
        at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48)
        at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:539)
        at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1981)
        at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1955)
        at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1874)
        at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3154)
        at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1518)
        at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:484)
        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
        at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
        at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
        at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
        at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
        at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
        at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:671)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
        at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
        at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:59)
        at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
        at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
        at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:184)
        at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:361)
        at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:51)
        at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:200)
        at weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30)
        at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240)
        at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169)
        at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123)
        at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:180)
        at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:96)
        at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)

        at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1520)
        at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:484)
        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
        at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
        Truncated. see log file for complete stacktrace
Caused By: java.lang.NoSuchMethodError: com/bea/utils/misc/ProcessUtil.getPropValues(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
        at com.bea.p13n.license.LicenseHelper.getLicensePropertyValues(LicenseHelper.java:259)
        at com.bea.netuix.servlets.services.LightNetUIxServices.getRestrictedPortalLimit(LightNetUIxServices.java:140)
        at com.bea.netuix.servlets.manager.UIServlet.reinitInternal(UIServlet.java:177)
        at com.bea.netuix.servlets.manager.UIServlet.initInternal(UIServlet.java:164)
        at com.bea.netuix.servlets.manager.UIServlet.access$100(UIServlet.java:60)
        Truncated. see log file for complete stacktrace
>
<2014-9-17 上午08时53分26秒 CST> <Notice> <Log Management> <BEA-170027> <The Server has established connection with the Domain level Diagnostic Service successfully.>
<2014-9-17 上午08时53分28秒 CST> <Notice> <WebLogicServer> <BEA-000365> <Serverstate changed to ADMIN>
<2014-9-17 上午08时53分29秒 CST> <Notice> <WebLogicServer> <BEA-000365> <Serverstate changed to RESUMING>
<2014-9-17 上午08时53分31秒 CST> <Notice> <Server> <BEA-002613> <Channel "Default" is now listening on 192.168.15.193:8001 for protocols iiop, t3, ldap, snmp, http.>
<2014-9-17 上午08时53分31秒 CST> <Notice> <WebLogicServer> <BEA-000329> <Started WebLogic Admin Server "AdminServer" for domain "admin_domain" running in Production Mode>
<2014-9-17 上午08时53分31秒 CST> <Notice> <WebLogicServer> <BEA-000365> <Serverstate changed to RUNNING>
<2014-9-17 上午08时53分31秒 CST> <Notice> <WebLogicServer> <BEA-000360> <Serverstarted in RUNNING mode>

这个问题是因为主机上同时存在低版本的weblogic,主机环境变量指向了低版本的jar文件。把低版本的weblogic卸载了在重新启动就好了。

2.启动主管服务器和启动代理服务器都是正常的,但是启动受管服务器的时候报SocketException的异常。是有关多播地址连接的问题。一般配置主管、受管、代理服务器的时候选择的linsten address错误。异常信息如下:

Unable to initialize
the server: weblogic.server.ServerLifecycleException:
Failed to listen on multicast addressCan’t assign requested address>
*********************************************************
The WebLogic Server did not start up properly.
Exception raised: ‘java.net.SocketException: Can’t assign
requested address’
Reason: weblogic.server.ServerLifecycleException: Failed
to listen on multicast addressCan’t assign requested address

从网上看到这个是因为组播路由有关系。所以就 查看一下组播路由列表(netstat -rn)。
如果没有,再添加一个路由(route add 239.192.0.0 192.168.15.193)。然后再启动受管服务器应该就好了。

这个一定要绑定自己本地机器的静态IP地址。


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值