WebSphere Application Server & Liberty

WebSphere Application Server & Liberty

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  Best practice to do WAS ND concurrent deployments

    Posted 09/14/18 08:03 AM
    Edited by Joey Cote 09/14/18 08:17 AM
    Hello,

    We use wsadmin scripting (-lang jython) to do deployments to a WAS ND cell. One cell is shared and has multiple applications. We are now facing a problem where we can't issue multiple concurrent deployments. As an example, deploy job #1 needs to do a nodeagent restart on the same node where job #2 is also being deployed, and it causes job #2 to fail.

    I am unsure how to proceed with this. I understand that probably the best solution is to prevent nodeagents to restart in any jobs, but we have to do it because we execute the "Test Connection" functionality through scripting after we configure a Data Source. When a Data Source is modified, the nodeagent needs to restart to pick-up the new connection information.

    My other thought was to implement some logic that would prevent another job to start in the same cell if one is already running. Does wsadmin have a command to check if such activity is happening?

    I am open to any suggestions.

    Joey

    ------------------------------
    Joey Cote
    ------------------------------


  • 2.  RE: Best practice to do WAS ND concurrent deployments

    Posted 09/17/18 11:32 AM
    Hi Joey,

    Running multiple scripts at the same time to change configuration is not a good practice. To my knowledge, there is no way for the deployment manager to know about multiple scripts changing its configuration, so you have to do it manually.

    One way of handling is to create a process lock file at the start of any script and delete the lock file at the end of that script. You have to change your scripts to look for this lock file at the very beginning and if it exists, the script can either wait for a certain amount of time and check again or just exit and ask the user to execute after the first script is complete.

    ------------------------------
    Regards,
    Azhagesan Pazhani Gurusamy
    ------------------------------