zoukankan      html  css  js  c++  java
  • (转) Weblogic在Linux上节点服务器启动正常,计算机连接不上

                   对于服务器AdminServer, 与计算机Machine-0相关联的节点管理器无法访问。
                   所有所选服务器当前都处于与此操作不兼容的状态, 或未与运行的节点管理器关联, 或没有授权您执行请求的操作。不会执行任何操作
                   次错误基本都遇到过。在网上搜了半天,最后才解决,基本如下:
                   对于服务器server-1与计算机machine-2相关联的节点管理器无法访问

             一、对于managedServer于adminServer在同一服务器上的情况:
                    1、在控制台可查看该机器的节点管理器端口,比如为5556
                    2、用netstat -nap | grep 5556命令查看端口为5556的进程是否存在便知nodemanager是否已启动,这时肯定是不存在的
                    3、但是用ps -ef |grep java命令查看进程,可看到NodeManager进程
                    4、用kill -9 NodeManager进程号
                    5、vi /etc/hosts查看ip地址配置是否正确
                    6、vi /etc/sysconfig/network查看机器名配置是否正确
                    7、vi $WL_HOME/common/nodemanager/nodemanager.properties查看以下配置是否正确,这里的端口5556就与上文提到的端口一致,如果端口不对可能是因为在前一                          次nodemanager起来之后,在控制台修改了端口,而在nodemanager.properties文件中保存的还是原端口,所以当再次启动nodemanager时,启动的端口不是修改后的 而是原来的。
                     ListenPort=5556
                     SecureListener=false
                     StartScriptEnabled=true

    因为本人在操作的时候 没有遇到第二种情况 因此顺便记录一下

     1 二、如果AdminServer在服务器A上,ManagedServer在服务器B上的情况:
     2 这时候不能启动nodemanager还可能是因为服务器B无法与服务器A通讯,这时候会报socket相关错误。此时,
     3 1、在B服务器上修改$WL_HOME/common/nodemanager/nodemanager.properties文件:
     4 SecureListener=false
     5 StartScriptEnabled=true
     6 2、在B上$WL_HOME/common/bin/目录下执行wlst.sh脚本
     7 ./wlst.sh即可
     8 3、执行完2后会来到wls:/offline>下,在此输入connect()回车
     9 4、此时会依次要求输入AdminServer的用户名、密码及url如下
    10 Please enter your username [weblogic] :weblogic
    11 Please enter your password [weblogic] :
    12 Please enter your server URL [t3://localhost:7001] :t3://adminServerIP:port
    13 以上三项指服务器A上登录控制台时的用户名、密码及IP地址和端口
    14 5、如果第4步执行成功,则显示
    15 Successfully connected to Admin Server 'AdminServer' that belongs to domain 'my_domain'.
    16 会跳到wls:/my_domain/serverConfig>
    17 my_damain指服务器A上的domain
    18 如果第4步执行不成功,会返回第3步重新输入connect()
    19 此时也可输入dumpStack()回车,查看具体错误
    20 6、第5步执行成功后,在wls:/my_domain/serverConfig>下依次执行
    21 nmEnroll('/home/weblogic/Oracle/Middleware/wlserver_10.3/common/nodemanager')
    22 nmEnroll('/home/weblogic/Oracle/Middleware/user_projects/domains/server_b_domain')
    23 这里的weblogic目录指服务器B上的weblogic目录,视自己的目录修改语句。
    24 7、注册成功后,按ctrl+c返回weblogic目录,再到$WL_HOME/servers/bin目录下
    25 nohup ./startNodeManager.sh &启动nodemanager
    26 如果启动时报以下错误
    27 严重: Fatal error in node manager server
    28 java.net.BindException: Address already in use
    29 at java.net.PlainSocketImpl.socketBind(Native Method)
    30 at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365)
    31 at java.net.ServerSocket.bind(ServerSocket.java:319)
    32 at java.net.ServerSocket.<init>(ServerSocket.java:185)
    33 at weblogic.nodemanager.server.Listener.init(Listener.java:54)
    34 at weblogic.nodemanager.server.NMServer.start(NMServer.java:205)
    35 at weblogic.nodemanager.server.NMServer.main(NMServer.java:355)
    36 at weblogic.NodeManager.main(NodeManager.java:31)
    37              说明前面以执行过该语句,此时需要杀掉nodemanager的进程号再次执行启动语句。
    38              补充:节点管理器类型可选择"普通"。
    View Code

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

                    最近在Linux上的Weblogic上创建自己的Machine时,发现监控的nodeManager的状态一直是异常的。经查找资料发现,在启动nodeManager时使用到的配置中默认是启用了安全访问协议的,即SecureListener=true。而在创建Machine的时候选择了通信方式为普通,这样两者就连接不上了,所以本次出现的问题其实就是两者之间使用的协议不一致导致的,只要保证两者之间的通信协议一致即可。即如果使用默认配置时在建立Machine时需要选择通信方式为SSL

             在Linux上启动nodeManager的指令路径是$WL_HOME/wlserver/server/bin/startNodeManager.sh。其使用的默认的nodeManager的home目录是$WL_HOME/oracle_common/common/nodemanager,在其中有一个nodemanager.properties文件,其就是调用startNodeManager.sh时默认使用的配置文件。在我的机器上nodemanager.properties的默认配置如下:

     1 DomainsFile=/home/weblogic/Oracle/Middleware/Oracle_Home/oracle_common/common/nodemanager/nodemanager.domains
     2 
     3 LogLimit=0
     4 
     5 PropertiesVersion=12.1.3
     6 
     7 DomainsDirRemoteSharingEnabled=false
     8 
     9 AuthenticationEnabled=true
    10 
    11 JavaHome=/usr/java/jdk1.8.0_31
    12 
    13 LogLevel=INFO
    14 
    15 DomainsFileEnabled=true
    16 
    17 ListenAddress=127.0.0.1
    18 
    19 NativeVersionEnabled=true
    20 
    21 ProcessDestroyTimeout=20000
    22 
    23 ListenPort=5556
    24 
    25 weblogic.StartScriptName=startWebLogic.sh
    26 
    27 LogToStderr=true
    28 
    29 SecureListener=true
    30 
    31 LogCount=1
    32 
    33 LogAppend=true
    34 
    35 weblogic.StopScriptEnabled=false
    36 
    37 StateCheckInterval=500
    38 
    39 CrashRecoveryEnabled=false
    40 
    41 weblogic.StartScriptEnabled=true
    42 
    43 LogFile=/home/weblogic/Oracle/Middleware/Oracle_Home/oracle_common/common/nodemanager/nodemanager.log
    44 
    45 coherence.StartScriptEnabled=false
    46 
    47 LogFormatter=weblogic.nodemanager.server.LogFormatter
    48 
    49 ListenBacklog=50
    View Code

           我们在受管服务器下面启动nodeManager时可能会提示说某某domain不存在的情况,这个时候就需要我们手动的在nodeManager的home目录下的nodeManager.domains文件中来指定对应的domain的路径,格式为:domainName=domainPath

  • 相关阅读:
    ubuntu studio
    BeanUtils包的学习
    java的GUI编程
    Mybatis之旅第三篇-SqlMapConfig.xml全局配置文件解析
    Mybatis之旅第二篇-Mapper动态代理方式
    Mybatis之旅第一篇-初识Mybatis
    Spring之旅第六篇-事务管理
    Spring之旅第五篇-AOP详解
    Spring之旅第三篇-Spring配置详解
    Spring之旅第二篇-Spring IOC概念及原理分析
  • 原文地址:https://www.cnblogs.com/tzhyy/p/9336487.html
Copyright © 2011-2022 走看看