Warning: this module is now deprecated. We recommend using the Slurm on GCP V5 schedmd-slurm-gcp-v5-login instead.
This module creates a login node for a Slurm cluster based on the Slurm on GCP terraform login module. The login node is used in conjunction with the Slurm controller.
Warning:: Slurm handles startup scripts differently from virtual machines. This will not work in conjuntion with the startup_script module.
- id: slurm_login
source: community/modules/scheduler/SchedMD-slurm-on-gcp-login-node
use:
- network1
- homefs
- slurm_controller
settings:
login_machine_type: n2-standard-4
This creates a Slurm login node which is:
- connected to the primary subnet of network1 via
use
- mounted to the homefs filesystem via
use
- associated with the
slurm_controller
module as the slurm controller viause
- of VM machine type
n2-standard-4
More information on GPU support in Slurm on GCP and other HPC Toolkit modules can be found at docs/gpu-support.md
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.
Copyright 2022 Google LLC
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Name | Version |
---|---|
terraform | >= 0.14.0 |
No providers.
Name | Source | Version |
---|---|---|
slurm_cluster_login_node | github.com/SchedMD/slurm-gcp//tf/modules/login/ | v4.2.1 |
No resources.
Name | Description | Type | Default | Required |
---|---|---|---|---|
boot_disk_size | Size of boot disk to create for the cluster login node | number |
20 |
no |
boot_disk_type | Type of boot disk to create for the cluster login node | string |
"pd-standard" |
no |
cluster_name | Name of the cluster | string |
null |
no |
controller_name | FQDN or IP address of the controller node | string |
n/a | yes |
controller_secondary_disk | Create secondary disk mounted to controller node | bool |
false |
no |
deployment_name | Name of the deployment | string |
n/a | yes |
disable_login_public_ips | If set to true, create Cloud NAT gateway and enable IAP FW rules | bool |
false |
no |
instance_image | Disk OS image with Slurm preinstalled to use for login node. Expected Fields: name: The name of the image. Mutually exclusive with family. family: The image family to use. Mutually exclusive with name. project: The project where the image is hosted. Custom images must comply with Slurm on GCP requirements. |
map(string) |
{ |
no |
labels | Labels to add to login instances. Key-value pairs. | map(string) |
{} |
no |
login_instance_template | Instance template to use to create controller instance | string |
null |
no |
login_machine_type | Machine type to use for login node instances. | string |
"n2-standard-2" |
no |
login_node_count | Number of login nodes in the cluster | number |
1 |
no |
login_scopes | Scopes to apply to login nodes. | list(string) |
[ |
no |
login_service_account | Service Account for compute nodes. | string |
null |
no |
login_startup_script | Custom startup script to run on the login node | string |
null |
no |
munge_key | Specific munge key to use | any |
null |
no |
network_storage | An array of network attached storage mounts to be configured on all instances. | list(object({ |
[] |
no |
region | Compute Platform region where the Slurm cluster will be located | string |
n/a | yes |
shared_vpc_host_project | Host project of shared VPC | string |
null |
no |
startup_script | Custom startup script to run on the login node. Will be ignored if login_startup_script is specified.This variable allows Slurm to use the startup_script module. |
string |
null |
no |
subnet_depend | Used as a dependency between the network and instances | string |
"" |
no |
subnetwork_name | The name of the pre-defined VPC subnet you want the nodes to attach to based on Region. | string |
null |
no |
zone | Compute Platform zone where the notebook server will be located | string |
n/a | yes |
No outputs.