Class: Google::Apis::HypercomputeclusterV1::SlurmNodeSet

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/hypercomputecluster_v1/classes.rb,
lib/google/apis/hypercomputecluster_v1/representations.rb,
lib/google/apis/hypercomputecluster_v1/representations.rb

Overview

Configuration for Slurm nodesets in the cluster. Nodesets are groups of compute nodes used by Slurm that are responsible for running workloads submitted to the cluster.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ SlurmNodeSet

Returns a new instance of SlurmNodeSet.



1834
1835
1836
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1834

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#compute_idString

Required. The ID of the compute resource on which this nodeset runs. Must match a key in the cluster's compute_resources. Corresponds to the JSON property computeId

Returns:

  • (String)


1798
1799
1800
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1798

def compute_id
  @compute_id
end

#compute_instanceGoogle::Apis::HypercomputeclusterV1::ComputeInstanceSlurmNodeSet

When set in a SlurmNodeSet, indicates that the nodeset should be backed by Compute Engine VM instances. Corresponds to the JSON property computeInstance



1804
1805
1806
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1804

def compute_instance
  @compute_instance
end

#idString

Required. Identifier for the nodeset, which allows it to be referenced by partitions. Must conform to RFC-1034 (lower-case, alphanumeric, and at most 63 characters). Corresponds to the JSON property id

Returns:

  • (String)


1811
1812
1813
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1811

def id
  @id
end

#max_dynamic_node_countFixnum

Optional. Controls how many additional nodes a cluster can bring online to handle workloads. Set this value to enable dynamic node creation and limit the number of additional nodes the cluster can bring online. Leave empty if you do not want the cluster to create nodes dynamically, and instead rely only on static nodes. Corresponds to the JSON property maxDynamicNodeCount

Returns:

  • (Fixnum)


1820
1821
1822
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1820

def max_dynamic_node_count
  @max_dynamic_node_count
end

#static_node_countFixnum

Optional. Number of nodes to be statically created for this nodeset. The cluster will attempt to ensure that at least this many nodes exist at all times. Corresponds to the JSON property staticNodeCount

Returns:

  • (Fixnum)


1827
1828
1829
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1827

def static_node_count
  @static_node_count
end

#storage_configsArray<Google::Apis::HypercomputeclusterV1::StorageConfig>

Optional. How storage resources should be mounted on each compute node. Corresponds to the JSON property storageConfigs



1832
1833
1834
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1832

def storage_configs
  @storage_configs
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1839
1840
1841
1842
1843
1844
1845
1846
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1839

def update!(**args)
  @compute_id = args[:compute_id] if args.key?(:compute_id)
  @compute_instance = args[:compute_instance] if args.key?(:compute_instance)
  @id = args[:id] if args.key?(:id)
  @max_dynamic_node_count = args[:max_dynamic_node_count] if args.key?(:max_dynamic_node_count)
  @static_node_count = args[:static_node_count] if args.key?(:static_node_count)
  @storage_configs = args[:storage_configs] if args.key?(:storage_configs)
end