Class: Aws::PCS::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::PCS::Client
- Includes:
- ClientStubs
- Defined in:
- lib/aws-sdk-pcs/client.rb
Overview
An API client for PCS. To construct a client, you need to configure a ‘:region` and `:credentials`.
client = Aws::PCS::Client.new(
region: region_name,
credentials: credentials,
# ...
)
For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
See #initialize for a full list of supported configuration options.
Class Attribute Summary collapse
- .identifier ⇒ Object readonly private
API Operations collapse
-
#create_cluster(params = {}) ⇒ Types::CreateClusterResponse
Creates a cluster in your account.
-
#create_compute_node_group(params = {}) ⇒ Types::CreateComputeNodeGroupResponse
Creates a managed set of compute nodes.
-
#create_queue(params = {}) ⇒ Types::CreateQueueResponse
Creates a job queue.
-
#delete_cluster(params = {}) ⇒ Struct
Deletes a cluster and all its linked resources.
-
#delete_compute_node_group(params = {}) ⇒ Struct
Deletes a compute node group.
-
#delete_queue(params = {}) ⇒ Struct
Deletes a job queue.
-
#get_cluster(params = {}) ⇒ Types::GetClusterResponse
Returns detailed information about a running cluster in your account.
-
#get_compute_node_group(params = {}) ⇒ Types::GetComputeNodeGroupResponse
Returns detailed information about a compute node group.
-
#get_queue(params = {}) ⇒ Types::GetQueueResponse
Returns detailed information about a queue.
-
#list_clusters(params = {}) ⇒ Types::ListClustersResponse
Returns a list of running clusters in your account.
-
#list_compute_node_groups(params = {}) ⇒ Types::ListComputeNodeGroupsResponse
Returns a list of all compute node groups associated with a cluster.
-
#list_queues(params = {}) ⇒ Types::ListQueuesResponse
Returns a list of all queues associated with a cluster.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
Returns a list of all tags on an PCS resource.
-
#register_compute_node_group_instance(params = {}) ⇒ Types::RegisterComputeNodeGroupInstanceResponse
This API action isn’t intended for you to use.
-
#tag_resource(params = {}) ⇒ Struct
Adds or edits tags on an PCS resource.
-
#untag_resource(params = {}) ⇒ Struct
Deletes tags from an PCS resource.
-
#update_cluster(params = {}) ⇒ Types::UpdateClusterResponse
Updates a cluster configuration.
-
#update_compute_node_group(params = {}) ⇒ Types::UpdateComputeNodeGroupResponse
Updates a compute node group.
-
#update_queue(params = {}) ⇒ Types::UpdateQueueResponse
Updates the compute node group configuration of a queue.
Class Method Summary collapse
- .errors_module ⇒ Object private
Instance Method Summary collapse
- #build_request(operation_name, params = {}) ⇒ Object private
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
480 481 482 |
# File 'lib/aws-sdk-pcs/client.rb', line 480 def initialize(*args) super end |
Class Attribute Details
.identifier ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1878 1879 1880 |
# File 'lib/aws-sdk-pcs/client.rb', line 1878 def identifier @identifier end |
Class Method Details
.errors_module ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1881 1882 1883 |
# File 'lib/aws-sdk-pcs/client.rb', line 1881 def errors_module Errors end |
Instance Method Details
#build_request(operation_name, params = {}) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 |
# File 'lib/aws-sdk-pcs/client.rb', line 1851 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) tracer = config.telemetry_provider.tracer_provider.tracer( Aws::Telemetry.module_to_tracer_name('Aws::PCS') ) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config, tracer: tracer ) context[:gem_name] = 'aws-sdk-pcs' context[:gem_version] = '1.46.0' Seahorse::Client::Request.new(handlers, context) end |
#create_cluster(params = {}) ⇒ Types::CreateClusterResponse
Creates a cluster in your account. PCS creates the cluster controller in a service-owned account. The cluster controller communicates with the cluster resources in your account. The subnets and security groups for the cluster must already exist before you use this API action.
<note markdown=“1”> It takes time for PCS to create the cluster. The cluster is in a ‘Creating` state until it is ready to use. There can only be 1 cluster in a `Creating` state per Amazon Web Services Region per Amazon Web Services account. `CreateCluster` fails with a `ServiceQuotaExceededException` if there is already a cluster in a `Creating` state.
</note>
639 640 641 642 |
# File 'lib/aws-sdk-pcs/client.rb', line 639 def create_cluster(params = {}, = {}) req = build_request(:create_cluster, params) req.send_request() end |
#create_compute_node_group(params = {}) ⇒ Types::CreateComputeNodeGroupResponse
Creates a managed set of compute nodes. You associate a compute node group with a cluster through 1 or more PCS queues or as part of the login fleet. A compute node group includes the definition of the compute properties and lifecycle management. PCS uses the information you provide to this API action to launch compute nodes in your account. You can only specify subnets in the same Amazon VPC as your cluster. You receive billing charges for the compute nodes that PCS launches in your account. You must already have a launch template before you call this API. For more information, see [Launch an instance from a launch template] in the *Amazon Elastic Compute Cloud User Guide for Linux Instances*.
[1]: docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html
817 818 819 820 |
# File 'lib/aws-sdk-pcs/client.rb', line 817 def create_compute_node_group(params = {}, = {}) req = build_request(:create_compute_node_group, params) req.send_request() end |
#create_queue(params = {}) ⇒ Types::CreateQueueResponse
Creates a job queue. You must associate 1 or more compute node groups with the queue. You can associate 1 compute node group with multiple queues.
905 906 907 908 |
# File 'lib/aws-sdk-pcs/client.rb', line 905 def create_queue(params = {}, = {}) req = build_request(:create_queue, params) req.send_request() end |
#delete_cluster(params = {}) ⇒ Struct
Deletes a cluster and all its linked resources. You must delete all queues and compute node groups associated with the cluster before you can delete the cluster.
942 943 944 945 |
# File 'lib/aws-sdk-pcs/client.rb', line 942 def delete_cluster(params = {}, = {}) req = build_request(:delete_cluster, params) req.send_request() end |
#delete_compute_node_group(params = {}) ⇒ Struct
Deletes a compute node group. You must delete all queues associated with the compute node group first.
982 983 984 985 |
# File 'lib/aws-sdk-pcs/client.rb', line 982 def delete_compute_node_group(params = {}, = {}) req = build_request(:delete_compute_node_group, params) req.send_request() end |
#delete_queue(params = {}) ⇒ Struct
Deletes a job queue. If the compute node group associated with this queue isn’t associated with any other queues, PCS terminates all the compute nodes for this queue.
1023 1024 1025 1026 |
# File 'lib/aws-sdk-pcs/client.rb', line 1023 def delete_queue(params = {}, = {}) req = build_request(:delete_queue, params) req.send_request() end |
#get_cluster(params = {}) ⇒ Types::GetClusterResponse
Returns detailed information about a running cluster in your account. This API action provides networking information, endpoint information for communication with the scheduler, and provisioning status.
1092 1093 1094 1095 |
# File 'lib/aws-sdk-pcs/client.rb', line 1092 def get_cluster(params = {}, = {}) req = build_request(:get_cluster, params) req.send_request() end |
#get_compute_node_group(params = {}) ⇒ Types::GetComputeNodeGroupResponse
Returns detailed information about a compute node group. This API action provides networking information, EC2 instance type, compute node group status, and scheduler (such as Slurm) configuration.
1150 1151 1152 1153 |
# File 'lib/aws-sdk-pcs/client.rb', line 1150 def get_compute_node_group(params = {}, = {}) req = build_request(:get_compute_node_group, params) req.send_request() end |
#get_queue(params = {}) ⇒ Types::GetQueueResponse
Returns detailed information about a queue. The information includes the compute node groups that the queue uses to schedule jobs.
1197 1198 1199 1200 |
# File 'lib/aws-sdk-pcs/client.rb', line 1197 def get_queue(params = {}, = {}) req = build_request(:get_queue, params) req.send_request() end |
#list_clusters(params = {}) ⇒ Types::ListClustersResponse
Returns a list of running clusters in your account.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1247 1248 1249 1250 |
# File 'lib/aws-sdk-pcs/client.rb', line 1247 def list_clusters(params = {}, = {}) req = build_request(:list_clusters, params) req.send_request() end |
#list_compute_node_groups(params = {}) ⇒ Types::ListComputeNodeGroupsResponse
Returns a list of all compute node groups associated with a cluster.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1302 1303 1304 1305 |
# File 'lib/aws-sdk-pcs/client.rb', line 1302 def list_compute_node_groups(params = {}, = {}) req = build_request(:list_compute_node_groups, params) req.send_request() end |
#list_queues(params = {}) ⇒ Types::ListQueuesResponse
Returns a list of all queues associated with a cluster.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1357 1358 1359 1360 |
# File 'lib/aws-sdk-pcs/client.rb', line 1357 def list_queues(params = {}, = {}) req = build_request(:list_queues, params) req.send_request() end |
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
Returns a list of all tags on an PCS resource.
1386 1387 1388 1389 |
# File 'lib/aws-sdk-pcs/client.rb', line 1386 def (params = {}, = {}) req = build_request(:list_tags_for_resource, params) req.send_request() end |
#register_compute_node_group_instance(params = {}) ⇒ Types::RegisterComputeNodeGroupInstanceResponse
This API action isn’t intended for you to use.
PCS uses this API action to register the compute nodes it launches in
your account.
1431 1432 1433 1434 |
# File 'lib/aws-sdk-pcs/client.rb', line 1431 def register_compute_node_group_instance(params = {}, = {}) req = build_request(:register_compute_node_group_instance, params) req.send_request() end |
#tag_resource(params = {}) ⇒ Struct
Adds or edits tags on an PCS resource. Each tag consists of a tag key and a tag value. The tag key and tag value are case-sensitive strings. The tag value can be an empty (null) string. To add a tag, specify a new tag key and a tag value. To edit a tag, specify an existing tag key and a new tag value.
1464 1465 1466 1467 |
# File 'lib/aws-sdk-pcs/client.rb', line 1464 def tag_resource(params = {}, = {}) req = build_request(:tag_resource, params) req.send_request() end |
#untag_resource(params = {}) ⇒ Struct
Deletes tags from an PCS resource. To delete a tag, specify the tag key and the Amazon Resource Name (ARN) of the PCS resource.
1492 1493 1494 1495 |
# File 'lib/aws-sdk-pcs/client.rb', line 1492 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_cluster(params = {}) ⇒ Types::UpdateClusterResponse
Updates a cluster configuration. You can modify Slurm scheduler settings, accounting configuration, and security groups for an existing cluster.
<note markdown=“1”> You can only update clusters that are in ‘ACTIVE`, `UPDATE_FAILED`, or `SUSPENDED` state. All associated resources (queues and compute node groups) must be in `ACTIVE` state before you can update the cluster.
</note>
1611 1612 1613 1614 |
# File 'lib/aws-sdk-pcs/client.rb', line 1611 def update_cluster(params = {}, = {}) req = build_request(:update_cluster, params) req.send_request() end |
#update_compute_node_group(params = {}) ⇒ Types::UpdateComputeNodeGroupResponse
Updates a compute node group. You can update many of the fields related to your compute node group including the configurations for networking, compute nodes, and settings specific to your scheduler (such as Slurm).
1762 1763 1764 1765 |
# File 'lib/aws-sdk-pcs/client.rb', line 1762 def update_compute_node_group(params = {}, = {}) req = build_request(:update_compute_node_group, params) req.send_request() end |
#update_queue(params = {}) ⇒ Types::UpdateQueueResponse
Updates the compute node group configuration of a queue. Use this API to change the compute node groups that the queue can send jobs to.
1842 1843 1844 1845 |
# File 'lib/aws-sdk-pcs/client.rb', line 1842 def update_queue(params = {}, = {}) req = build_request(:update_queue, params) req.send_request() end |
#waiter_names ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1871 1872 1873 |
# File 'lib/aws-sdk-pcs/client.rb', line 1871 def waiter_names [] end |