Decision Optimization

Expand all | Collapse all

CPLEX Enterprise Server on a Cluster

  • 1.  CPLEX Enterprise Server on a Cluster

    Posted Wed April 09, 2014 02:38 PM

    Originally posted by: modeling


    Hi, 

    I'm currently using a Windows PC with IBM ILOG CPLEX Optimization Studio and my model which includes some script codes and an IP model perfectly works for small instances. But to handle scalability issue, I would like to use a CPLEX Enterprise Server.

    I plan to use CPLEX Enterprise Server installed on a cluster by sending my model via OPL IDE as explained here (http://pic.dhe.ibm.com/infocenter/cosinfoc/v12r5/index.jsp?topic=%2Filog.odms.ide.help%2FOPL_Studio%2Fusroplide%2Ftopics%2Fopl_ide_connect_cplexservers.html).

    I installed a CPLEX Enterprise Server on the cluster and initialize the path as in the following screenshot. In Location, I use address of the cluster and the folder that I install the CPLEX server. However, I got the error message "Invalid mandatory server port (should be between 0 and 65535)". Furthermore, I need to enter my username and password everytime I connect to cluster. Can you help me to resolve this problem ?

    Furthermore, my cluster works on Linux. Is it possible to call CPLEX server from my Windows machine ? 

    Thanks for your help. 



  • 2.  Re: CPLEX Enterprise Server on a Cluster

    Posted Thu April 10, 2014 08:40 AM

    Originally posted by: Ph.Gregoire


    Hello,

    The syntax of the default URL used to connect is https://user:pw@hostname:sport/odme for secure deployments, and just http://hostname:port/odme for non-secure deployments.
    The odme postfix (root URL) is the default, and the ports depend on how the server components have been deployed, default is 80 for port and 443 for sport, if you are behind a HTTPWebServer (e.g. IHS or Apache) which is normally the case with a cluster (I assume this is a WAS cluster, right?)

    You may want to check if the URL with /console appended works (e.g. http://hostname:port/odme/console) before going further with the IDE.

    When are you getting the password prompt? If the URL is incorrect, it should not be possible to go further than that, unless you are hitting another server?

    Regards,

    Phillippe Gregoire - IBM Optim L3 support



  • 3.  Re: CPLEX Enterprise Server on a Cluster

    Posted Tue June 03, 2014 06:33 AM

    Originally posted by: Ph.Gregoire


    Hello,

    I'm following up on your question above, has the information provided above been useful to resolve your issue?

    Thanks,

    Ph.Gregoire - IBM SWG, Decision Optimization Center L3



  • 4.  Re: CPLEX Enterprise Server on a Cluster

    Posted Tue June 03, 2014 06:59 AM

    Originally posted by: modeling


    Thanks Gregoire, unfortunately my problem is still open.  

    Best. 

     



  • 5.  Re: CPLEX Enterprise Server on a Cluster

    Posted Tue June 10, 2014 05:42 AM

    Originally posted by: Ph.Gregoire


    Hello,

    I would need more specific details on what has not worked.

    The default URL of a CES server when deployed on WAS-CE will be http://YourServerHostName:8080/odme.

    YourServerHostName should be a fully qualified name (i.e. with IP domain at the end), to avoid common mistakes.

    Your screenshot above seems to have /home/  /SERVER it in, which is not a regular URL for the Cplex Enterprise Server endpoint, can you confirm with your I/T dept that they deployed on that URL? [It is possible but requires some not-so trivial changes on the server configuration]

    To verify the CES URL you should first try to open a browser to the http://YourServerHostName:8080/odme/console URL .

    The article "Get started with IBM ILOG CPLEX Enterprise Server" at

    http://www.ibm.com/developerworks/library/co-ind-ilog-cplex/index.html?ca=drs also provides a good introduction on you to use CES.



  • 6.  Re: CPLEX Enterprise Server on a Cluster

    Posted Wed June 11, 2014 08:59 AM
      |   view attached

    Originally posted by: modeling


    Hi, 

    Finally, I'm able to run CPLEX on cluster without using CPLEX server. I installed the linux version of IBM ILOG CPLEX Optimization studio and followed the recommendations in these links : 

    https://www.ibm.com/developerworks/community/forums/html/topic?id=a22e2756-ac6d-4bc8-91ca-8a3ec93498e1

    https://www.ibm.com/developerworks/community/forums/html/topic?id=801b2c80-b074-477f-bf8a-faf05f0202ac

    https://www.ibm.com/developerworks/community/forums/html/topic?id=a22e2756-ac6d-4bc8-91ca-8a3ec93498e1

    http://webcache.googleusercontent.com/search?q=cache:qzm6h0VN2y8J:pic.dhe.ibm.com/infocenter/cosinfoc/v12r5/topic/ilog.odms.ide.help/OPL_Studio/working_environment/topics/opl_working_env_variables_unix.html+&cd=1&hl=en&ct=clnk&gl=ie

     

    However, when I want to run oplrun (since my implementation has several mod and dat files where there are some flow scripts and a mathematical model), I got the error in the attached figure. I think some connections are missing. Could you help me to identify what is the exact problem here ?

     

    P.S. As you can see, libicuuc.so.48 is in the same directory with oplrun 

    Regards. 

     



  • 7.  Re: CPLEX Enterprise Server on a Cluster

    Posted Wed June 11, 2014 09:35 AM

    Originally posted by: Ph.Gregoire


    Ok, so basically you installed CPLEX Opt Studio on a remote linux box, and you are running it from a SSH shell.

    I would think the error you are seeing is because '.' is not part of your LD_LIBRARY_PATH environment variable. Being in the same dir is not enough to resolve cascaded libs.

    try echo $LD_LIBRARY_PATH to get the definition. You may want to add just . to the value, or the fully qualified absolute path of the bin/x86-64_linux directory.

    Other than that, you can use LDD ./oplrun to get diagnostics info from linux.

    Ph.Gregoire - IBM SWG, Decision Optimization Center L3



  • 8.  Re: CPLEX Enterprise Server on a Cluster

    Posted Wed June 11, 2014 01:23 PM

    Originally posted by: modeling


    Hi, 

     

    By defining the following paths in "bashrc", I successfully use oplrun in a cluster via SSH shell.

    [xxx@node21 ~]$ vi .bashrc

    # .bashrc
     
    # Source global definitions
    if [ -f /etc/bashrc ]; then
            . /etc/bashrc
    fi
     
    # User specific aliases and functions
     
    LD_LIBRARY_PATH=/home/xxx/OPL/cplex/bin/x86-64_linux
    export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/home/xxx/OPL/opl/bin/x86-64_linux"
    export PATH="${PATH}:/home/xxx/OPL/opl/bin/x86-64_linux

    Thanks for support. 

    My problem on using a cluster for OPL is solved.

    P.S. Just note that although I don't use it anymore,  connecting OPL IDE with a CPLEX Server installed on a cluster is still open. 

    Regards. 



  • 9.  Re: CPLEX Enterprise Server on a Cluster

    Posted Thu June 12, 2014 05:43 AM

    Originally posted by: Ph.Gregoire


    Hello,

    Good to know that you could get going.

    About running from the IDE on Cplex Enterprise Server, I would need to have more specific details to be able to assist you:

    1. is the server functional? To find out, open the console at http://yourhost:port/odme/console
      This should display the console with Apps and Jobs sections empty (just table headers and borders)
    2. What version of CES are you using? Is that 12.5 or 12.6?
      12.5 does not support secure server yet, so you would need to turn off application security for the CES modules on the WAS server. 12.6 supports security, but then the URL to use from the COS IDE will need to have the HTTPS port and the userid/pw imbedded in it, with the https://user:pw@hostname:sport/odme URL syntax.

    Ph.Gregoire - IBM SWG, Decision Optimization Center L3