Skip to the content.

Home | Deploy | User Guide | Tutorials | Administrator Guide | Application Integration | Support

There are several scenarios for application integration depending on the type of application being used. These can be split in two main categories, but they are sharing the same concept being run as a job :

For CLI only applications those are mostly recipes on how to package, share and integrate them with the job schedulers supported by az-hop (OpenPBS and SLURM). Tuning guidance can be embedded in these recipes based on the VM types like pinning, placement, etc… For some applications a license server is required which means dedicated ports would have to be open to reach these if outside of the azhop vnet. Today there are no direct configuration settings in azhop and ports need to be specifically open in your networking.

For interactive applications, Open OnDemand provides a mechanism to add application launchers as documented here, with many samples already published here. The main drawback is that these applications are hosted in separate repositories and most of the time not generic enough to be reused as is. While it’s totally possible to manually add external applications as described in the Open OnDemand documentation these are not integrated with the deployment and version management of azhop. So to better handle application integration, control and versioning there are specific locations in which you can contribute to easily add an application. Each application integration artifacts lives in its own directory under playbooks/roles/ood-applications/files and deployed thru the ood-applications ansible role. Enabling/Disabling applications can be done in the config.yml file as described below, and deployed/updated by running this command ./install.sh ood-custom

# Application settings
applications:
  bc_codeserver:
    enabled: true
  bc_jupyter:
    enabled: true
  bc_ansys_workbench:
    enabled: false
  bc_vmd:
    enabled: false

There are actually 9 application folder under the ood-applications ansible role :

The specific bc_* pattern comes from Open OnDemand and means that the Batch Connect feature is used. This provides form design, job scheduler integration, remote desktop integration, session management and more. To add a new Interactive Application named foo follow these steps :

Application Catalog

ANSYS Workbench

An Open OnDemand Batch Connect application designed for az-hop that launches an ANSYS Workbench session within a batch job.

Adapted from https://github.com/OSC/bc_osc_ansys_workbench

Prerequisites

ANSYS Workbench need to be installed on a file share system accessible by the nodes. The default ANSYS root directory is defined as /anfhome/apps/ansys, but it can be changed in the form.yml.erb file and is a parameter in the UI.

Versions

The default version is 2021R2 and is mapped to the /anfhome/apps/ansys/v212 folder to launch ANSYS Workbench. If you need to add another version then :

Enabling the OnDemand application

By default, ANSYS Workbench is disabled. To enable it, update the enabled property to true for the bc_ansys_workbench application in applications section of your config file.

# Application settings
applications:
  - bc_ansys_workbench:
    enabled: true

Update a running environment

To update an existing environment you have to applu the ood-custom playbook by running this command :

$ ./install.sh ood-custom

License

Visual Molecular Dynamics

An Open OnDemand app designed for az-hop that launches VMD session within a batch job.

Adapted from https://github.com/OSC/bc_osc_vmd

Prerequisites

VMD need to be installed on a file share system accessible by the nodes. The default VMD root directory is defined as /anfhome/apps/vmd, but it can be changed in the form.yml.erb file and is a parameter in the UI.

Enabling the OnDemand application

By default, VMD is disabled. To enable it, update the enabled property to true for the bc_vmd application in applications section of your config file.

# Application settings
applications:
  - bc_vmd:
    enabled: true

Update a running environment

To update an existing environment you have to applu the ood-custom playbook by running this command :

$ ./install.sh ood-custom

License