aws-sdk-sagemaker 1.317.0 → 1.318.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 78a974b66e6cfd1fc5fc25e70078b199ca73d58d99776fc4c526012130cf0e8c
4
- data.tar.gz: 7ed7a06ed6737139863d2b7ee170e09a2e71bf17fef984703a37b35678cf6169
3
+ metadata.gz: 6f54ed6366705b704f7ce84d8c362eae144419107edd0dcd7fcaaed7bf77b746
4
+ data.tar.gz: 4c16f62be506f12b41cfb29c077be86598d805f369fe3192cd143c2523cc0e15
5
5
  SHA512:
6
- metadata.gz: 9bf5bc535b5105425880b7c47c464ed83e8be7ff285a94892bfd3233bd4b566b274679937a5d315394ca9dd9d8c2278d8a49696a261256ea0648c56ded80badc
7
- data.tar.gz: 61f76c6bde2b332b8b737412ff957a4ba719170a926904b44dac7ae2118c2f9258f22c86393ff32edbdfaaa353f01651386817f4c6612b908d9de025fb58d3fa
6
+ metadata.gz: 147b9ad20a2dc244caf6c1a49739cc43a6e02173758426e236efe08d9a6ef8ba384d566af2ed0060e99969a5ebb342d0a0c151343ded69971b8c038e4cdd4b14
7
+ data.tar.gz: f018891a7d476a0b15b67cf1c7556f2667c358ea24c5bbdfca7f9b5a1c8626ef8e9299584e59e991a92a36c0148b3b6bc570482c285e239644ef3889056e99fc
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.318.0 (2025-08-04)
5
+ ------------------
6
+
7
+ * Feature - This release adds the ability for customers to attach and detach their EBS volumes to EKS-orchestrated HyperPod cluster nodes.
8
+
4
9
  1.317.0 (2025-07-31)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.317.0
1
+ 1.318.0
@@ -95,8 +95,8 @@ module Aws::SageMaker
95
95
  # class name or an instance of a plugin class.
96
96
  #
97
97
  # @option options [required, Aws::CredentialProvider] :credentials
98
- # Your AWS credentials used for authentication. This can be an instance of any one of the
99
- # following classes:
98
+ # Your AWS credentials used for authentication. This can be any class that includes and implements
99
+ # `Aws::CredentialProvider`, or instance of any one of the following classes:
100
100
  #
101
101
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
102
102
  # credentials.
@@ -124,8 +124,7 @@ module Aws::SageMaker
124
124
  # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
125
125
  # from the Cognito Identity service.
126
126
  #
127
- # When `:credentials` are not configured directly, the following
128
- # locations will be searched for credentials:
127
+ # When `:credentials` are not configured directly, the following locations will be searched for credentials:
129
128
  #
130
129
  # * `Aws.config[:credentials]`
131
130
  #
@@ -139,12 +138,10 @@ module Aws::SageMaker
139
138
  #
140
139
  # * `~/.aws/config`
141
140
  #
142
- # * EC2/ECS IMDS instance profile - When used by default, the timeouts
143
- # are very aggressive. Construct and pass an instance of
144
- # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
145
- # enable retries and extended timeouts. Instance profile credential
146
- # fetching can be disabled by setting `ENV['AWS_EC2_METADATA_DISABLED']`
147
- # to `true`.
141
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive.
142
+ # Construct and pass an instance of `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
143
+ # enable retries and extended timeouts. Instance profile credential fetching can be disabled by
144
+ # setting `ENV['AWS_EC2_METADATA_DISABLED']` to `true`.
148
145
  #
149
146
  # @option options [required, String] :region
150
147
  # The AWS region to connect to. The configured `:region` is
@@ -384,8 +381,8 @@ module Aws::SageMaker
384
381
  # `Aws::Telemetry::OTelProvider` for telemetry provider.
385
382
  #
386
383
  # @option options [Aws::TokenProvider] :token_provider
387
- # Your Bearer token used for authentication. This can be an instance of any one of the
388
- # following classes:
384
+ # Your Bearer token used for authentication. This can be any class that includes and implements
385
+ # `Aws::TokenProvider`, or instance of any one of the following classes:
389
386
  #
390
387
  # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
391
388
  # tokens.
@@ -670,6 +667,62 @@ module Aws::SageMaker
670
667
  req.send_request(options)
671
668
  end
672
669
 
670
+ # Attaches your Amazon Elastic Block Store (Amazon EBS) volume to a node
671
+ # in your EKS-orchestrated HyperPod cluster.
672
+ #
673
+ # This API works with the Amazon Elastic Block Store (Amazon EBS)
674
+ # Container Storage Interface (CSI) driver to manage the lifecycle of
675
+ # persistent storage in your HyperPod EKS clusters.
676
+ #
677
+ # @option params [required, String] :cluster_arn
678
+ # The Amazon Resource Name (ARN) of your SageMaker HyperPod cluster
679
+ # containing the target node. Your cluster must use EKS as the
680
+ # orchestration and be in the `InService` state.
681
+ #
682
+ # @option params [required, String] :node_id
683
+ # The unique identifier of the cluster node to which you want to attach
684
+ # the volume. The node must belong to your specified HyperPod cluster
685
+ # and cannot be part of a Restricted Instance Group (RIG).
686
+ #
687
+ # @option params [required, String] :volume_id
688
+ # The unique identifier of your EBS volume to attach. The volume must be
689
+ # in the `available` state.
690
+ #
691
+ # @return [Types::AttachClusterNodeVolumeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
692
+ #
693
+ # * {Types::AttachClusterNodeVolumeResponse#cluster_arn #cluster_arn} => String
694
+ # * {Types::AttachClusterNodeVolumeResponse#node_id #node_id} => String
695
+ # * {Types::AttachClusterNodeVolumeResponse#volume_id #volume_id} => String
696
+ # * {Types::AttachClusterNodeVolumeResponse#attach_time #attach_time} => Time
697
+ # * {Types::AttachClusterNodeVolumeResponse#status #status} => String
698
+ # * {Types::AttachClusterNodeVolumeResponse#device_name #device_name} => String
699
+ #
700
+ # @example Request syntax with placeholder values
701
+ #
702
+ # resp = client.attach_cluster_node_volume({
703
+ # cluster_arn: "ClusterArn", # required
704
+ # node_id: "ClusterNodeId", # required
705
+ # volume_id: "VolumeId", # required
706
+ # })
707
+ #
708
+ # @example Response structure
709
+ #
710
+ # resp.cluster_arn #=> String
711
+ # resp.node_id #=> String
712
+ # resp.volume_id #=> String
713
+ # resp.attach_time #=> Time
714
+ # resp.status #=> String, one of "attaching", "attached", "detaching", "detached", "busy"
715
+ # resp.device_name #=> String
716
+ #
717
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AttachClusterNodeVolume AWS API Documentation
718
+ #
719
+ # @overload attach_cluster_node_volume(params = {})
720
+ # @param [Hash] params ({})
721
+ def attach_cluster_node_volume(params = {}, options = {})
722
+ req = build_request(:attach_cluster_node_volume, params)
723
+ req.send_request(options)
724
+ end
725
+
673
726
  # Deletes specific nodes within a SageMaker HyperPod cluster.
674
727
  # `BatchDeleteClusterNodes` accepts a cluster name and a list of node
675
728
  # IDs.
@@ -18420,6 +18473,61 @@ module Aws::SageMaker
18420
18473
  req.send_request(options)
18421
18474
  end
18422
18475
 
18476
+ # Detaches your Amazon Elastic Block Store (Amazon EBS) volume from a
18477
+ # node in your EKS-orchestrated SageMaker HyperPod cluster.
18478
+ #
18479
+ # This API works with the Amazon Elastic Block Store (Amazon EBS)
18480
+ # Container Storage Interface (CSI) driver to manage the lifecycle of
18481
+ # persistent storage in your HyperPod EKS clusters.
18482
+ #
18483
+ # @option params [required, String] :cluster_arn
18484
+ # The Amazon Resource Name (ARN) of your SageMaker HyperPod cluster
18485
+ # containing the target node. Your cluster must use EKS as the
18486
+ # orchestration and be in the `InService` state.
18487
+ #
18488
+ # @option params [required, String] :node_id
18489
+ # The unique identifier of the cluster node from which you want to
18490
+ # detach the volume.
18491
+ #
18492
+ # @option params [required, String] :volume_id
18493
+ # The unique identifier of your EBS volume that you want to detach. Your
18494
+ # volume must be currently attached to the specified node.
18495
+ #
18496
+ # @return [Types::DetachClusterNodeVolumeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
18497
+ #
18498
+ # * {Types::DetachClusterNodeVolumeResponse#cluster_arn #cluster_arn} => String
18499
+ # * {Types::DetachClusterNodeVolumeResponse#node_id #node_id} => String
18500
+ # * {Types::DetachClusterNodeVolumeResponse#volume_id #volume_id} => String
18501
+ # * {Types::DetachClusterNodeVolumeResponse#attach_time #attach_time} => Time
18502
+ # * {Types::DetachClusterNodeVolumeResponse#status #status} => String
18503
+ # * {Types::DetachClusterNodeVolumeResponse#device_name #device_name} => String
18504
+ #
18505
+ # @example Request syntax with placeholder values
18506
+ #
18507
+ # resp = client.detach_cluster_node_volume({
18508
+ # cluster_arn: "ClusterArn", # required
18509
+ # node_id: "ClusterNodeId", # required
18510
+ # volume_id: "VolumeId", # required
18511
+ # })
18512
+ #
18513
+ # @example Response structure
18514
+ #
18515
+ # resp.cluster_arn #=> String
18516
+ # resp.node_id #=> String
18517
+ # resp.volume_id #=> String
18518
+ # resp.attach_time #=> Time
18519
+ # resp.status #=> String, one of "attaching", "attached", "detaching", "detached", "busy"
18520
+ # resp.device_name #=> String
18521
+ #
18522
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DetachClusterNodeVolume AWS API Documentation
18523
+ #
18524
+ # @overload detach_cluster_node_volume(params = {})
18525
+ # @param [Hash] params ({})
18526
+ def detach_cluster_node_volume(params = {}, options = {})
18527
+ req = build_request(:detach_cluster_node_volume, params)
18528
+ req.send_request(options)
18529
+ end
18530
+
18423
18531
  # Disables using Service Catalog in SageMaker. Service Catalog is used
18424
18532
  # to create SageMaker projects.
18425
18533
  #
@@ -30206,8 +30314,14 @@ module Aws::SageMaker
30206
30314
  # outside the specified range are denied and get a `Not Found` error
30207
30315
  # message on the worker portal.
30208
30316
  #
30209
- # To restrict access to all the workers in public internet, add the
30210
- # `SourceIpConfig` CIDR value as "10.0.0.0/16".
30317
+ # To restrict public internet access for all workers, configure the
30318
+ # `SourceIpConfig` CIDR value. For example, when using `SourceIpConfig`
30319
+ # with an `IpAddressType` of `IPv4`, you can restrict access to the IPv4
30320
+ # CIDR block "10.0.0.0/16". When using an `IpAddressType` of
30321
+ # `dualstack`, you can specify both the IPv4 and IPv6 CIDR blocks, such
30322
+ # as "10.0.0.0/16" for IPv4 only, "2001:db8:1234:1a00::/56" for IPv6
30323
+ # only, or "10.0.0.0/16" and "2001:db8:1234:1a00::/56" for dual
30324
+ # stack.
30211
30325
  #
30212
30326
  # Amazon SageMaker does not support Source Ip restriction for worker
30213
30327
  # portals in VPC.
@@ -30465,7 +30579,7 @@ module Aws::SageMaker
30465
30579
  tracer: tracer
30466
30580
  )
30467
30581
  context[:gem_name] = 'aws-sdk-sagemaker'
30468
- context[:gem_version] = '1.317.0'
30582
+ context[:gem_version] = '1.318.0'
30469
30583
  Seahorse::Client::Request.new(handlers, context)
30470
30584
  end
30471
30585
 
@@ -109,6 +109,8 @@ module Aws::SageMaker
109
109
  AthenaResultCompressionType = Shapes::StringShape.new(name: 'AthenaResultCompressionType')
110
110
  AthenaResultFormat = Shapes::StringShape.new(name: 'AthenaResultFormat')
111
111
  AthenaWorkGroup = Shapes::StringShape.new(name: 'AthenaWorkGroup')
112
+ AttachClusterNodeVolumeRequest = Shapes::StructureShape.new(name: 'AttachClusterNodeVolumeRequest')
113
+ AttachClusterNodeVolumeResponse = Shapes::StructureShape.new(name: 'AttachClusterNodeVolumeResponse')
112
114
  AttributeName = Shapes::StringShape.new(name: 'AttributeName')
113
115
  AttributeNames = Shapes::ListShape.new(name: 'AttributeNames')
114
116
  AuthMode = Shapes::StringShape.new(name: 'AuthMode')
@@ -815,6 +817,8 @@ module Aws::SageMaker
815
817
  DesiredWeightAndCapacity = Shapes::StructureShape.new(name: 'DesiredWeightAndCapacity')
816
818
  DesiredWeightAndCapacityList = Shapes::ListShape.new(name: 'DesiredWeightAndCapacityList')
817
819
  DestinationS3Uri = Shapes::StringShape.new(name: 'DestinationS3Uri')
820
+ DetachClusterNodeVolumeRequest = Shapes::StructureShape.new(name: 'DetachClusterNodeVolumeRequest')
821
+ DetachClusterNodeVolumeResponse = Shapes::StructureShape.new(name: 'DetachClusterNodeVolumeResponse')
818
822
  DetailedAlgorithmStatus = Shapes::StringShape.new(name: 'DetailedAlgorithmStatus')
819
823
  DetailedModelPackageStatus = Shapes::StringShape.new(name: 'DetailedModelPackageStatus')
820
824
  Device = Shapes::StructureShape.new(name: 'Device')
@@ -2577,6 +2581,9 @@ module Aws::SageMaker
2577
2581
  VisibilityConditionsKey = Shapes::StringShape.new(name: 'VisibilityConditionsKey')
2578
2582
  VisibilityConditionsList = Shapes::ListShape.new(name: 'VisibilityConditionsList')
2579
2583
  VisibilityConditionsValue = Shapes::StringShape.new(name: 'VisibilityConditionsValue')
2584
+ VolumeAttachmentStatus = Shapes::StringShape.new(name: 'VolumeAttachmentStatus')
2585
+ VolumeDeviceName = Shapes::StringShape.new(name: 'VolumeDeviceName')
2586
+ VolumeId = Shapes::StringShape.new(name: 'VolumeId')
2580
2587
  VolumeSizeInGB = Shapes::IntegerShape.new(name: 'VolumeSizeInGB')
2581
2588
  VpcConfig = Shapes::StructureShape.new(name: 'VpcConfig')
2582
2589
  VpcId = Shapes::StringShape.new(name: 'VpcId')
@@ -2839,6 +2846,19 @@ module Aws::SageMaker
2839
2846
  AthenaDatasetDefinition.add_member(:output_compression, Shapes::ShapeRef.new(shape: AthenaResultCompressionType, location_name: "OutputCompression"))
2840
2847
  AthenaDatasetDefinition.struct_class = Types::AthenaDatasetDefinition
2841
2848
 
2849
+ AttachClusterNodeVolumeRequest.add_member(:cluster_arn, Shapes::ShapeRef.new(shape: ClusterArn, required: true, location_name: "ClusterArn"))
2850
+ AttachClusterNodeVolumeRequest.add_member(:node_id, Shapes::ShapeRef.new(shape: ClusterNodeId, required: true, location_name: "NodeId"))
2851
+ AttachClusterNodeVolumeRequest.add_member(:volume_id, Shapes::ShapeRef.new(shape: VolumeId, required: true, location_name: "VolumeId"))
2852
+ AttachClusterNodeVolumeRequest.struct_class = Types::AttachClusterNodeVolumeRequest
2853
+
2854
+ AttachClusterNodeVolumeResponse.add_member(:cluster_arn, Shapes::ShapeRef.new(shape: ClusterArn, required: true, location_name: "ClusterArn"))
2855
+ AttachClusterNodeVolumeResponse.add_member(:node_id, Shapes::ShapeRef.new(shape: ClusterNodeId, required: true, location_name: "NodeId"))
2856
+ AttachClusterNodeVolumeResponse.add_member(:volume_id, Shapes::ShapeRef.new(shape: VolumeId, required: true, location_name: "VolumeId"))
2857
+ AttachClusterNodeVolumeResponse.add_member(:attach_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "AttachTime"))
2858
+ AttachClusterNodeVolumeResponse.add_member(:status, Shapes::ShapeRef.new(shape: VolumeAttachmentStatus, required: true, location_name: "Status"))
2859
+ AttachClusterNodeVolumeResponse.add_member(:device_name, Shapes::ShapeRef.new(shape: VolumeDeviceName, required: true, location_name: "DeviceName"))
2860
+ AttachClusterNodeVolumeResponse.struct_class = Types::AttachClusterNodeVolumeResponse
2861
+
2842
2862
  AttributeNames.member = Shapes::ShapeRef.new(shape: AttributeName)
2843
2863
 
2844
2864
  AuthenticationRequestExtraParams.key = Shapes::ShapeRef.new(shape: AuthenticationRequestExtraParamsKey)
@@ -6062,6 +6082,19 @@ module Aws::SageMaker
6062
6082
 
6063
6083
  DesiredWeightAndCapacityList.member = Shapes::ShapeRef.new(shape: DesiredWeightAndCapacity)
6064
6084
 
6085
+ DetachClusterNodeVolumeRequest.add_member(:cluster_arn, Shapes::ShapeRef.new(shape: ClusterArn, required: true, location_name: "ClusterArn"))
6086
+ DetachClusterNodeVolumeRequest.add_member(:node_id, Shapes::ShapeRef.new(shape: ClusterNodeId, required: true, location_name: "NodeId"))
6087
+ DetachClusterNodeVolumeRequest.add_member(:volume_id, Shapes::ShapeRef.new(shape: VolumeId, required: true, location_name: "VolumeId"))
6088
+ DetachClusterNodeVolumeRequest.struct_class = Types::DetachClusterNodeVolumeRequest
6089
+
6090
+ DetachClusterNodeVolumeResponse.add_member(:cluster_arn, Shapes::ShapeRef.new(shape: ClusterArn, required: true, location_name: "ClusterArn"))
6091
+ DetachClusterNodeVolumeResponse.add_member(:node_id, Shapes::ShapeRef.new(shape: ClusterNodeId, required: true, location_name: "NodeId"))
6092
+ DetachClusterNodeVolumeResponse.add_member(:volume_id, Shapes::ShapeRef.new(shape: VolumeId, required: true, location_name: "VolumeId"))
6093
+ DetachClusterNodeVolumeResponse.add_member(:attach_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "AttachTime"))
6094
+ DetachClusterNodeVolumeResponse.add_member(:status, Shapes::ShapeRef.new(shape: VolumeAttachmentStatus, required: true, location_name: "Status"))
6095
+ DetachClusterNodeVolumeResponse.add_member(:device_name, Shapes::ShapeRef.new(shape: VolumeDeviceName, required: true, location_name: "DeviceName"))
6096
+ DetachClusterNodeVolumeResponse.struct_class = Types::DetachClusterNodeVolumeResponse
6097
+
6065
6098
  Device.add_member(:device_name, Shapes::ShapeRef.new(shape: DeviceName, required: true, location_name: "DeviceName"))
6066
6099
  Device.add_member(:description, Shapes::ShapeRef.new(shape: DeviceDescription, location_name: "Description"))
6067
6100
  Device.add_member(:iot_thing_name, Shapes::ShapeRef.new(shape: ThingName, location_name: "IotThingName"))
@@ -11537,6 +11570,15 @@ module Aws::SageMaker
11537
11570
  o.errors << Shapes::ShapeRef.new(shape: ResourceLimitExceeded)
11538
11571
  end)
11539
11572
 
11573
+ api.add_operation(:attach_cluster_node_volume, Seahorse::Model::Operation.new.tap do |o|
11574
+ o.name = "AttachClusterNodeVolume"
11575
+ o.http_method = "POST"
11576
+ o.http_request_uri = "/"
11577
+ o.input = Shapes::ShapeRef.new(shape: AttachClusterNodeVolumeRequest)
11578
+ o.output = Shapes::ShapeRef.new(shape: AttachClusterNodeVolumeResponse)
11579
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFound)
11580
+ end)
11581
+
11540
11582
  api.add_operation(:batch_delete_cluster_nodes, Seahorse::Model::Operation.new.tap do |o|
11541
11583
  o.name = "BatchDeleteClusterNodes"
11542
11584
  o.http_method = "POST"
@@ -13293,6 +13335,15 @@ module Aws::SageMaker
13293
13335
  o.output = Shapes::ShapeRef.new(shape: DescribeWorkteamResponse)
13294
13336
  end)
13295
13337
 
13338
+ api.add_operation(:detach_cluster_node_volume, Seahorse::Model::Operation.new.tap do |o|
13339
+ o.name = "DetachClusterNodeVolume"
13340
+ o.http_method = "POST"
13341
+ o.http_request_uri = "/"
13342
+ o.input = Shapes::ShapeRef.new(shape: DetachClusterNodeVolumeRequest)
13343
+ o.output = Shapes::ShapeRef.new(shape: DetachClusterNodeVolumeResponse)
13344
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFound)
13345
+ end)
13346
+
13296
13347
  api.add_operation(:disable_sagemaker_servicecatalog_portfolio, Seahorse::Model::Operation.new.tap do |o|
13297
13348
  o.name = "DisableSagemakerServicecatalogPortfolio"
13298
13349
  o.http_method = "POST"
@@ -1825,6 +1825,74 @@ module Aws::SageMaker
1825
1825
  include Aws::Structure
1826
1826
  end
1827
1827
 
1828
+ # @!attribute [rw] cluster_arn
1829
+ # The Amazon Resource Name (ARN) of your SageMaker HyperPod cluster
1830
+ # containing the target node. Your cluster must use EKS as the
1831
+ # orchestration and be in the `InService` state.
1832
+ # @return [String]
1833
+ #
1834
+ # @!attribute [rw] node_id
1835
+ # The unique identifier of the cluster node to which you want to
1836
+ # attach the volume. The node must belong to your specified HyperPod
1837
+ # cluster and cannot be part of a Restricted Instance Group (RIG).
1838
+ # @return [String]
1839
+ #
1840
+ # @!attribute [rw] volume_id
1841
+ # The unique identifier of your EBS volume to attach. The volume must
1842
+ # be in the `available` state.
1843
+ # @return [String]
1844
+ #
1845
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AttachClusterNodeVolumeRequest AWS API Documentation
1846
+ #
1847
+ class AttachClusterNodeVolumeRequest < Struct.new(
1848
+ :cluster_arn,
1849
+ :node_id,
1850
+ :volume_id)
1851
+ SENSITIVE = []
1852
+ include Aws::Structure
1853
+ end
1854
+
1855
+ # @!attribute [rw] cluster_arn
1856
+ # The Amazon Resource Name (ARN) of your SageMaker HyperPod cluster
1857
+ # where the volume attachment operation was performed.
1858
+ # @return [String]
1859
+ #
1860
+ # @!attribute [rw] node_id
1861
+ # The unique identifier of the cluster node where your volume was
1862
+ # attached.
1863
+ # @return [String]
1864
+ #
1865
+ # @!attribute [rw] volume_id
1866
+ # The unique identifier of your EBS volume that was attached.
1867
+ # @return [String]
1868
+ #
1869
+ # @!attribute [rw] attach_time
1870
+ # The timestamp when the volume attachment operation was initiated by
1871
+ # the SageMaker HyperPod service.
1872
+ # @return [Time]
1873
+ #
1874
+ # @!attribute [rw] status
1875
+ # The current status of your volume attachment operation.
1876
+ # @return [String]
1877
+ #
1878
+ # @!attribute [rw] device_name
1879
+ # The device name assigned to your attached volume on the target
1880
+ # instance.
1881
+ # @return [String]
1882
+ #
1883
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AttachClusterNodeVolumeResponse AWS API Documentation
1884
+ #
1885
+ class AttachClusterNodeVolumeResponse < Struct.new(
1886
+ :cluster_arn,
1887
+ :node_id,
1888
+ :volume_id,
1889
+ :attach_time,
1890
+ :status,
1891
+ :device_name)
1892
+ SENSITIVE = []
1893
+ include Aws::Structure
1894
+ end
1895
+
1828
1896
  # Contains a presigned URL and its associated local file path for
1829
1897
  # downloading hub content artifacts.
1830
1898
  #
@@ -20389,6 +20457,73 @@ module Aws::SageMaker
20389
20457
  include Aws::Structure
20390
20458
  end
20391
20459
 
20460
+ # @!attribute [rw] cluster_arn
20461
+ # The Amazon Resource Name (ARN) of your SageMaker HyperPod cluster
20462
+ # containing the target node. Your cluster must use EKS as the
20463
+ # orchestration and be in the `InService` state.
20464
+ # @return [String]
20465
+ #
20466
+ # @!attribute [rw] node_id
20467
+ # The unique identifier of the cluster node from which you want to
20468
+ # detach the volume.
20469
+ # @return [String]
20470
+ #
20471
+ # @!attribute [rw] volume_id
20472
+ # The unique identifier of your EBS volume that you want to detach.
20473
+ # Your volume must be currently attached to the specified node.
20474
+ # @return [String]
20475
+ #
20476
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DetachClusterNodeVolumeRequest AWS API Documentation
20477
+ #
20478
+ class DetachClusterNodeVolumeRequest < Struct.new(
20479
+ :cluster_arn,
20480
+ :node_id,
20481
+ :volume_id)
20482
+ SENSITIVE = []
20483
+ include Aws::Structure
20484
+ end
20485
+
20486
+ # @!attribute [rw] cluster_arn
20487
+ # The Amazon Resource Name (ARN) of your SageMaker HyperPod cluster
20488
+ # where the volume detachment operation was performed.
20489
+ # @return [String]
20490
+ #
20491
+ # @!attribute [rw] node_id
20492
+ # The unique identifier of the cluster node from which your volume was
20493
+ # detached.
20494
+ # @return [String]
20495
+ #
20496
+ # @!attribute [rw] volume_id
20497
+ # The unique identifier of your EBS volume that was detached.
20498
+ # @return [String]
20499
+ #
20500
+ # @!attribute [rw] attach_time
20501
+ # The original timestamp when your volume was initially attached to
20502
+ # the node.
20503
+ # @return [Time]
20504
+ #
20505
+ # @!attribute [rw] status
20506
+ # The current status of your volume detachment operation.
20507
+ # @return [String]
20508
+ #
20509
+ # @!attribute [rw] device_name
20510
+ # The device name assigned to your attached volume on the target
20511
+ # instance.
20512
+ # @return [String]
20513
+ #
20514
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DetachClusterNodeVolumeResponse AWS API Documentation
20515
+ #
20516
+ class DetachClusterNodeVolumeResponse < Struct.new(
20517
+ :cluster_arn,
20518
+ :node_id,
20519
+ :volume_id,
20520
+ :attach_time,
20521
+ :status,
20522
+ :device_name)
20523
+ SENSITIVE = []
20524
+ include Aws::Structure
20525
+ end
20526
+
20392
20527
  # Information of a particular device.
20393
20528
  #
20394
20529
  # @!attribute [rw] device_name
@@ -48995,8 +49130,9 @@ module Aws::SageMaker
48995
49130
  # @return [String]
48996
49131
  #
48997
49132
  # @!attribute [rw] single_sign_on_application_arn
48998
- # The ARN of the application managed by SageMaker AI and SageMaker
48999
- # Unified Studio in the Amazon Web Services IAM Identity Center.
49133
+ # The ARN of the Amazon DataZone application managed by Amazon
49134
+ # SageMaker Unified Studio in the Amazon Web Services IAM Identity
49135
+ # Center.
49000
49136
  # @return [String]
49001
49137
  #
49002
49138
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UnifiedStudioSettings AWS API Documentation
@@ -55,7 +55,7 @@ module Aws::SageMaker
55
55
  autoload :EndpointProvider, 'aws-sdk-sagemaker/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-sagemaker/endpoints'
57
57
 
58
- GEM_VERSION = '1.317.0'
58
+ GEM_VERSION = '1.318.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -120,6 +120,23 @@ module Aws
120
120
  ) -> _AssociateTrialComponentResponseSuccess
121
121
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _AssociateTrialComponentResponseSuccess
122
122
 
123
+ interface _AttachClusterNodeVolumeResponseSuccess
124
+ include ::Seahorse::Client::_ResponseSuccess[Types::AttachClusterNodeVolumeResponse]
125
+ def cluster_arn: () -> ::String
126
+ def node_id: () -> ::String
127
+ def volume_id: () -> ::String
128
+ def attach_time: () -> ::Time
129
+ def status: () -> ("attaching" | "attached" | "detaching" | "detached" | "busy")
130
+ def device_name: () -> ::String
131
+ end
132
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SageMaker/Client.html#attach_cluster_node_volume-instance_method
133
+ def attach_cluster_node_volume: (
134
+ cluster_arn: ::String,
135
+ node_id: ::String,
136
+ volume_id: ::String
137
+ ) -> _AttachClusterNodeVolumeResponseSuccess
138
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _AttachClusterNodeVolumeResponseSuccess
139
+
123
140
  interface _BatchDeleteClusterNodesResponseSuccess
124
141
  include ::Seahorse::Client::_ResponseSuccess[Types::BatchDeleteClusterNodesResponse]
125
142
  def failed: () -> ::Array[Types::BatchDeleteClusterNodesError]
@@ -6631,6 +6648,23 @@ module Aws
6631
6648
  ) -> _DescribeWorkteamResponseSuccess
6632
6649
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeWorkteamResponseSuccess
6633
6650
 
6651
+ interface _DetachClusterNodeVolumeResponseSuccess
6652
+ include ::Seahorse::Client::_ResponseSuccess[Types::DetachClusterNodeVolumeResponse]
6653
+ def cluster_arn: () -> ::String
6654
+ def node_id: () -> ::String
6655
+ def volume_id: () -> ::String
6656
+ def attach_time: () -> ::Time
6657
+ def status: () -> ("attaching" | "attached" | "detaching" | "detached" | "busy")
6658
+ def device_name: () -> ::String
6659
+ end
6660
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SageMaker/Client.html#detach_cluster_node_volume-instance_method
6661
+ def detach_cluster_node_volume: (
6662
+ cluster_arn: ::String,
6663
+ node_id: ::String,
6664
+ volume_id: ::String
6665
+ ) -> _DetachClusterNodeVolumeResponseSuccess
6666
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DetachClusterNodeVolumeResponseSuccess
6667
+
6634
6668
  interface _DisableSagemakerServicecatalogPortfolioResponseSuccess
6635
6669
  include ::Seahorse::Client::_ResponseSuccess[Types::DisableSagemakerServicecatalogPortfolioOutput]
6636
6670
  end
data/sig/types.rbs CHANGED
@@ -269,6 +269,23 @@ module Aws::SageMaker
269
269
  SENSITIVE: []
270
270
  end
271
271
 
272
+ class AttachClusterNodeVolumeRequest
273
+ attr_accessor cluster_arn: ::String
274
+ attr_accessor node_id: ::String
275
+ attr_accessor volume_id: ::String
276
+ SENSITIVE: []
277
+ end
278
+
279
+ class AttachClusterNodeVolumeResponse
280
+ attr_accessor cluster_arn: ::String
281
+ attr_accessor node_id: ::String
282
+ attr_accessor volume_id: ::String
283
+ attr_accessor attach_time: ::Time
284
+ attr_accessor status: ("attaching" | "attached" | "detaching" | "detached" | "busy")
285
+ attr_accessor device_name: ::String
286
+ SENSITIVE: []
287
+ end
288
+
272
289
  class AuthorizedUrl
273
290
  attr_accessor url: ::String
274
291
  attr_accessor local_path: ::String
@@ -4311,6 +4328,23 @@ module Aws::SageMaker
4311
4328
  SENSITIVE: []
4312
4329
  end
4313
4330
 
4331
+ class DetachClusterNodeVolumeRequest
4332
+ attr_accessor cluster_arn: ::String
4333
+ attr_accessor node_id: ::String
4334
+ attr_accessor volume_id: ::String
4335
+ SENSITIVE: []
4336
+ end
4337
+
4338
+ class DetachClusterNodeVolumeResponse
4339
+ attr_accessor cluster_arn: ::String
4340
+ attr_accessor node_id: ::String
4341
+ attr_accessor volume_id: ::String
4342
+ attr_accessor attach_time: ::Time
4343
+ attr_accessor status: ("attaching" | "attached" | "detaching" | "detached" | "busy")
4344
+ attr_accessor device_name: ::String
4345
+ SENSITIVE: []
4346
+ end
4347
+
4314
4348
  class Device
4315
4349
  attr_accessor device_name: ::String
4316
4350
  attr_accessor description: ::String
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-sagemaker
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.317.0
4
+ version: 1.318.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services