Skip to content

Installation Guide

jdeananderson edited this page Mar 4, 2025 · 51 revisions

7lbd has a large number of moving parts. This installation guide will help break down this process. See the prerequisite list for prerequisites for each section of the install.

Build and test a Windows VM

The following instructions will assist with building a VM and get it running on your cluster. In these initial steps will not use Slurm to run jobs. We are also not going to be overly concerned about the security of the setup. We are first making sure things are installed and running properly before adding very strict layers of security. The following apply to this initial proof of concept build:

  • There will be no network namespace
  • The Windows VM will be on your local network
  • The Windows VM will use whatever accounts and passwords created when building the VM
  • The guacd container will also be accessible on your network
  • Samba will not be available

Build a Windows VM

Instructions to build a Windows VM with all of the necessary drivers and OOD integration. This most likely cannot be done on your cluster.

Boot the Windows VM on your cluster

Customize a pre-made script to get a Windows VM to boot on your cluster. This will not be in a Slurm job yet.

Build and test Guacamole

Use pre-made scripts to build the Guacamole client and server code and test for RDP connectivity to VM. This will also not be in a Slurm job.

Get Windows jobs running in Open OnDemand

The following instructions will assist with getting your VM running in a Open OnDemand job in a secure, network namespace with file access.

The following should apply if these steps are completed correctly:

  • All job processes will run in a network namespace
  • The Windows VM will only be accessible through 7lbd connectors
  • The Windows VM change the shared user account password at boot
  • The guacd container will be isolated in the network namespace
  • Samba will be accessible from the VM in the network namespace

Install ISO NETNS Spank Plugin

Install, configure, and test the ISO NETNS plugin to create a network namespace for Slurm jobs.

Install 7lbd to Open OnDemand

Installing the 7lbd Open OnDemand application is similar to most other OOD applications; copy the files to the web server and customize the scripts to your HPC center. The above instructions discuss each of the the 7lbd OOD application files like before.sh.erb that will definitely need customization.

Run test jobs on Open OnDemand

Run test jobs

Windows customizations

These next steps will all be changes that will need to be made permanent to the Windows VM that you built previously. Launch the VM read-write inside a network namespace to make these changes. This may be done by creating a maintenance copy of the 7lbd_ood code in your own sandbox and launching the VM read-write.

Network drives

Configure network drives on the VM by creating persistent mapped drives and adding a hosts file to the VM since there is no DNS server.

Windows licensing

There are several options for activating Windows licensing

Software installation

TLS Proxy

Install the TLS Proxy

Enable TLS Proxy support in 7lbd

Clone this wiki locally