Skip to content

Latest commit

 

History

History
94 lines (74 loc) · 6.74 KB

File metadata and controls

94 lines (74 loc) · 6.74 KB

Description

This module creates a compute partition that be can used as input to SchedMD-slurm-on-gcp-controller.

Warning: updating a partition will not cause the slurm controller to update its configurations. In other words, it will not update an already deployed Slurm cluster.

Example

The following code snippet creates a partition module with:

  • a max node count of 200
  • VM machine type of c2-standard-30
  • partition name of "compute"
  • connected to the network1 module via use
  • Mounted to homefs via use
- id: compute_partition
  source: community/modules/compute/SchedMD-slurm-on-gcp-partition
  use: [network1, homefs]
  settings:
    max_node_count: 200
    partition_name: compute
    machine_type: c2-standard-30

Support

The HPC Toolkit team maintains the wrapper around the slurm-on-gcp terraform modules. For support with the underlying modules, see the instructions in the slurm-gcp README.

Requirements

Name Version
terraform >= 0.14.0
google >= 3.83

Providers

Name Version
google >= 3.83

Modules

No modules.

Resources

Name Type
google_compute_image.compute_image data source

Inputs

Name Description Type Default Required
bandwidth_tier Configures the network interface card and the maximum egress bandwidth for VMs.
- Setting platform_default respects the Google Cloud Platform API default values for networking.
- Setting virtio_enabled explicitly selects the VirtioNet network adapter.
- Setting gvnic_enabled selects the gVNIC network adapter (without Tier 1 high bandwidth).
- Setting tier_1_enabled selects both the gVNIC adapter and Tier 1 high bandwidth networking.
- Note: both gVNIC and Tier 1 networking require a VM image with gVNIC support as well as specific VM families and shapes.
- See official docs for more details.
string "platform_default" no
compute_disk_size_gb Size of boot disk to create for the partition compute nodes number 20 no
compute_disk_type Type of boot disk to create for the partition compute nodes string "pd-standard" no
cpu_platform The name of the minimum CPU platform that you want the instance to use. string null no
enable_placement Enable compact placement policies for jobs requiring low latency networking. bool true no
exclusive Exclusive job access to nodes bool true no
gpu_count Number of GPUs attached to the partition compute instances number 0 no
gpu_type Type of GPUs attached to the partition compute instances string null no
image_hyperthreads Enable hyperthreading bool false no
instance_image Image to be used for the compute VMs in this partition
object({
family = string,
project = string
})
{
"family": "schedmd-slurm-21-08-8-hpc-centos-7",
"project": "schedmd-slurm-public"
}
no
instance_template Instance template to use to create partition instances string null no
labels Labels to add to partition compute instances. List of key key, value pairs. any {} no
machine_type Compute Platform machine type to use for this partition compute nodes string "c2-standard-60" no
max_node_count Maximum number of nodes allowed in this partition number 50 no
network_storage An array of network attached storage mounts to be configured on the partition compute nodes.
list(object({
server_ip = string,
remote_mount = string,
local_mount = string,
fs_type = string,
mount_options = string
}))
[] no
partition_name The name of the slurm partition string n/a yes
preemptible_bursting Should use preemptibles to burst string false no
regional_capacity If True, then create instances in the region that has available capacity. Specify the region in the zone field. bool false no
regional_policy locationPolicy defintion for regional bulkInsert() any {} no
static_node_count Number of nodes to be statically created number 0 no
subnetwork_name The name of the pre-defined VPC subnet you want the nodes to attach to based on Region. string n/a yes
zone Compute Platform zone where the notebook server will be located string n/a yes

Outputs

Name Description
partition The partition structure containing all the set variables