Skip to content

Latest commit

 

History

History
102 lines (81 loc) · 4.73 KB

vm-images.md

File metadata and controls

102 lines (81 loc) · 4.73 KB

Supported and Tested VM Images

HPC CentOS 7 VM Image

The HPC Toolkit has officially supported the HPC CentOS 7 VM Image as the primary VM image for HPC workloads on Google Cloud since it's release. Since the HPC CentOS 7 VM Image comes pre-tuned for optimal performance on typical HPC workloads, it is the default VM image in our modules, unless there is specific requirement for a different OS distribution.

Exceptions:

  • DDN-EXAScaler: The underlying terraform module has a limitted set of supported images documented in the exascaler-cloud-terraform github repo. This requirement only applies to the servers, not the clients.
  • omnia-install: Only provides support for Rocky 8.

Ubuntu

The HPC Toolkit officially supports Ubuntu based VM images in the majority of our modules, with a couple exceptions:

  • htcondor-configure: Only provides support for the HPC CentOS 7 image.
  • nfs-server: Only provides support for CentOS 7 images for the server itself.
  • DDN-EXAScaler: The underlying terraform module has a limitted set of supported images documented in the exascaler-cloud-terraform github repo. This requirement only applies to the servers, not the clients.
  • omnia-install: Only provides support for Rocky 8.

HPC Toolkit modules and startup scripts have been evaulated against the ubuntu-2004-lts image family. For more information about the Ubuntu Google Cloud images, see the Canonical documentation.

To use the Ubuntu images with the schedmd-slurm-gcp-v5 modules, follow the pattern used in the slurm-gcp-v5-ubuntu2004.yaml example.

In most other modules that provide the option to set a VM image, you can set it to use the Ubuntu image with the following:

...
settings:
  instance_image:
    family: ubuntu-2004-lts
    project: ubuntu-os-cloud

Other Images

The HPC Toolkit strives to provide flexibility wherever possible. It is possible to set a VM image in many HPC Toolkit modules. While we do not officially support images not listed here, other public and custom images should work with the majority of modules with or without further customization, such as custom startup-scripts.

Slurm on GCP Custom Images

HPC Toolkit modules based on terraform modules in Slurm on GCP allow custom images via custom instance templates and directly through the instance_image variable, but they have explicit requirements to function correctly with the Slurm cluster. We recommend one of two options for creating a custom image for these modules:

  1. Use the packer templates hosted in the Slurm on GCP github repository directly. The example.pkrvars.hcl file can be customized to your needs, by supplying a different base image or through the extra_ansible_provisioners variable.
  2. Create a custom image with a HPC Toolkit packer module using one of the Slurm on GCP images as the base image. The image can be customized via shell_scripts, ansible_playbooks or a provided startup_script.

For more information on the Slurm on GCP public images, see their documentation. From there, you can see which public images are available, which software is installed on them and more information on how to customize them using option 1 listed above.

These instructions apply to the following modules: