This discussion is archived
9 Replies Latest reply: Mar 10, 2011 6:33 AM by 835249 RSS

Node Manger in a cluster on NFS

835249 Newbie
Currently Being Moderated
Hi,
I will shortly set up a cluster. The two unix servers are on an NFS file system. So, both sides of the cluster will have access to the WebLogic installation and the domain.


So, I guess there will be two instances of Node Manager? One on each unix server. And, I guess each Node manager corresponds to one 'Machine' configured on the console. For example, the Node Manager on 'unix server 1' should be 'machine 1'.

Does anyone know how each Node Manager 'knows' which machine it is ? That is, when I start Node Manager on server 1, how will it know to start WebLogic instances configured to run on 'machine 1'. I do not see a start parameter saying something like...
'startNodeManager -machine Machine1'

Any clues appreciated!

thanks,
David.
  • 1. Re: Node Manger in a cluster on NFS
    RenévanWijk Oracle ACE
    Currently Being Moderated
    The nodemanager runs locally on a specific machine. You couple a nodemanager to a certain machine and not
    a machine to a nodemanager.

    The nodemanager has a listenaddress, which is the address of the machine.

    You also have configured certain weblogic servers to belong to a machine. Through this configuration the
    nodemanager knows which sevrers to monitor, i.e, servers belonging to that machine.

    I also saw that you are using NFS. If you are planning on migration, for example JTA, you should be a little war in the sense that distributed file
    systems such as NFS typically do not provide the necessary semantics to guarantee the integrity and content of transaction logs. NFS historically
    has provided no support for synchronous writes, and also suffered from file locking issues. Some NFS implementations have matured in recent
    years, you should check that yours guarantees that a write operation will not return until the data is safely stored on disk.
  • 2. Re: Node Manger in a cluster on NFS
    739896 Guru
    Currently Being Moderated
    Hi David,

    Every Physical Box in which we want to run a Managed Server Remotely there we must have to install a NodeManager.

    In One Physical Box One Node Manager can take care of all the Managed Servers present in the same Physical Box. The Managed Servers may belong to same WebLogic Domain or Different.

    Every NodeManager Must be Enrolled to the Domain using WLST command nmEnroll as described in the following link: Step8) http://middlewaremagic.com/weblogic/?p=971

    A Node Manager can be associated with only a Single Machine. But it can manage Any Number of managed Servers Associated with that Machine.
    .
    .
    Thanks
    Jay SenSharma
  • 3. Re: Node Manger in a cluster on NFS
    835249 Newbie
    Currently Being Moderated
    Hi René,
    Thanks for your reply.
    The nodemanager has a listenaddress, which is the address of the machine.
    I see that listenaddress is set in the file nodemanager.properties
    So...
    the node manager instance for 'unix server 1' can have file nodemanager.properties with listenaddess=1.1.1.1
    the node manager instance for 'unix server 2' can have file nodemanager.properties with listenaddess=2.2.2.2


    But, I hope to use a shared file system. So, there will be only one nodemanager.properties. So, it looks like I can only configure one listen address?

    Thanks!
    David
  • 4. Re: Node Manger in a cluster on NFS
    RenévanWijk Oracle ACE
    Currently Being Moderated
    Yes the nodemanager is coupled to a machine.

    You have to configure a node manager per machine, you cannot share the nodemanager.properties file for
    all the machines in the cluster.
  • 5. Re: Node Manger in a cluster on NFS
    835249 Newbie
    Currently Being Moderated
    Hi René,
    Thanks for your reply.

    Maybe the solution is set the listenaddress as a start command. The documentation says this overrides the setting in nodemanager.properties.

    Like-
    On unix server 1, run java -Dlistenaddress=1.1.1.1 weblogic.NodeManager
    On unix server 2, run java -Dlistenaddress=2.2.2.2 weblogic.NodeManager

    Is there a better, or more common way to do this?
    Do I need a separate installation for each side of the cluster?
    Can give a start parameter to specify which nodemanager.properties to use? (I don't see this in the documents!)

    thanks,
    JM
  • 6. Re: Node Manger in a cluster on NFS
    RenévanWijk Oracle ACE
    Currently Being Moderated
    Two document might come in handy to decide how to set-up your environment
    when you have multiple server on one or more machines.

    - http://download.oracle.com/docs/cd/E11035_01/wls100/cluster/setup.html
    gives detailed information about setting up a weblogic cluster.

    - http://download.oracle.com/docs/cd/E11035_01/wls100/server_start/nodemgr.html
    gives detailed information about using the nodemanager to control servers

    If you really want a shared environment for the nodemanager files, you can proceed by
    using different nodemanager homes one for each machine. by default the nodemanagerhome
    is created in the directory for which you run startNodeManager.

    In the startNodeManager script there is a line NODEMGR_HOME="${WL_HOME}/common/nodemanager"
    which can change to a directory of your choice. (the startNodeManager script is located in the
    <middleware-home>/wlserver_10.3/server/bin directory.
  • 7. Re: Node Manger in a cluster on NFS
    835249 Newbie
    Currently Being Moderated
    Hi René (and anyone else!),

    Thanks, that looks like it will work. (I don't have NFS yet to test it!)
    I guess the only alternative is a separate weblogic installation, so this option looks better to me.

    I'm still not clear how the admin associates a configured 'machine' with a unix host. I guess it just finds a nodemanager process with the right listenaddress.

    For example...

    Set listenaddress in Nodemanager properties. One home for 1.1.1.1, and another 2.2.2.2
    Create two machines in weblogic console (machine_1 and machine_2)
    Set machine_1 listening on 1.1.1.1
    Node manager on machine_1 will start wls instaces for machine_1. Because it is the only node mama listening on 1.1.1.1

    cheers,
    David
  • 8. Re: Node Manger in a cluster on NFS
    Simon Haslam Oracle ACE Director
    Currently Being Moderated
    David A. wrote:
    I'm still not clear how the admin associates a configured 'machine' with a unix host. I guess it just finds a nodemanager process with the right listenaddress.

    For example...

    Set listenaddress in Nodemanager properties. One home for 1.1.1.1, and another 2.2.2.2
    Create two machines in weblogic console (machine_1 and machine_2)
    Set machine_1 listening on 1.1.1.1
    Node manager on machine_1 will start wls instaces for machine_1. Because it is the only node mama listening on 1.1.1.1
    Exactly - the mapping is configured from the admin server end. The other thing to watch out for are the certificates (machine specific) if you're running secure connections between the node manager and admin server - another reason you really need a NM config that is local to the machine (albeit it could be on an central NFS share, e.g. /oracle/admin/<machine_1>/nodemanager).

    Simon
  • 9. Re: Node Manger in a cluster on NFS
    835249 Newbie
    Currently Being Moderated
    thanks!

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points