| 115 | | [somebody add this please...] |
| | 115 | The beehive cluster nodes are behind a NAT so to run IDL you need to create an SSH tunnel through the master node. Here is how it works: |
| | 116 | |
| | 117 | First, set up passwordless sshkey access on the cluster. See this link for an example of how to do it: http://homepage.mac.com/wyuen/hpc/Passwordless_SSH.html |
| | 118 | |
| | 119 | Second, create a file called .flexlmrc in your home directory that reads: |
| | 120 | |
| | 121 | {{{ |
| | 122 | IDL_LMGRD_LICENSE_FILE=1700@localhost:/usr/local/rsi/idl_6.2/../license/license.dat |
| | 123 | }}} |
| | 124 | |
| | 125 | Finally, you are set to submit a PBS job that runs IDL. The one thing you must include is a line which generates the ssh tunnel (and then puts itself into the background so the tunnel stays around). Here is an example script: |
| | 126 | |
| | 127 | {{{ |
| | 128 | #!/bin/sh |
| | 129 | ### Job name |
| | 130 | #PBS -N idl_test |
| | 131 | ### Declare job non-rerunable |
| | 132 | #PBS -r n |
| | 133 | ### Output files |
| | 134 | #PBS -e output_simple.err |
| | 135 | #PBS -o output_simple.log |
| | 136 | ### Mail to user |
| | 137 | #PBS -m bae |
| | 138 | ### Give email address |
| | 139 | #PBS -M your_email_address@astro.columbia.edu |
| | 140 | ### Queue name (small, medium, long, verylong) |
| | 141 | #PBS -q medium |
| | 142 | ### Number of nodes and other properties (big memory) |
| | 143 | #PBS -l nodes=1:bigmem |
| | 144 | |
| | 145 | cd $PBS_O_WORKDIR |
| | 146 | |
| | 147 | echo Running on host `hostname` |
| | 148 | echo Time is `date` |
| | 149 | echo Directory is `pwd` |
| | 150 | |
| | 151 | # start the secure tunnel to the master (passwordless ssh must be setup) |
| | 152 | |
| | 153 | ssh -N -L 1700:neptune.astro.columbia.edu:1700 -L 1705:neptune.astro.columbia.edu:1705 master & |
| | 154 | |
| | 155 | # now we can run the idl job, replace my_idljob with your own idl script |
| | 156 | |
| | 157 | /usr/local/bin/idl my_idljob |
| | 158 | |
| | 159 | # clean up secure tunnel |
| | 160 | |
| | 161 | kill %1 |
| | 162 | }}} |