I'm testing the new WebLogic server release along with new Forms and Reports. I don't have much experience with WebLogic (using Oracle Internet Application 10g) so bare with me for a moment.
I'm using Node Manager to start admin servers and all other managed servers. I also installed the Node Manager as a Windows service and configured startup parameters to include -Xrs/-Xnohup as stated in documentation and everything seems to work fine up until I restart the server. Node Manager service starts and according to it's log, it does read startup.properties of each server but it does not start them. Am I missing something here? I was left in an impression that Node Manager should restart the server in case of system restart if the server was running when computer was restarted.
Even though I don't have much experience with WebLogic, I'm not a newbie. I've managed to migrate (for testing purposes only) complete business application (more than 1000 forms and reports) from iAS 10g to new version in two days. Application works just fine and I'm only having problems with starting servers when computer starts using Node Manager.
Windows 2008 Standard 32bit
Node Manager starts a Managed Server using the startup arguments configured for the Managed Server in the Server—>Configuration—>Remote Start tab. The Managed Server is started in the startup mode configured on the advanced options portion of its Server—>Configuration—>General tab. By default the startup mode is RUNNING.
If you do not specify startup arguments for a Managed Server in its Remote Start tab, Node Manager uses its own properties as defaults to start the Managed Server. (See Node Manager Properties.) Although the Node Manager property values may suffice to boot a Managed Server, to ensure a consistent and reliable boot process, you should configure startup arguments for each Managed Server.
Have you configured the remote start parameters?
Yes, I did. I followed the instructions in the documentation. If I understand correctly, settings that you configure in Server->Configuration->Remote Start tab (it is called Server Start in 10.3.1.0) are saved in startup.properties file for each server. Here is the example startup.properties file from one such managed server:
#Server startup properties
Arguments=-Xrs -Xms256m -Xmx512m -Djava.ext.dirs\=C\:\\Oracle\\Middleware\\as\\jdk\\jre\\lib\\ext etc...
As you can see, AutoRestart attribute is configured as true.
nodemanager.log file has two exceptions when shutting down the server which are in my opinion not relevant to this problem:
<2009.07.17 13:53:05> <Warning> <Uncaught exception in server handler: java.net.SocketException: Connection reset>
java.net.SocketException: Connection reset
at com.certicom.tls.record.ReadHandler.readFragment(Unknown Source)
at com.certicom.tls.record.ReadHandler.readRecord(Unknown Source)
at com.certicom.tls.record.ReadHandler.read(Unknown Source)
at com.certicom.io.InputSSLIOStreamWrapper.read(Unknown Source)
<2009.07.17 13:53:05> <Warning> <I/O error while closing socket connection>
java.net.SocketException: socket write error: Connection reset by peer.
at jrockit.net.SocketNativeIO.writeBytesPinned(Native Method)
at com.certicom.io.OutputSSLIOStream.write(Unknown Source)
at com.certicom.tls.record.WriteHandler.flushOutput(Unknown Source)
at com.certicom.tls.interfaceimpl.TLSConnectionImpl.closeWriteHandler(Unknown Source)
at com.certicom.tls.interfaceimpl.TLSConnectionImpl.close(Unknown Source)
at javax.net.ssl.impl.SSLSocketImpl.close(Unknown Source)
And when server restarts, moments later this is in the log:
+<2009.07.17 13:55:43> <INFO> <Loading domains file: C:\Oracle\MIDDLE~1\wlserver\common\NODEMA~1\nodemanager.domains>+
+<2009.07.17 13:55:45> <INFO> <Loading identity key store: FileName=C:/Oracle/MIDDLE~1/wlserver/server\lib\DemoIdentity.jks, Type=jks, PassPhraseUsed=true>+
+<2009.07.17 13:55:45> <INFO> <Loaded node manager configuration properties from 'C:\Oracle\MIDDLE~1\wlserver\common\nodemanager\nodemanager.properties'>+
+<2009.07.17 13:55:46> <Info> <ClassicDomain> <AdminServer> <Startup configuration properties loaded from "C:\Oracle\Middleware\user_projects\domains\ClassicDomain\servers\AdminServer\data\nodemanager\startup.properties">+
+<2009.07.17 13:55:46> <Info> <ClassicDomain> <WLS_FORMS> <Startup configuration properties loaded from "C:\Oracle\Middleware\user_projects\domains\ClassicDomain\servers\WLS_FORMS\data\nodemanager\startup.properties">+
+<2009.07.17 13:55:46> <Info> <ClassicDomain> <WLS_REPORTS> <Startup configuration properties loaded from "C:\Oracle\Middleware\user_projects\domains\ClassicDomain\servers\WLS_REPORTS\data\nodemanager\startup.properties">+
+<2009.07.17 13:55:48> <INFO> <Secure socket listener started on port 5556>+
This usggests that Node Manager has started, loaded the configuration for all of the servers and then did nothing.
Logs of the managed servers have no enty what so ever in the time of server shutdown nor in the time of server startup.
I last encountered a situation like this before version 10, but the capabilities may be similar. In the past, there was a "nodemanager.properties" file with a property (whose name I can't remember) that I believe controls this. It might have been "autorestart", but perhaps not.
David and others,
I think it is not a bug or a misconfiguration, but a feature.
Nodemanager only restarts servers which were killed or failed and which were started by nodemanager.
Yes, there is a "autorestart" which enables disables what I tried to describe.
If I understand the original posting, the question was why does nodemanager not start managed servers after a reboot.
I think the short answer is (assuming it is a reboot and you shut down the servers, not a crash). You have to tell it, usign a script, e.g. connect to nodemanager and use nmStart(). It is not enough to have NM running and assuming it will start the servers automatically.
IMHO it would be nice to have this feature configurable.