3 General Node Manager Configuration

The following sections describe general procedures that are applicable to both the Java and scripted version of Node Manager:

Overview of Node Manager Configuration

This section describes general Node Manager configuration that applies to the Java and script version of Node Manager. You should ensure than you have performed all of the items outlined in the following sections.

After you have you have performed general Node Manager configuration, you should perform the configuration procedures outlined in Chapter 4, "Configuring Java Node Manager" or Chapter 5, "Configuring Script Node Manager" depending on which version of Node Manager you are using.

Step 1: Configure Your Computer to Run Node Manager

Node Manager must run on each computer that hosts a WebLogic Server instance. Configure each computer as a machine resource in WebLogic Server, and assign each server instance that you will control with Node Manager to the machine upon which it runs.

Ideally, Node Manager should run as an operating system service or daemon, so that it is automatically restarted in the event of system failure or reboot. See "About Installing Node Manager as a Windows Service" in the Oracle WebLogic Server Installation Guide.


On UNIX platforms, do not run Node Manager as the root user.

Node Manager is ready-to-run after WebLogic Server installation if you run Node Manager and the Administration Server on the same machine, and use the demonstration SSL configuration. By default, the following behaviors are configured:

  • You can start a Managed Server using Node Manager through the Administration Console.

  • Node Manager monitors the Managed Servers that it has started.

  • Automatic restart of Managed Servers is enabled. Node Manager restarts server instances that it killed or were killed by another method.

Controlling and Configuring Node Manager Using WLST

The WebLogic Scripting Tool (WLST) is a command-line scripting interface that system administrators and operators use to monitor and manage WebLogic Server instances and domains. You can start, stop, and restart server instances remotely or locally, using WLST as a Node Manager client. In addition, WLST can obtain server status and retrieve the contents of the server output log and Node Manager log. For more information on WLST commands, see "WLST Command and Variable Reference" in WebLogic Scripting Tool Command Reference.

Using nmConnect in a Production Environment

WLST can connect to a Node Manager that is running on any machine and start one or more WebLogic Server instances on the machine. A domain's Administration Server does not need to be running for WLST and Node Manager to start a server instance using this technique.

However, by default, the nmConnect command cannot be used in a production environment. You must first perform the following procedures to use nmConnect in a production environment.

  1. Start the Administration Server.

  2. Using the Administration Console, update the Node Manager credentials from the Advanced options under domain_name > Security > General.

  3. Invoke WLST and connect to an Administration Server using the connect command. See "Using the WebLogic Scripting Tool" in Oracle WebLogic Scripting Tool.

  4. Run nmEnroll using the following syntax:

    nmEnroll([domainDir], [nmHome])

    For example,


    Running nmEnroll ensures that the correct Node Manager user and password token are supplied to each Managed Server. Once these are available for each Managed Server, you can use nmConnect in a production environment.


    You must run nmEnroll on each machine that is running a Managed Server. Additionally, you should run nmEnroll for each domain directory on each machine.

Step 2: Specify Node Manager Username and Password

The nm_password.properties file contains the Node Manager username and password. These are used to authenticate connection between a client (for example, the Administration Server) and Node Manager.


This username and password are only used to authenticate connections between Node Manager and clients. They are independent from the server admin ID and password.

This file is created when you use nmEnroll to copy the necessary configurations files from one machine to another when creating a domain. After nm_password.properties is created, you can change the values for the Node Manager password and properties using the Administration Console. Changes are propagated to the nm_password.properties file and are picked up by Node Manager.


If you edit nm_password.properties manually, you must restart Node Manager in order for the changes to take effect.

The nm_password.properties file must exist on each physical machine that runs Node Manager. However, the Node Manager username and password do not have to be identical on every machine within your domain.

Step 3: Configure a Machine to Use Node Manager

A WebLogic Server machine resource associates a particular machine with the server instances it hosts, and specifies the connection attributes for the Node Manager process on that system.

Configure a machine definition for each machine that runs a Node Manager process using the Environment > Machines > machine_name > Node Manager page in the Administration Console. Enter the DNS name or IP address upon which Node Manager listens in the Listen Address field.

Step 4: Configuring nodemanager.domains File

The nodemanager.domains file specifies the domains that a Node Manager instance controls. Thus stand-alone clients do not need to specify the domain directory explicitly.

This file must contain an entry specifying the domain directory for each domain the Node Manager instance controls, in this form:


When a user issues a command for a domain, Node Manager looks up the domain directory from nodemanager.domains.

This file provides additional security by restricting Node Manager client access to the domains listed in this file. The client can only execute commands for the domains listed in nodemanager.domains.

If you created your domain with the Configuration Wizard, the nodemanager.domains file was created automatically. If necessary, you can manually edit nodemanager.domains to add a domain.


If you use the backslash character (\) in nodemanager.domains, you must escape it as (\\).

Step 5: Configuring Remote Startup Arguments

In the Administration Console, on the Server > Configuration > Server Start page for the Managed Server, specify the startup arguments that Node Manager will use to start a Managed Server. If you do not specify startup arguments for a Managed Server, Node Manager uses its own properties as defaults to start the Managed Server. For more information, see Reviewing nodemanager.properties. Although these defaults are sufficient to boot a Managed Server, to ensure a consistent and reliable boot process, configure startup arguments for each Managed Server instance. The specified startup arguments are used for starting Managed Servers only. They will not be used by an Administration Server instance that is started by Node Manager.

If you will run Node Manager as a Windows Service, as described in "About Installing Node Manager as a Windows Service" in the Oracle WebLogic Server Installation Guide, you must configure the following JVM property for each Managed Server that will be under Node Manager control:

  • -Xrs for the Sun JVM, or

  • -Xnohup for the JRockit

If you do not set this option, Node Manager will not be able to restart a Managed Server after a system reboot, due to this sequence of events:

  1. A reboot causes a running Managed Server to be killed before the Node Manager and Administration Server operating system services are shut down.

  2. During the interval between the Managed Server being killed, and the Node Manager service being shut down, Node Manager continues to monitor the Managed Server, detects that it was killed, and attempts to restart it.

  3. The operating system does not allow restart of the Managed Server because the machine is shutting down.

  4. Node Manager marks the Managed Server as failed, and it will not start this server when the machine comes up again.

Starting a Managed Server with the -Xrs or -Xnohup option avoids this sequence of events by preventing the immediate shutdown of the Managed Server during machine shutdown.

Step 6: Setting Server Startup Properties

You can use Node Manager to set the startup properties for a server. These properties can be defined in startup.properties or passed as an object using administrative utilities such as WLST. The methods of setting startup properties and their valid values are outlined in the sections below.


Node Manager uses the startup.properties file to determine the startup configuration when starting a server. This file is defined for each server instance and is located in DOMAIN_HOME/servers/server_name/data/nodemanager/startup.properties.

The contents of startup.properties are derived from the Server MBean, or the Cluster MBean if the server is part of a cluster. For more information, see the Oracle WebLogic Server MBean Reference.

Setting Startup Properties Using WLST

When using the WLST nmStart command, the server configuration can not be determined directly. Therefore, you must pass the server start properties as a WLST properties object to the nmStart command.

Server Startup Properties

The following server startup properties can be passed to a server when started using Node Manager.

Table 3-1 Server Startup Properties

Property Description


Defines the Java home directory used when starting the server.


The arguments used when starting the server.


These arguments are used when you have enabled the domain-wide administration port.


The number of times Node Manager can attempt to restart the server.


The number of seconds Node Manager should wait before attempting to restart the server.


The classpath to use when starting a server.


The Oracle home directory to use when starting a server.


The URL of the Administration Server.

Note: This value should only be specified in the startup.properties file for a Managed Server.


Specifies whether Node Manager can automatically restart this server if it fails.


Specifies whether Node Manager should automatically kill the server if its health status is failed.


Specifies the security policy file to use when starting this server.


The IP address of the server.

Step 7: Define the Administration Server Address

Make sure that a listen address is defined for each Administration Server that will connect to the Node Manager process. If the listen address for an Administration Server is not defined, when Node Manager starts a Managed Server it will direct the Managed Server to contact localhost for its configuration information.

Set the Listen Address using the Servers > Configuration > General page in the Administration Console.

Step 8: Set the Node Manager Environment Variables

Node Manager requires you to set several environment variables before you start it.

You can set these variables manually on the command line or you can create a start script that sets them automatically. The sample start scripts provided with WebLogic Server, startNodeManager.cmd and startNodeManager.sh, set the required variables and start Node Manager listening on the default address localhost.

To start Node Manager listening on a non-default address, set the LISTEN_ADDRESS variable to <host> and the LISTEN_PORT variable to <port> before calling the startNodeManager script. Alternatively, the startNodeManager scripts will set the first two positional parameters to LISTEN_ADDRESS and LISTEN_PORT when entered on the command line.

For example, enter this command to start Node Manager on host llama and port 7777:

startNodeManager.cmd llama 7777 (Windows)
sh startNodeManager.sh llama 7777 (UNIX)

Enter this command to start Node Manager on host llama:

startNodeManager.cmd llama (Windows)
sh startNodeManager.sh llama (UNIX)

Configuring a non-default listening address for Node Manager is most useful in production environments so that traffic from other machines can potentially reach it. Also, if you have a multihomed machine or a machine with multiple network interface cards, Node Manager can be listening on any one of the addresses on the machine.

Table 3-2 Node Manager Environment Variables

Environment Variable Description

JDK root directory used by Node Manager. For example:

set JAVA_HOME=c:\oracle\jdk131

Node Manager has the same JDK version requirements as WebLogic Server.


WebLogic Server installation directory. For example:

set WL_HOME=c:\oracle\wlserver_10.3

Must include the WebLogic Server bin directory and path to your Java executable. For example:

set PATH=%WL_HOME%\server\bin;%JAVA_HOME%\bin;%PATH%

(UNIX and Linux)

For HP UX and Solaris systems, you must include the path to the native Node Manager libraries.

Solaris example:


HP UX example:


Linux example:


Note: Linux can be i686, ia64, or x86_64 architecture. The path would change to correspond with the appropriate architecture.


You can set the Node Manager CLASSPATH either as an option on the java command line used to start Node Manager, or as an environment variable.

Windows NT example:

set CLASSPATH=.;%WL_HOME%\server\lib\weblogic_sp.jar;%WL_HOME%\server\lib\