weblogic配置节点管理器

创建计算机

  1. 进入计算机菜单,点击新建
    image.png
  2. 填写计算机名称以及系统类型
    image.png
  3. 下一步,类型选择普通,填写ip,以及监听端口,点击完成
    image.png
  4. 使创建生效,点击激活更改

配置服务器关联计算机

  1. 进入服务器菜单,将需要分配计算机的服务器关闭,然后点击服务器名,进入配置页面。
    image
  2. 点击锁定并编辑,选择要分配的计算机,点击保存,并激活更改。
    image

配置节点管理器

  1. 进入受管服务器(配置计算机所在的服务器)的/app/weblogic/Oracle/Middleware/wlserver_10.3/common/bin 目录。执行以下命令。
./wlst.sh
  1. 执行完1后会来到wls:/offline>下,然后输入
connect()
  1. 此时会依次要求输入AdminServer(主控节点)的用户名、密码及url如下
Please enter your username [weblogic] :weblogic
Please enter your password [weblogic] :
Please enter your server URL [t3://localhost:7001] :t3://adminServerIP:port
  1. 如果第三步执行成功则会提示
Successfully connected to Admin Server 'AdminServer' that belongs to domain 'rule-AdminServer'.

如果第4步执行不成功,会返回第3步重新输入connect()
此时也可输入dumpStack()回车,查看具体错误
5. 第4步执行成功后,在wls:/rule-AdminServer/serverConfig>下依次执行

nmEnroll('/app/weblogic/Oracle/Middleware/wlserver_10.3/common/nodemanager')
nmEnroll('/app/weblogic/Oracle/Middleware/user_projects/domains/rule-subServer')

这里的domian目录是受管节点目录
6. 注册成功后,按ctrl+c返回weblogic目录,再到/app/weblogic/Oracle/Middleware/wlserver_10.3/server/bin目录下,启动节点管理器

./startNodeManager.sh

出现INFO: Secure socket listener started on port 5556并且没有报错即启动成功,然后按ctrl+c停止节点管理器,这里启动一次只是为了帮助我们生成一些配置文件,接下来我们就去修改一些配置。
7. 进入/app/weblogic/Oracle/Middleware/wlserver_10.3/common/nodemanager目录,修改nodemanager.properties

SecureListener=false
StartScriptEnabled=true
  1. 再次启动节点管理器
cd /app/weblogic/Oracle/Middleware/wlserver_10.3/server/bin

nohup ./startNodeManager.sh &
  1. 查看节点管理器是否可用,进入weblogic控制台,进入计算机菜单,点击计算机名称,然后点击监视,如果为可访问,即配置成功
    image.png
    image.png

启动服务

  1. 进入服务器菜单,选择需启动的服务器,点击启动
    image.png
    这时会发现启动失败。
    image.png
    查看启动日志,发现如下异常
<Jul 29, 2020 11:16:23 AM CST> <Notice> <WebLogicServer> <BEA-000330> <Started WebLogic Managed Server "rule-subServer3" for domain "rule-AdminServer" 
running in Production Mode> 
<Jul 29, 2020 11:16:23 AM CST> <Error> <Cluster> <BEA-000110> <Multicast socket receive error: java.net.SocketException: Socket closed
java.net.SocketException: Socket closed
        at java.net.PlainDatagramSocketImpl.receive0(Native Method)
        at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:145)
        at java.net.DatagramSocket.receive(DatagramSocket.java:725)
        at weblogic.cluster.MulticastFragmentSocket.receive(MulticastFragmentSocket.java:239)
        at weblogic.cluster.FragmentSocketWrapper.receive(FragmentSocketWrapper.java:98)
        Truncated. see log file for complete stacktrace
> 
<Jul 29, 2020 11:16:23 AM CST> <Critical> <WebLogicServer> <BEA-000362> <Server failed. Reason: 

There are 1 nested errors:

java.io.IOException: Invalid argument
        at java.net.PlainDatagramSocketImpl.send(Native Method)
        at java.net.DatagramSocket.send(DatagramSocket.java:625)
        at weblogic.cluster.MulticastFragmentSocket.sendThrottled(MulticastFragmentSocket.java:206)
        at weblogic.cluster.MulticastFragmentSocket.send(MulticastFragmentSocket.java:158)
        at weblogic.cluster.FragmentSocketWrapper.send(FragmentSocketWrapper.java:91)
        at weblogic.cluster.MulticastSender.fragmentAndSend(MulticastSender.java:395)
        at weblogic.cluster.MulticastSender.send(MulticastSender.java:178)
        at weblogic.cluster.AttributeManager.sendAttributes(AttributeManager.java:46)
        at weblogic.cluster.OutboundService.start(OutboundService.java:35)
        at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:263)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)

> 
<Jul 29, 2020 11:16:23 AM CST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to FAILED> 
<Jul 29, 2020 11:16:23 AM CST> <Error> <WebLogicServer> <BEA-000383> <A critical service failed. The server will shut itself down>

为解决这个问题,需要修改一下脚本。
2. 进入/app/weblogic/Oracle/Middleware/user_projects/domains/rule-subServer/bin目录,修改setDomainEnv.sh文件。
JAVA_OPTIONS="${JAVA_OPTIONS} ${enableHotswapFlag} -ea -da:com.bea... -da:javelin... -da:weblogic... -ea:com.bea.wli... -ea:com.bea.broker... -ea:com.bea.sbconsole... 后面增加-Djava.net.preferIPv4Stack=true以及在JAVA_OPTIONS="${JAVA_OPTIONS} ${enableHotswapFlag} -da后面增加-Djava.net.preferIPv4Stack=true
最终效果如下

"${debugFlag}" = "true" ] ; then
	JAVA_DEBUG="-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=${DEBUG_PORT},server=y,suspend=n -Djava.compiler=NONE"
	export JAVA_DEBUG
	JAVA_OPTIONS="${JAVA_OPTIONS} ${enableHotswapFlag} -ea -da:com.bea... -da:javelin... -da:weblogic... -ea:com.bea.wli... -ea:com.bea.broker... -ea:com.bea.sbconsole...-Djava.net.preferIPv4Stack=true"
	export JAVA_OPTIONS
else
	JAVA_OPTIONS="${JAVA_OPTIONS} ${enableHotswapFlag} -da -Djava.net.preferIPv4Stack=true"
	export JAVA_OPTIONS
  1. 重新在控制台启动服务器,大功告成。

weblogic配置节点管理器
https://www.zhaojun.inkhttps://www.zhaojun.ink/archives/weblogic配置节点管理器
作者
卑微幻想家
发布于
2021-07-19
许可协议