Skip to content

Latest commit

 

History

History
119 lines (88 loc) · 6.4 KB

File metadata and controls

119 lines (88 loc) · 6.4 KB

Description

This module performs the following tasks:

  • create an instance template from which execute points will be created
  • create a managed instance group (MIG) for execute points
  • create a Toolkit runner to configure the autoscaler to scale the MIG

It is expected to be used with the htcondor-install and htcondor-configure modules.

Example

The following code snippet creates a pool of HTCondor execute points using a startup script and network created in previous steps.

NOTE: HTCondor does not appear to interoperate correctly with the user identities created by OS Login. Until this is resolved, we advise disabling OS Login on all HTCondor nodes, including execute points.

- id: htcondor_execute_point
  source: community/modules/compute/htcondor-execute-point
  use:
  - network1
  - htcondor_configure_execute_point
  settings:
    metadata:
      central-manager: ((module.htcondor_cm.internal_ip[0]))
      enable-oslogin: "FALSE"
    service_account:
      email: $(htcondor_configure.execute_point_service_account)
      scopes:
      - cloud-platform

A full example can be found in the examples README.

Support

HTCondor is maintained by the Center for High Throughput Computing at the University of Wisconsin-Madison. Support for HTCondor is available via:

License

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.

Requirements

Name Version
terraform >= 0.13.0

Providers

No providers.

Modules

Name Source Version
execute_point_instance_template terraform-google-modules/vm/google//modules/instance_template ~> 7.8.0
mig terraform-google-modules/vm/google//modules/mig ~> 7.8.0

Resources

No resources.

Inputs

Name Description Type Default Required
deployment_name HPC Toolkit deployment name. HTCondor cloud resource names will include this value. string n/a yes
enable_oslogin Enable or Disable OS Login with "ENABLE" or "DISABLE". Set to "INHERIT" to inherit project OS Login setting. string "DISABLE" no
image HTCondor execute point VM image
object({
family = string,
project = string
})
{
"family": "hpc-centos-7",
"project": "cloud-hpc-image-public"
}
no
labels Labels to add to HTConodr execute points map(string) n/a yes
machine_type Machine type to use for HTCondor execute points string "n2-standard-4" no
max_size Maximum size of the HTCondor execute point pool; set to constrain cost run-away. number 100 no
metadata Metadata to add to HTCondor execute points map(string) {} no
network_self_link The self link of the network HTCondor execute points will join string "default" no
network_storage An array of network attached storage mounts to be configured
list(object({
server_ip = string,
remote_mount = string,
local_mount = string,
fs_type = string,
mount_options = string
}))
[] no
project_id Project in which the HTCondor execute points will be created string n/a yes
region The region in which HTCondor execute points will be created string n/a yes
service_account Service account to attach to HTCondor execute points
object({
email = string,
scopes = set(string)
})
{
"email": null,
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
}
no
startup_script Startup script to run at boot-time for HTCondor execute points string null no
subnetwork_self_link The self link of the subnetwork HTCondor execute points will join string null no
target_size Initial size of the HTCondor execute point pool; set to null (default) to avoid Terraform management of size. number null no
zone The default zone in which resources will be created string n/a yes

Outputs

Name Description
configure_autoscaler_runner Toolkit runner to configure the HTCondor autoscaler