Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Relocating a Controller instance refers to moving the Controller instance either to a new server or to a new location on the same server. Relocating a Controller instance will not stop the execution of workflows with Agents. However, if a workflow includes jobs that are executed with different Agents then the workflow will not be completed and will be put on hold as switching of Agents during workflow execution is performed by the Controller.
  • As the Agent passes workflow execution results to the Controller and as the Controller instance is stopped during relocation, job execution results are will not updated be forwarded to the JOC Cockpit. Once the Controller instance is has started again (after relocation) then job execution results are will updated to the JOC Cockpit History and become visible with the GUI.
  • To relocate a Controller instance it is required necessary to install a new Controller instance and to copy the contents of the ./state folder to that Controller.
  • Before copying folder contents you should first stop the service for the Controller instance as otherwise it will continue to update its journals.
  • After the new Controller instance is has started then modify the Controller settings in the JOC Cockpit GUI to point to the new location.

...

  • Relocating a Controller requires to install installation of a new Controller instance and to copy copying the ./state directory of the previous Controller instance to the new Controller instance location. Then change the URL from the JOC Cockpit "Manage Controller/Agents" dialog.
  • The ./config folder for the Controller contains the truststore and keystore, therefore. Therefore, if the Controller instance is operated for HTTPS connections and if you want the new Controller to should also use HTTPS too, then the new instance might require an individual server authentication certificate that reflects its hostname.

...

  1. Be assured that ControllerInstance1 is not running.
  2. Install ControllerInstance2.
  3. Copy the files from the ./state folder of ControllerInstance1 to the respective folder of ControllerInstance2.
  4. Start ControllerInstance2.
  5. Consider Note that the Controller URL for ControllerInstance1 is not the same as for ControllerInstance1 and ControllerInstance2 ControllerInstance2Therefore the URL has to be updated in the JOC Cockpit.
  6. To change the Controller URL, log in to the JOC Cockpit.
  7. From the main menu select the item "Manage Controllers/Agents".
  8. Make sure you edit the existing Controller instance that is not in service.
  9. Modify the "URL for JOC Cockpit" from the "Register Controller" dialog box for the Controller instance that is not in service to point to the ControllerInstance2 URL
  10. When workflows are confirmed to work with ControllerInstance2 then drop the contents of the ./state directory of ControllerInstance1. This an important step as otherwise, when ControllerInstance1 is started it will forward past orders from its journal to available Agents. This would result in double job execution that might be harmful depending on the nature of your jobs.



...

  • If you use HTTPS connections for Controller instances then consider that ControlerInstance2 might need its own server authentication certificate. 
    • If ControllerInstance1 is operated for with HTTPS you can modify the protocol to HTTP and point to a different host provided that this is in line with your security requirements.
    • The same applies vice versa if ControllerInstance1 is operated for HTTP and ControllerInstance2 is operated for HTTPS.
  • If you intend to roll back from ControllerInstance2 to ControllerInstance1 then consider to apply the above steps respectively.

...