Slurm Production Port Forwarding
Overview
Secure method for port forwarding from Slurm bare-metal production GPU nodes. It enables access to internal services running inside Slurm jobs using SSH tunnels via bastion or login nodes.
Port forwarding and web server/app access on Slurm production nodes or cluster
Step 1: Allocate a Node Using Slurm
salloc -N 1 -p <Partition Name>
or
salloc --reservation= <Reservations Name> -N 1
Step 2: Launch Container
Example 1: Nginx Web Server
podman run -d --name webtest -p 8080:80 Docker Hub Container Image Library | App Containerization
Step 3: Verify the Service on the Node
Check container status:
podman ps
Test locally on the node:
curl http://localhost:8080
If this works, your service is running correctly.
Step 4: Access the service from your browser (via controller/DNS)
From your local machine:
ssh -L {local_port}:{compute-node-hostname}:8080 <SSH User Name>@<DNS>
Now open your browser:
http://localhost:{local_port}
Traffic Flow
Browser → localhost:{local port} → SSH Tunnel → Controller → Compute Node → Container