Class: Google::Apis::HypercomputeclusterV1::SlurmOrchestrator
- Inherits:
-
Object
- Object
- Google::Apis::HypercomputeclusterV1::SlurmOrchestrator
- 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
When set in Orchestrator, indicates that the cluster should use Slurm as the orchestrator.
Instance Attribute Summary collapse
-
#default_partition ⇒ String
Optional.
-
#epilog_bash_scripts ⇒ Array<String>
Optional.
-
#login_nodes ⇒ Google::Apis::HypercomputeclusterV1::SlurmLoginNodes
Configuration for Slurm login nodes in the cluster.
-
#node_sets ⇒ Array<Google::Apis::HypercomputeclusterV1::SlurmNodeSet>
Optional.
-
#partitions ⇒ Array<Google::Apis::HypercomputeclusterV1::SlurmPartition>
Optional.
-
#prolog_bash_scripts ⇒ Array<String>
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ SlurmOrchestrator
constructor
A new instance of SlurmOrchestrator.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ SlurmOrchestrator
Returns a new instance of SlurmOrchestrator.
1896 1897 1898 |
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1896 def initialize(**args) update!(**args) end |
Instance Attribute Details
#default_partition ⇒ String
Optional. Default partition to use for submitted jobs that do not explicitly
specify a partition. Required if and only if there is more than one partition,
in which case it must match the id of one of the partitions.
Corresponds to the JSON property defaultPartition
1859 1860 1861 |
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1859 def default_partition @default_partition end |
#epilog_bash_scripts ⇒ Array<String>
Optional. Slurm epilog scripts,
which will be executed by compute nodes whenever a node finishes running a
job. Values must not be empty.
Corresponds to the JSON property epilogBashScripts
1866 1867 1868 |
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1866 def epilog_bash_scripts @epilog_bash_scripts end |
#login_nodes ⇒ Google::Apis::HypercomputeclusterV1::SlurmLoginNodes
Configuration for Slurm login nodes in the cluster. Login nodes are Compute Engine VM
instances that allow users to access the cluster over SSH.
Corresponds to the JSON property loginNodes
1873 1874 1875 |
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1873 def login_nodes @login_nodes end |
#node_sets ⇒ Array<Google::Apis::HypercomputeclusterV1::SlurmNodeSet>
Optional. Compute resource configuration for the Slurm nodesets in your
cluster. If not specified, the cluster won't create any nodes.
Corresponds to the JSON property nodeSets
1879 1880 1881 |
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1879 def node_sets @node_sets end |
#partitions ⇒ Array<Google::Apis::HypercomputeclusterV1::SlurmPartition>
Optional. Configuration for the Slurm partitions in your cluster. Each
partition can contain one or more nodesets, and you can submit separate jobs
on each partition. If you don't specify at least one partition in your cluster,
you can't submit jobs to the cluster.
Corresponds to the JSON property partitions
1887 1888 1889 |
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1887 def partitions @partitions end |
#prolog_bash_scripts ⇒ Array<String>
Optional. Slurm prolog scripts,
which will be executed by compute nodes before a node begins running a new
job. Values must not be empty.
Corresponds to the JSON property prologBashScripts
1894 1895 1896 |
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1894 def prolog_bash_scripts @prolog_bash_scripts end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1901 1902 1903 1904 1905 1906 1907 1908 |
# File 'lib/google/apis/hypercomputecluster_v1/classes.rb', line 1901 def update!(**args) @default_partition = args[:default_partition] if args.key?(:default_partition) @epilog_bash_scripts = args[:epilog_bash_scripts] if args.key?(:epilog_bash_scripts) @login_nodes = args[:login_nodes] if args.key?(:login_nodes) @node_sets = args[:node_sets] if args.key?(:node_sets) @partitions = args[:partitions] if args.key?(:partitions) @prolog_bash_scripts = args[:prolog_bash_scripts] if args.key?(:prolog_bash_scripts) end |