|
| 1 | +# Installation overview |
| 2 | +1. Configure SSL redirection for OOD |
| 3 | +2. Install the application on OOD |
| 4 | +3. Install and configure the ThinLinc server on the compute node |
| 5 | +4. Set up PAM module pam_tlpasswd for automatic login |
| 6 | + |
| 7 | +Chapter 1-2 are for the Open OnDemand **login node** and chapter 3-4 are for |
| 8 | +the **compute nodes**. |
| 9 | + |
| 10 | +# 1. Configure SSL redirection for OOD |
| 11 | +You need to set the SSL redirection sub-uri and the additional SSL settings for |
| 12 | +the OOD reverse proxy in `/etc/ood/config/ood_portal.yml`: |
| 13 | +``` |
| 14 | +secure_rnode_uri: '/secure-rnode' |
| 15 | +ssl_proxy: |
| 16 | + - 'SSLProxyCheckPeerCN Off' |
| 17 | + - 'SSLProxyCheckPeerName Off' |
| 18 | +``` |
| 19 | + |
| 20 | +Should you want to enable Native client support, this custom virtual host |
| 21 | +directive will be needed to set the correct MIME-type for the ThinLinc |
| 22 | +profile. The native client will only work if users are able to establish a |
| 23 | +direct SSH connection to the compute node/ThinLinc server. |
| 24 | +``` |
| 25 | +custom_vhost_directives: |
| 26 | + - '<LocationMatch ".*\.tlclient$">' |
| 27 | + - ' Header set Content-Type "application/thinlinc.client"' |
| 28 | + - ' Header set Content-Disposition "attachment"' |
| 29 | + - '</LocationMatch>' |
| 30 | +``` |
| 31 | + |
| 32 | +When you have added these configurations to your `ood_portal.yml` config, |
| 33 | +generate the new Apache config as such: |
| 34 | +``` |
| 35 | +sudo /opt/ood/ood-portal-generator/sbin/update_ood_portal |
| 36 | +``` |
| 37 | + |
| 38 | +To apply the new configurations made with `update_ood_portal`, you need to |
| 39 | +restart the web server running the OOD instance. |
| 40 | + |
| 41 | +# 2. Install the application on OOD |
| 42 | +1. Clone this repository into your applications folder for OOD. |
| 43 | + |
| 44 | +2. Configure the `form.yml` |
| 45 | + - You need to *at least* configure the clusters available to start the job on. These |
| 46 | + clusters names are the ones specified in `/etc/ood/config/clusters.d/<clustername>.yml`. |
| 47 | + |
| 48 | +3. Configure the `submit.yml.erb` |
| 49 | + - This may or may not need configurations for resources such as GPU (sharing or no |
| 50 | + sharing) or other devices/configuration changes made in `form.yml`. |
| 51 | + |
| 52 | +4. Configure the `view.html.erb` |
| 53 | + - To enable the native client functionality, set the `enabled_client` |
| 54 | + variable to either `native` for native client-only support, or `both` to |
| 55 | + enable the native client and the web client. |
| 56 | + - If you configured the `secure_rnode_uri` to something other than |
| 57 | + `/secure-rnode`, change the `webaccess_url` variable to your value. |
| 58 | + |
| 59 | +# 3. Install and configure the ThinLinc server on the compute node |
| 60 | +[Download](https://www.cendio.com/thinlinc/download/) and |
| 61 | +[install](https://www.cendio.com/thinlinc/docs/install/) the latest ThinLinc |
| 62 | +server on the **compute node**. |
| 63 | + |
| 64 | +# 4. Set up PAM module pam_tlpasswd for automatic login |
| 65 | +This chapter contains two steps. Installing the PAM module, then installing a |
| 66 | +Slurm Epilog script to clean up the temporary password files created by the Open |
| 67 | +OnDemand job. Both of these steps are done on the **Compute nodes**. |
| 68 | + |
| 69 | +## Install the PAM module pam_tlpasswd |
| 70 | +1. Install the PAM module `pam_tlpasswd`, you need to reconfigure the path to |
| 71 | + your PAM modules directory. |
| 72 | +``` |
| 73 | +sudo install ./prequisites/pam_tlpasswd/pam_tlpasswd.so /lib64/security/pam_tlpasswd.so |
| 74 | +``` |
| 75 | + |
| 76 | +2. Configure `/etc/pam.d/sshd` to add this in the top of the file: |
| 77 | +``` |
| 78 | +auth [success=done ignore=ignore default=die] pam_tlpasswd.so |
| 79 | +``` |
| 80 | + |
| 81 | +## Install the Slurm Epilog clean up script |
| 82 | +1. Install the clean up script |
| 83 | +``` |
| 84 | +sudo cp ./prequisites/ood_thinlinc_cleanup.sh /etc/slurm/ood_thinlinc_cleanup.sh |
| 85 | +``` |
| 86 | + |
| 87 | +2. Edit `/etc/slurm/slurm.conf` to add the following line: |
| 88 | +``` |
| 89 | +Epilog=/etc/slurm/ood_thinlinc_cleanup.sh |
| 90 | +``` |
| 91 | + |
| 92 | +Debugging The Epilog clean up script: |
| 93 | +``` |
| 94 | +sudo journalctl -t tlCleanupEpilog |
| 95 | +``` |
0 commit comments