FAQ
How to obtain a CN node number
(some info on /proc/personality.sh)
How to find the MPI rank from a shell script
How to open a socket from a CN to the outside world
ZOID provides IP packet forwarding between the compute nodes and the I/O nodes. However, because the compute nodes use non-routable IP addresses (192.168.1.x), they cannot communicate directly with the outside world.
The most transparent solution to this problem is to perform network address translation (NAT) on the I/O nodes using the Linux kernel netfilter infrastructure. We used to enable this by default, but experiments have shown it to have a detrimental effect on the overall performance of the TCP/IP stack on the I/O nodes, slowing down access to the network filesystems.
To enable the translation, pass ZOID_NAT_ENABLE environment variable when submitting a job. An administrator can also enable this option permanently in the config file.
How to obtain a Cobalt job ID
Cobalt passes the job id to the application processes launched on the compute nodes using the COBALT_JOBID environment variable.
This variable is also accessible from the user script running on the I/O nodes, using the ZOID_JOB_ENV variable:
COBALT_JOBID=`echo $ZOID_JOB_ENV | sed 's/^.*COBALT_JOBID=\([^:]*\)/\1/'`