Skip to content

Commit 9b08f9a

Browse files
Add support for SageMaker Hyperpod continuous scaling and custom AMI; Introduce new APIs: ListClusterEvents, DescribeClusterEvent, BatchAddClusterNodes
1 parent 4796b88 commit 9b08f9a

File tree

78 files changed

+7942
-15
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

78 files changed

+7942
-15
lines changed

generator/ServiceModels/sagemaker/sagemaker-2017-07-24.api.json

Lines changed: 407 additions & 11 deletions
Large diffs are not rendered by default.

generator/ServiceModels/sagemaker/sagemaker-2017-07-24.docs.json

Lines changed: 308 additions & 3 deletions
Large diffs are not rendered by default.

generator/ServiceModels/sagemaker/sagemaker-2017-07-24.normal.json

Lines changed: 682 additions & 1 deletion
Large diffs are not rendered by default.

generator/ServiceModels/sagemaker/sagemaker-2017-07-24.paginators.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,12 @@
6060
"limit_key": "MaxResults",
6161
"result_key": "Candidates"
6262
},
63+
"ListClusterEvents": {
64+
"input_token": "NextToken",
65+
"output_token": "NextToken",
66+
"limit_key": "MaxResults",
67+
"result_key": "Events"
68+
},
6369
"ListClusterNodes": {
6470
"input_token": "NextToken",
6571
"output_token": "NextToken",

sdk/code-analysis/ServiceAnalysis/SageMaker/Generated/PropertyValueRules.xml

Lines changed: 203 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,18 @@
9696
<max>256</max>
9797
<pattern>vol-[a-f0-9]{8}(?:[a-f0-9]{9})?</pattern>
9898
</property-value-rule>
99+
<property-value-rule>
100+
<property>Amazon.SageMaker.Model.BatchAddClusterNodesRequest.ClientToken</property>
101+
<min>0</min>
102+
<max>64</max>
103+
<pattern>[\x21-\x7E]+</pattern>
104+
</property-value-rule>
105+
<property-value-rule>
106+
<property>Amazon.SageMaker.Model.BatchAddClusterNodesRequest.ClusterName</property>
107+
<min>0</min>
108+
<max>256</max>
109+
<pattern>(arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:cluster/[a-z0-9]{12})|([a-zA-Z0-9](-*[a-zA-Z0-9]){0,62})</pattern>
110+
</property-value-rule>
99111
<property-value-rule>
100112
<property>Amazon.SageMaker.Model.BatchDeleteClusterNodesRequest.ClusterName</property>
101113
<min>0</min>
@@ -2372,6 +2384,16 @@
23722384
<max>63</max>
23732385
<pattern>[a-zA-Z0-9](-*[a-zA-Z0-9])*</pattern>
23742386
</property-value-rule>
2387+
<property-value-rule>
2388+
<property>Amazon.SageMaker.Model.DescribeClusterEventRequest.ClusterName</property>
2389+
<min>0</min>
2390+
<max>256</max>
2391+
<pattern>(arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:cluster/[a-z0-9]{12})|([a-zA-Z0-9](-*[a-zA-Z0-9]){0,62})</pattern>
2392+
</property-value-rule>
2393+
<property-value-rule>
2394+
<property>Amazon.SageMaker.Model.DescribeClusterEventRequest.EventId</property>
2395+
<pattern>[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}</pattern>
2396+
</property-value-rule>
23752397
<property-value-rule>
23762398
<property>Amazon.SageMaker.Model.DescribeClusterNodeRequest.ClusterName</property>
23772399
<min>0</min>
@@ -2384,6 +2406,12 @@
23842406
<max>256</max>
23852407
<pattern>i-[a-f0-9]{8}(?:[a-f0-9]{9})?</pattern>
23862408
</property-value-rule>
2409+
<property-value-rule>
2410+
<property>Amazon.SageMaker.Model.DescribeClusterNodeRequest.NodeLogicalId</property>
2411+
<min>1</min>
2412+
<max>128</max>
2413+
<pattern>[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9]</pattern>
2414+
</property-value-rule>
23872415
<property-value-rule>
23882416
<property>Amazon.SageMaker.Model.DescribeClusterSchedulerConfigRequest.ClusterSchedulerConfigId</property>
23892417
<min>0</min>
@@ -4983,6 +5011,41 @@
49835011
<max>8192</max>
49845012
<pattern>.*</pattern>
49855013
</property-value-rule>
5014+
<property-value-rule>
5015+
<property>Amazon.SageMaker.Model.ListClusterEventsRequest.ClusterName</property>
5016+
<min>0</min>
5017+
<max>256</max>
5018+
<pattern>(arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:cluster/[a-z0-9]{12})|([a-zA-Z0-9](-*[a-zA-Z0-9]){0,62})</pattern>
5019+
</property-value-rule>
5020+
<property-value-rule>
5021+
<property>Amazon.SageMaker.Model.ListClusterEventsRequest.InstanceGroupName</property>
5022+
<min>1</min>
5023+
<max>63</max>
5024+
<pattern>[a-zA-Z0-9](-*[a-zA-Z0-9])*</pattern>
5025+
</property-value-rule>
5026+
<property-value-rule>
5027+
<property>Amazon.SageMaker.Model.ListClusterEventsRequest.MaxResults</property>
5028+
<min>1</min>
5029+
<max>100</max>
5030+
</property-value-rule>
5031+
<property-value-rule>
5032+
<property>Amazon.SageMaker.Model.ListClusterEventsRequest.NextToken</property>
5033+
<min>0</min>
5034+
<max>8192</max>
5035+
<pattern>.*</pattern>
5036+
</property-value-rule>
5037+
<property-value-rule>
5038+
<property>Amazon.SageMaker.Model.ListClusterEventsRequest.NodeId</property>
5039+
<min>1</min>
5040+
<max>256</max>
5041+
<pattern>i-[a-f0-9]{8}(?:[a-f0-9]{9})?</pattern>
5042+
</property-value-rule>
5043+
<property-value-rule>
5044+
<property>Amazon.SageMaker.Model.ListClusterEventsResponse.NextToken</property>
5045+
<min>0</min>
5046+
<max>8192</max>
5047+
<pattern>.*</pattern>
5048+
</property-value-rule>
49865049
<property-value-rule>
49875050
<property>Amazon.SageMaker.Model.ListClusterNodesRequest.ClusterName</property>
49885051
<min>0</min>
@@ -7289,6 +7352,12 @@
72897352
<max>256</max>
72907353
<pattern>(arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:cluster/[a-z0-9]{12})|([a-zA-Z0-9](-*[a-zA-Z0-9]){0,62})</pattern>
72917354
</property-value-rule>
7355+
<property-value-rule>
7356+
<property>Amazon.SageMaker.Model.UpdateClusterSoftwareRequest.ImageId</property>
7357+
<min>7</min>
7358+
<max>21</max>
7359+
<pattern>ami-[0-9a-fA-F]{8,17}|default</pattern>
7360+
</property-value-rule>
72927361
<property-value-rule>
72937362
<property>Amazon.SageMaker.Model.UpdateClusterSoftwareResponse.ClusterArn</property>
72947363
<min>0</min>
@@ -8098,6 +8167,17 @@
80988167
<min>0</min>
80998168
<max>64</max>
81008169
</property-value-rule>
8170+
<property-value-rule>
8171+
<property>Amazon.SageMaker.Model.AddClusterNodeSpecification.IncrementTargetCountBy</property>
8172+
<min>1</min>
8173+
<max>50</max>
8174+
</property-value-rule>
8175+
<property-value-rule>
8176+
<property>Amazon.SageMaker.Model.AddClusterNodeSpecification.InstanceGroupName</property>
8177+
<min>1</min>
8178+
<max>63</max>
8179+
<pattern>[a-zA-Z0-9](-*[a-zA-Z0-9])*</pattern>
8180+
</property-value-rule>
81018181
<property-value-rule>
81028182
<property>Amazon.SageMaker.Model.AdditionalInferenceSpecificationDefinition.Description</property>
81038183
<min>0</min>
@@ -8534,6 +8614,16 @@
85348614
<max>256</max>
85358615
<pattern>.*</pattern>
85368616
</property-value-rule>
8617+
<property-value-rule>
8618+
<property>Amazon.SageMaker.Model.BatchAddClusterNodesError.FailedCount</property>
8619+
<min>1</min>
8620+
</property-value-rule>
8621+
<property-value-rule>
8622+
<property>Amazon.SageMaker.Model.BatchAddClusterNodesError.InstanceGroupName</property>
8623+
<min>1</min>
8624+
<max>64</max>
8625+
<pattern>.+</pattern>
8626+
</property-value-rule>
85378627
<property-value-rule>
85388628
<property>Amazon.SageMaker.Model.BatchDataCaptureConfig.DestinationS3Uri</property>
85398629
<min>0</min>
@@ -8546,6 +8636,12 @@
85468636
<max>2048</max>
85478637
<pattern>[a-zA-Z0-9:/_-]*</pattern>
85488638
</property-value-rule>
8639+
<property-value-rule>
8640+
<property>Amazon.SageMaker.Model.BatchDeleteClusterNodeLogicalIdsError.NodeLogicalId</property>
8641+
<min>1</min>
8642+
<max>128</max>
8643+
<pattern>[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9]</pattern>
8644+
</property-value-rule>
85498645
<property-value-rule>
85508646
<property>Amazon.SageMaker.Model.BatchDeleteClusterNodesError.NodeId</property>
85518647
<min>1</min>
@@ -8907,10 +9003,66 @@
89079003
<min>1</min>
89089004
<max>16384</max>
89099005
</property-value-rule>
9006+
<property-value-rule>
9007+
<property>Amazon.SageMaker.Model.ClusterEventDetail.ClusterArn</property>
9008+
<min>0</min>
9009+
<max>256</max>
9010+
<pattern>arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:cluster/[a-z0-9]{12}</pattern>
9011+
</property-value-rule>
9012+
<property-value-rule>
9013+
<property>Amazon.SageMaker.Model.ClusterEventDetail.ClusterName</property>
9014+
<min>1</min>
9015+
<max>63</max>
9016+
<pattern>[a-zA-Z0-9](-*[a-zA-Z0-9])*</pattern>
9017+
</property-value-rule>
9018+
<property-value-rule>
9019+
<property>Amazon.SageMaker.Model.ClusterEventDetail.EventId</property>
9020+
<pattern>[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}</pattern>
9021+
</property-value-rule>
9022+
<property-value-rule>
9023+
<property>Amazon.SageMaker.Model.ClusterEventDetail.InstanceGroupName</property>
9024+
<min>1</min>
9025+
<max>63</max>
9026+
<pattern>[a-zA-Z0-9](-*[a-zA-Z0-9])*</pattern>
9027+
</property-value-rule>
9028+
<property-value-rule>
9029+
<property>Amazon.SageMaker.Model.ClusterEventSummary.ClusterArn</property>
9030+
<min>0</min>
9031+
<max>256</max>
9032+
<pattern>arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:cluster/[a-z0-9]{12}</pattern>
9033+
</property-value-rule>
9034+
<property-value-rule>
9035+
<property>Amazon.SageMaker.Model.ClusterEventSummary.ClusterName</property>
9036+
<min>1</min>
9037+
<max>63</max>
9038+
<pattern>[a-zA-Z0-9](-*[a-zA-Z0-9])*</pattern>
9039+
</property-value-rule>
9040+
<property-value-rule>
9041+
<property>Amazon.SageMaker.Model.ClusterEventSummary.EventId</property>
9042+
<pattern>[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}</pattern>
9043+
</property-value-rule>
9044+
<property-value-rule>
9045+
<property>Amazon.SageMaker.Model.ClusterEventSummary.InstanceGroupName</property>
9046+
<min>1</min>
9047+
<max>63</max>
9048+
<pattern>[a-zA-Z0-9](-*[a-zA-Z0-9])*</pattern>
9049+
</property-value-rule>
89109050
<property-value-rule>
89119051
<property>Amazon.SageMaker.Model.ClusterInstanceGroupDetails.CurrentCount</property>
89129052
<min>0</min>
89139053
</property-value-rule>
9054+
<property-value-rule>
9055+
<property>Amazon.SageMaker.Model.ClusterInstanceGroupDetails.CurrentImageId</property>
9056+
<min>7</min>
9057+
<max>21</max>
9058+
<pattern>ami-[0-9a-fA-F]{8,17}|default</pattern>
9059+
</property-value-rule>
9060+
<property-value-rule>
9061+
<property>Amazon.SageMaker.Model.ClusterInstanceGroupDetails.DesiredImageId</property>
9062+
<min>7</min>
9063+
<max>21</max>
9064+
<pattern>ami-[0-9a-fA-F]{8,17}|default</pattern>
9065+
</property-value-rule>
89149066
<property-value-rule>
89159067
<property>Amazon.SageMaker.Model.ClusterInstanceGroupDetails.ExecutionRole</property>
89169068
<min>20</min>
@@ -8950,6 +9102,12 @@
89509102
<max>2048</max>
89519103
<pattern>arn:aws[a-z\-]*:iam::\d{12}:role/?[a-zA-Z_0-9+=,.@\-_/]+</pattern>
89529104
</property-value-rule>
9105+
<property-value-rule>
9106+
<property>Amazon.SageMaker.Model.ClusterInstanceGroupSpecification.ImageId</property>
9107+
<min>7</min>
9108+
<max>21</max>
9109+
<pattern>ami-[0-9a-fA-F]{8,17}|default</pattern>
9110+
</property-value-rule>
89539111
<property-value-rule>
89549112
<property>Amazon.SageMaker.Model.ClusterInstanceGroupSpecification.InstanceCount</property>
89559113
<min>0</min>
@@ -8992,12 +9150,30 @@
89929150
<max>1024</max>
89939151
<pattern>(https|s3)://([^/]+)/?(.*)</pattern>
89949152
</property-value-rule>
9153+
<property-value-rule>
9154+
<property>Amazon.SageMaker.Model.ClusterNodeDetails.CurrentImageId</property>
9155+
<min>7</min>
9156+
<max>21</max>
9157+
<pattern>ami-[0-9a-fA-F]{8,17}|default</pattern>
9158+
</property-value-rule>
9159+
<property-value-rule>
9160+
<property>Amazon.SageMaker.Model.ClusterNodeDetails.DesiredImageId</property>
9161+
<min>7</min>
9162+
<max>21</max>
9163+
<pattern>ami-[0-9a-fA-F]{8,17}|default</pattern>
9164+
</property-value-rule>
89959165
<property-value-rule>
89969166
<property>Amazon.SageMaker.Model.ClusterNodeDetails.InstanceGroupName</property>
89979167
<min>1</min>
89989168
<max>63</max>
89999169
<pattern>[a-zA-Z0-9](-*[a-zA-Z0-9])*</pattern>
90009170
</property-value-rule>
9171+
<property-value-rule>
9172+
<property>Amazon.SageMaker.Model.ClusterNodeDetails.NodeLogicalId</property>
9173+
<min>1</min>
9174+
<max>128</max>
9175+
<pattern>[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9]</pattern>
9176+
</property-value-rule>
90019177
<property-value-rule>
90029178
<property>Amazon.SageMaker.Model.ClusterNodeDetails.PrivateDnsHostname</property>
90039179
<pattern>ip-((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)-?\b){4}\..*</pattern>
@@ -11005,6 +11181,21 @@
1100511181
<max>64</max>
1100611182
<pattern>.+</pattern>
1100711183
</property-value-rule>
11184+
<property-value-rule>
11185+
<property>Amazon.SageMaker.Model.InstanceGroupScalingMetadata.InstanceCount</property>
11186+
<min>0</min>
11187+
<max>10000000</max>
11188+
</property-value-rule>
11189+
<property-value-rule>
11190+
<property>Amazon.SageMaker.Model.InstanceGroupScalingMetadata.TargetCount</property>
11191+
<min>0</min>
11192+
</property-value-rule>
11193+
<property-value-rule>
11194+
<property>Amazon.SageMaker.Model.InstanceMetadata.NodeLogicalId</property>
11195+
<min>1</min>
11196+
<max>128</max>
11197+
<pattern>[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9]</pattern>
11198+
</property-value-rule>
1100811199
<property-value-rule>
1100911200
<property>Amazon.SageMaker.Model.InstanceMetadataServiceConfiguration.MinimumInstanceMetadataServiceVersion</property>
1101011201
<min>0</min>
@@ -12040,6 +12231,18 @@
1204012231
<max>255</max>
1204112232
<pattern>.+</pattern>
1204212233
</property-value-rule>
12234+
<property-value-rule>
12235+
<property>Amazon.SageMaker.Model.NodeAdditionResult.InstanceGroupName</property>
12236+
<min>1</min>
12237+
<max>63</max>
12238+
<pattern>[a-zA-Z0-9](-*[a-zA-Z0-9])*</pattern>
12239+
</property-value-rule>
12240+
<property-value-rule>
12241+
<property>Amazon.SageMaker.Model.NodeAdditionResult.NodeLogicalId</property>
12242+
<min>1</min>
12243+
<max>128</max>
12244+
<pattern>[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9]</pattern>
12245+
</property-value-rule>
1204312246
<property-value-rule>
1204412247
<property>Amazon.SageMaker.Model.NotebookInstanceLifecycleConfigSummary.NotebookInstanceLifecycleConfigArn</property>
1204512248
<min>0</min>
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
/*
2+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License").
5+
* You may not use this file except in compliance with the License.
6+
* A copy of the License is located at
7+
*
8+
* http://aws.amazon.com/apache2.0
9+
*
10+
* or in the "license" file accompanying this file. This file is distributed
11+
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12+
* express or implied. See the License for the specific language governing
13+
* permissions and limitations under the License.
14+
*/
15+
16+
/*
17+
* Do not modify this file. This file is generated from the sagemaker-2017-07-24.normal.json service model.
18+
*/
19+
using System;
20+
using System.Collections.Generic;
21+
using System.Xml.Serialization;
22+
using System.Text;
23+
using System.IO;
24+
using System.Net;
25+
26+
using Amazon.Runtime;
27+
using Amazon.Runtime.Internal;
28+
29+
#pragma warning disable CS0612,CS0618,CS1570
30+
namespace Amazon.SageMaker.Model
31+
{
32+
/// <summary>
33+
/// Specifies an instance group and the number of nodes to add to it.
34+
/// </summary>
35+
public partial class AddClusterNodeSpecification
36+
{
37+
private int? _incrementTargetCountBy;
38+
private string _instanceGroupName;
39+
40+
/// <summary>
41+
/// Gets and sets the property IncrementTargetCountBy.
42+
/// <para>
43+
/// The number of nodes to add to the specified instance group. The total number of nodes
44+
/// across all instance groups in a single request cannot exceed 50.
45+
/// </para>
46+
/// </summary>
47+
[AWSProperty(Required=true, Min=1, Max=50)]
48+
public int IncrementTargetCountBy
49+
{
50+
get { return this._incrementTargetCountBy.GetValueOrDefault(); }
51+
set { this._incrementTargetCountBy = value; }
52+
}
53+
54+
// Check to see if IncrementTargetCountBy property is set
55+
internal bool IsSetIncrementTargetCountBy()
56+
{
57+
return this._incrementTargetCountBy.HasValue;
58+
}
59+
60+
/// <summary>
61+
/// Gets and sets the property InstanceGroupName.
62+
/// <para>
63+
/// The name of the instance group to which you want to add nodes.
64+
/// </para>
65+
/// </summary>
66+
[AWSProperty(Required=true, Min=1, Max=63)]
67+
public string InstanceGroupName
68+
{
69+
get { return this._instanceGroupName; }
70+
set { this._instanceGroupName = value; }
71+
}
72+
73+
// Check to see if InstanceGroupName property is set
74+
internal bool IsSetInstanceGroupName()
75+
{
76+
return this._instanceGroupName != null;
77+
}
78+
79+
}
80+
}

0 commit comments

Comments
 (0)