Skip navigation
AlresfordCF10
Currently Being Moderated

Cluster creation help!

Aug 21, 2013 10:44 AM

Tags: #server #configuration #cluster #cf10 #coldfusion_10 #howto

Hi there

 

Does any one have a fool-proof document for creating and proving a 2 server ColdFusion 10 cluster? Most of the documents I have found are missing something. 

 

More specifically, what is the difference between HTTP Port and Admin Component Port in the remote instance manager?

Should the Cluster Manager show anything on the remote node?

Is there a cluster monitor that show's its state? Is the there a simple test to prove it works.

 

 

If this is in the remote node server.xml

<Engine jvmRoute="cfusion" name="Catalina" defaultHost="localhost">

should the jvmRoute value in the Instance Manager should be set to cfusion?

 

Thanks for your help

 

Richard

 
Replies
  • Currently Being Moderated
    Aug 21, 2013 10:56 AM   in reply to AlresfordCF10

    Hi Richard

     

    Two important points for ColdFusion 10 Session Replication

     

    1> ColdFusion 10 servers must be Enterprise Edition

     

    2> All the Servers(Machines) should be under same Network (same subnet)

     

    Below is the example of two IP Addresses in the same Subnet

     

    10.40.166.xx (say 34)

    10.40.166.xx (say 121)

     

    Test Application.cfc and Test.cfm (At the bottom)

     

    Steps to perform:

     

    Enable the J2EE session variables for both the ColdFusion servers under Memory Variables in ColdFusion Administrator

     

    Create a local instance (say test1) and create a remote instance (say test 2) on the remote machine.

     

    Go ahead and Register the remote instance (test2) in the ColdFusion Administrator . Create a cluster and add both the instances (test1 and test2).

     

    Now add the cluster tag information  in the server.xml (between </host> and </engine>) of the remote instance using the help  document of ColdFusion 10 mentioned below

     

    http://help.adobe.com/en_US/ColdFusion/10.0/Admin/WSc3ff6d0ea778594611 72e0811cbf363c31-7ffa.html

     

    NOTE : Make sure you change the multicast port in the server.xml of the remote instance with the Multicast port number when you create cluster in ColdFusion Admin console.

     

    Open the context.xml of the remote instance (test2) and make sure that the “Manager pathname” is comment out.

     

    Also, make sure that in the context.xml of local machine instance (test1),  “Manager pathname” is comment out.

     

    Stop and Start remote instance first (test2) using command prompt and then stop and start instance (test1) using command prompt.

     

    Place the App folder in the wwwroot of both the instances. Create a cluster using the Web Server Configuration tool using the cluster and then test the Session replication behavior.

     

    Also, place the .cfc and .cfm in  Web root folder  (wwwroot) and then try to access the Test.cfm from there. Then note down the session ID and instance name, refresh the page and observe that the Session ID is same for other instance or not. You can stop any one instance and refresh the same page then check the same instance is getting the same session ID or not.

     

    Application.cfc

     

    <cfcomponent>

        <cfset this.name = "SessionApp" />

        <cfset this.sessionmanagement = "true" />

        <cfset this.sessiontimeout = createTimeSpan(0,5,0,0) />

    </cfcomponent>

     

    Test.cfm

     

    <cfset Session.svar="Test">

    <cfdump var="#Session#" />

     

     

    <cfscript>

    hostaddress = createObject("java", "java.net.InetAddress").localhost.getHostAddress();

    </cfscript>

    IP Address: <cfdump var="#hostaddress#"><br />

     

    Hope it helps

    VJ

     
    |
    Mark as:
  • Currently Being Moderated
    Aug 21, 2013 1:36 PM   in reply to vishu#13

    I'm having a similar problem.  I have two separate cold fusion servers on the same subnet.  Each server has one CF instance of the same application.  I want to cluster these two instances.

     

    I've created a cluster on server1.  In that cluster I added the one instance that resides on that server.  I then edited the server xml for the second instance on the other cf server and added the cluster tag information from from your response above (making sure that the multicast port is correct).  I then recycled both servers.

     

    The problem I have is how do I add the instance on the remote server to the cluster?  If I go into the cf admin on server1, I don't see the remote instance to be able to add it to the cluster.   If I go to the cfadmin on the remote server, it has no cluster configuration at all.

     

    I'm a little lost.  Any suggestions?

     
    |
    Mark as:
  • Currently Being Moderated
    Aug 21, 2013 1:53 PM   in reply to rjdanna

    Hi rdjanna

     

    Once you go to the main instance say cfusion in the server one then under Enterprise manager , click on Instance Manager and click on Register Remote Instance.

     

    NOTE : This is an Enterprise feature and this option will be available on the default/main instance (say cfusion) which gets created at the time of CF install

     

    Session_Replication.jpg

     

    Thanks

    VJ

     
    |
    Mark as:
  • Currently Being Moderated
    Aug 21, 2013 2:18 PM   in reply to vishu#13

    Yes!  That was the missing piece I needed.  Thank you so much.

     

    One more question, now that I have this cluster configured on server1, if I go to the cf admin under server 2 it shows no cluster configuration of any kind.   Is that the way it should be?

     

    My concern is that if someone were to check cf admin on the second server they would have no idea that this was part of a cluster.  I would think that both servers should show the same cluster configuration.

     
    |
    Mark as:
  • Currently Being Moderated
    Aug 21, 2013 3:28 PM   in reply to rjdanna

    As you are creating the cluster in server 1 then server would not have the info for the same. That is why, you need to add the cluster info in the server.xml of the other instance(server2) as explained above

     

    Now add the cluster tag information  in the server.xml (between </host> and </engine>) of the remote instance using the help  document of ColdFusion 10 mentioned below

     

    http://help.adobe.com/en_US/ColdFusion/10.0/Admin/WSc3ff6d0ea778594611 72e0811cbf363c31-7ffa.html

     

    Yes, both the instances have same settings. Also, if you want the load balancer that if 1 server fails then the request with same session goes to server 2, then the same will happen for cf admin.

     

    Thanks

    VJ

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points