2026/01/12 - Amazon SageMaker Service - 2 updated api methods
Changes Added ultraServerType to the UltraServerInfo structure to support server type identification for SageMaker HyperPod
{'NodeDetails': {'UltraServerInfo': {'Type': 'string'}}}
Retrieves information of a node (also called a instance interchangeably) of a SageMaker HyperPod cluster.
See also: AWS API Documentation
Request Syntax
client.describe_cluster_node(
ClusterName='string',
NodeId='string',
NodeLogicalId='string'
)
string
[REQUIRED]
The string name or the Amazon Resource Name (ARN) of the SageMaker HyperPod cluster in which the node is.
string
The ID of the SageMaker HyperPod cluster node.
string
The logical identifier of the node to describe. You can specify either NodeLogicalId or InstanceId, but not both. NodeLogicalId can be used to describe nodes that are still being provisioned and don't yet have an InstanceId assigned.
dict
Response Syntax
{
'NodeDetails': {
'InstanceGroupName': 'string',
'InstanceId': 'string',
'NodeLogicalId': 'string',
'InstanceStatus': {
'Status': 'Running'|'Failure'|'Pending'|'ShuttingDown'|'SystemUpdating'|'DeepHealthCheckInProgress'|'NotFound',
'Message': 'string'
},
'InstanceType': 'ml.p4d.24xlarge'|'ml.p4de.24xlarge'|'ml.p5.48xlarge'|'ml.p5.4xlarge'|'ml.p6e-gb200.36xlarge'|'ml.trn1.32xlarge'|'ml.trn1n.32xlarge'|'ml.g5.xlarge'|'ml.g5.2xlarge'|'ml.g5.4xlarge'|'ml.g5.8xlarge'|'ml.g5.12xlarge'|'ml.g5.16xlarge'|'ml.g5.24xlarge'|'ml.g5.48xlarge'|'ml.c5.large'|'ml.c5.xlarge'|'ml.c5.2xlarge'|'ml.c5.4xlarge'|'ml.c5.9xlarge'|'ml.c5.12xlarge'|'ml.c5.18xlarge'|'ml.c5.24xlarge'|'ml.c5n.large'|'ml.c5n.2xlarge'|'ml.c5n.4xlarge'|'ml.c5n.9xlarge'|'ml.c5n.18xlarge'|'ml.m5.large'|'ml.m5.xlarge'|'ml.m5.2xlarge'|'ml.m5.4xlarge'|'ml.m5.8xlarge'|'ml.m5.12xlarge'|'ml.m5.16xlarge'|'ml.m5.24xlarge'|'ml.t3.medium'|'ml.t3.large'|'ml.t3.xlarge'|'ml.t3.2xlarge'|'ml.g6.xlarge'|'ml.g6.2xlarge'|'ml.g6.4xlarge'|'ml.g6.8xlarge'|'ml.g6.16xlarge'|'ml.g6.12xlarge'|'ml.g6.24xlarge'|'ml.g6.48xlarge'|'ml.gr6.4xlarge'|'ml.gr6.8xlarge'|'ml.g6e.xlarge'|'ml.g6e.2xlarge'|'ml.g6e.4xlarge'|'ml.g6e.8xlarge'|'ml.g6e.16xlarge'|'ml.g6e.12xlarge'|'ml.g6e.24xlarge'|'ml.g6e.48xlarge'|'ml.p5e.48xlarge'|'ml.p5en.48xlarge'|'ml.p6-b200.48xlarge'|'ml.trn2.3xlarge'|'ml.trn2.48xlarge'|'ml.c6i.large'|'ml.c6i.xlarge'|'ml.c6i.2xlarge'|'ml.c6i.4xlarge'|'ml.c6i.8xlarge'|'ml.c6i.12xlarge'|'ml.c6i.16xlarge'|'ml.c6i.24xlarge'|'ml.c6i.32xlarge'|'ml.m6i.large'|'ml.m6i.xlarge'|'ml.m6i.2xlarge'|'ml.m6i.4xlarge'|'ml.m6i.8xlarge'|'ml.m6i.12xlarge'|'ml.m6i.16xlarge'|'ml.m6i.24xlarge'|'ml.m6i.32xlarge'|'ml.r6i.large'|'ml.r6i.xlarge'|'ml.r6i.2xlarge'|'ml.r6i.4xlarge'|'ml.r6i.8xlarge'|'ml.r6i.12xlarge'|'ml.r6i.16xlarge'|'ml.r6i.24xlarge'|'ml.r6i.32xlarge'|'ml.i3en.large'|'ml.i3en.xlarge'|'ml.i3en.2xlarge'|'ml.i3en.3xlarge'|'ml.i3en.6xlarge'|'ml.i3en.12xlarge'|'ml.i3en.24xlarge'|'ml.m7i.large'|'ml.m7i.xlarge'|'ml.m7i.2xlarge'|'ml.m7i.4xlarge'|'ml.m7i.8xlarge'|'ml.m7i.12xlarge'|'ml.m7i.16xlarge'|'ml.m7i.24xlarge'|'ml.m7i.48xlarge'|'ml.r7i.large'|'ml.r7i.xlarge'|'ml.r7i.2xlarge'|'ml.r7i.4xlarge'|'ml.r7i.8xlarge'|'ml.r7i.12xlarge'|'ml.r7i.16xlarge'|'ml.r7i.24xlarge'|'ml.r7i.48xlarge'|'ml.p6-b300.48xlarge',
'LaunchTime': datetime(2015, 1, 1),
'LastSoftwareUpdateTime': datetime(2015, 1, 1),
'LifeCycleConfig': {
'SourceS3Uri': 'string',
'OnCreate': 'string'
},
'OverrideVpcConfig': {
'SecurityGroupIds': [
'string',
],
'Subnets': [
'string',
]
},
'ThreadsPerCore': 123,
'InstanceStorageConfigs': [
{
'EbsVolumeConfig': {
'VolumeSizeInGB': 123,
'VolumeKmsKeyId': 'string',
'RootVolume': True|False
}
},
],
'PrivatePrimaryIp': 'string',
'PrivatePrimaryIpv6': 'string',
'PrivateDnsHostname': 'string',
'Placement': {
'AvailabilityZone': 'string',
'AvailabilityZoneId': 'string'
},
'CurrentImageId': 'string',
'DesiredImageId': 'string',
'UltraServerInfo': {
'Id': 'string',
'Type': 'string'
},
'KubernetesConfig': {
'CurrentLabels': {
'string': 'string'
},
'DesiredLabels': {
'string': 'string'
},
'CurrentTaints': [
{
'Key': 'string',
'Value': 'string',
'Effect': 'NoSchedule'|'PreferNoSchedule'|'NoExecute'
},
],
'DesiredTaints': [
{
'Key': 'string',
'Value': 'string',
'Effect': 'NoSchedule'|'PreferNoSchedule'|'NoExecute'
},
]
},
'CapacityType': 'Spot'|'OnDemand'
}
}
Response Structure
(dict) --
NodeDetails (dict) --
The details of the SageMaker HyperPod cluster node.
InstanceGroupName (string) --
The instance group name in which the instance is.
InstanceId (string) --
The ID of the instance.
NodeLogicalId (string) --
A unique identifier for the node that persists throughout its lifecycle, from provisioning request to termination. This identifier can be used to track the node even before it has an assigned InstanceId.
InstanceStatus (dict) --
The status of the instance.
Status (string) --
The status of an instance in a SageMaker HyperPod cluster.
Message (string) --
The message from an instance in a SageMaker HyperPod cluster.
InstanceType (string) --
The type of the instance.
LaunchTime (datetime) --
The time when the instance is launched.
LastSoftwareUpdateTime (datetime) --
The time when the cluster was last updated.
LifeCycleConfig (dict) --
The LifeCycle configuration applied to the instance.
SourceS3Uri (string) --
An Amazon S3 bucket path where your lifecycle scripts are stored.
OnCreate (string) --
The file name of the entrypoint script of lifecycle scripts under SourceS3Uri. This entrypoint script runs during cluster creation.
OverrideVpcConfig (dict) --
The customized Amazon VPC configuration at the instance group level that overrides the default Amazon VPC configuration of the SageMaker HyperPod cluster.
SecurityGroupIds (list) --
The VPC security group IDs, in the form sg-xxxxxxxx. Specify the security groups for the VPC that is specified in the Subnets field.
(string) --
Subnets (list) --
The ID of the subnets in the VPC to which you want to connect your training job or model. For information about the availability of specific instance types, see Supported Instance Types and Availability Zones.
(string) --
ThreadsPerCore (integer) --
The number of threads per CPU core you specified under CreateCluster.
InstanceStorageConfigs (list) --
The configurations of additional storage specified to the instance group where the instance (node) is launched.
(dict) --
Defines the configuration for attaching additional storage to the instances in the SageMaker HyperPod cluster instance group. To learn more, see SageMaker HyperPod release notes: June 20, 2024.
EbsVolumeConfig (dict) --
Defines the configuration for attaching additional Amazon Elastic Block Store (EBS) volumes to the instances in the SageMaker HyperPod cluster instance group. The additional EBS volume is attached to each instance within the SageMaker HyperPod cluster instance group and mounted to /opt/sagemaker.
VolumeSizeInGB (integer) --
The size in gigabytes (GB) of the additional EBS volume to be attached to the instances in the SageMaker HyperPod cluster instance group. The additional EBS volume is attached to each instance within the SageMaker HyperPod cluster instance group and mounted to /opt/sagemaker.
VolumeKmsKeyId (string) --
The ID of a KMS key to encrypt the Amazon EBS volume.
RootVolume (boolean) --
Specifies whether the configuration is for the cluster's root or secondary Amazon EBS volume. You can specify two ClusterEbsVolumeConfig fields to configure both the root and secondary volumes. Set the value to True if you'd like to provide your own customer managed Amazon Web Services KMS key to encrypt the root volume. When True:
The configuration is applied to the root volume.
You can't specify the VolumeSizeInGB field. The size of the root volume is determined for you.
You must specify a KMS key ID for VolumeKmsKeyId to encrypt the root volume with your own KMS key instead of an Amazon Web Services owned KMS key.
Otherwise, by default, the value is False, and the following applies:
The configuration is applied to the secondary volume, while the root volume is encrypted with an Amazon Web Services owned key.
You must specify the VolumeSizeInGB field.
You can optionally specify the VolumeKmsKeyId to encrypt the secondary volume with your own KMS key instead of an Amazon Web Services owned KMS key.
PrivatePrimaryIp (string) --
The private primary IP address of the SageMaker HyperPod cluster node.
PrivatePrimaryIpv6 (string) --
The private primary IPv6 address of the SageMaker HyperPod cluster node when configured with an Amazon VPC that supports IPv6 and includes subnets with IPv6 addressing enabled in either the cluster Amazon VPC configuration or the instance group Amazon VPC configuration.
PrivateDnsHostname (string) --
The private DNS hostname of the SageMaker HyperPod cluster node.
Placement (dict) --
The placement details of the SageMaker HyperPod cluster node.
AvailabilityZone (string) --
The Availability Zone where the node in the SageMaker HyperPod cluster is launched.
AvailabilityZoneId (string) --
The unique identifier (ID) of the Availability Zone where the node in the SageMaker HyperPod cluster is launched.
CurrentImageId (string) --
The ID of the Amazon Machine Image (AMI) currently in use by the node.
DesiredImageId (string) --
The ID of the Amazon Machine Image (AMI) desired for the node.
UltraServerInfo (dict) --
Contains information about the UltraServer.
Id (string) --
The unique identifier of the UltraServer.
Type (string) --
The type of the UltraServer.
KubernetesConfig (dict) --
The Kubernetes configuration applied to this node, showing both the current and desired state of labels and taints. The cluster works to reconcile the actual state with the declared state.
CurrentLabels (dict) --
The current labels applied to the cluster node.
(string) --
(string) --
DesiredLabels (dict) --
The desired labels to be applied to the cluster node.
(string) --
(string) --
CurrentTaints (list) --
The current taints applied to the cluster node.
(dict) --
A Kubernetes taint that can be applied to cluster nodes.
Key (string) --
The key of the taint.
Value (string) --
The value of the taint.
Effect (string) --
The effect of the taint. Valid values are NoSchedule, PreferNoSchedule, and NoExecute.
DesiredTaints (list) --
The desired taints to be applied to the cluster node.
(dict) --
A Kubernetes taint that can be applied to cluster nodes.
Key (string) --
The key of the taint.
Value (string) --
The value of the taint.
Effect (string) --
The effect of the taint. Valid values are NoSchedule, PreferNoSchedule, and NoExecute.
CapacityType (string) --
The capacity type of the node. Valid values are OnDemand and Spot. When set to OnDemand, the node is launched as an On-Demand instance. When set to Spot, the node is launched as a Spot instance.
{'ClusterNodeSummaries': {'UltraServerInfo': {'Type': 'string'}}}
Retrieves the list of instances (also called nodes interchangeably) in a SageMaker HyperPod cluster.
See also: AWS API Documentation
Request Syntax
client.list_cluster_nodes(
ClusterName='string',
CreationTimeAfter=datetime(2015, 1, 1),
CreationTimeBefore=datetime(2015, 1, 1),
InstanceGroupNameContains='string',
MaxResults=123,
NextToken='string',
SortBy='CREATION_TIME'|'NAME',
SortOrder='Ascending'|'Descending',
IncludeNodeLogicalIds=True|False
)
string
[REQUIRED]
The string name or the Amazon Resource Name (ARN) of the SageMaker HyperPod cluster in which you want to retrieve the list of nodes.
datetime
A filter that returns nodes in a SageMaker HyperPod cluster created after the specified time. Timestamps are formatted according to the ISO 8601 standard.
Acceptable formats include:
YYYY-MM-DDThh:mm:ss.sssTZD (UTC), for example, 2014-10-01T20:30:00.000Z
YYYY-MM-DDThh:mm:ss.sssTZD (with offset), for example, 2014-10-01T12:30:00.000-08:00
YYYY-MM-DD, for example, 2014-10-01
Unix time in seconds, for example, 1412195400. This is also referred to as Unix Epoch time and represents the number of seconds since midnight, January 1, 1970 UTC.
For more information about the timestamp format, see Timestamp in the Amazon Web Services Command Line Interface User Guide.
datetime
A filter that returns nodes in a SageMaker HyperPod cluster created before the specified time. The acceptable formats are the same as the timestamp formats for CreationTimeAfter. For more information about the timestamp format, see Timestamp in the Amazon Web Services Command Line Interface User Guide.
string
A filter that returns the instance groups whose name contain a specified string.
integer
The maximum number of nodes to return in the response.
string
If the result of the previous ListClusterNodes request was truncated, the response includes a NextToken. To retrieve the next set of cluster nodes, use the token in the next request.
string
The field by which to sort results. The default value is CREATION_TIME.
string
The sort order for results. The default value is Ascending.
boolean
Specifies whether to include nodes that are still being provisioned in the response. When set to true, the response includes all nodes regardless of their provisioning status. When set to False (default), only nodes with assigned InstanceIds are returned.
dict
Response Syntax
{
'NextToken': 'string',
'ClusterNodeSummaries': [
{
'InstanceGroupName': 'string',
'InstanceId': 'string',
'NodeLogicalId': 'string',
'InstanceType': 'ml.p4d.24xlarge'|'ml.p4de.24xlarge'|'ml.p5.48xlarge'|'ml.p5.4xlarge'|'ml.p6e-gb200.36xlarge'|'ml.trn1.32xlarge'|'ml.trn1n.32xlarge'|'ml.g5.xlarge'|'ml.g5.2xlarge'|'ml.g5.4xlarge'|'ml.g5.8xlarge'|'ml.g5.12xlarge'|'ml.g5.16xlarge'|'ml.g5.24xlarge'|'ml.g5.48xlarge'|'ml.c5.large'|'ml.c5.xlarge'|'ml.c5.2xlarge'|'ml.c5.4xlarge'|'ml.c5.9xlarge'|'ml.c5.12xlarge'|'ml.c5.18xlarge'|'ml.c5.24xlarge'|'ml.c5n.large'|'ml.c5n.2xlarge'|'ml.c5n.4xlarge'|'ml.c5n.9xlarge'|'ml.c5n.18xlarge'|'ml.m5.large'|'ml.m5.xlarge'|'ml.m5.2xlarge'|'ml.m5.4xlarge'|'ml.m5.8xlarge'|'ml.m5.12xlarge'|'ml.m5.16xlarge'|'ml.m5.24xlarge'|'ml.t3.medium'|'ml.t3.large'|'ml.t3.xlarge'|'ml.t3.2xlarge'|'ml.g6.xlarge'|'ml.g6.2xlarge'|'ml.g6.4xlarge'|'ml.g6.8xlarge'|'ml.g6.16xlarge'|'ml.g6.12xlarge'|'ml.g6.24xlarge'|'ml.g6.48xlarge'|'ml.gr6.4xlarge'|'ml.gr6.8xlarge'|'ml.g6e.xlarge'|'ml.g6e.2xlarge'|'ml.g6e.4xlarge'|'ml.g6e.8xlarge'|'ml.g6e.16xlarge'|'ml.g6e.12xlarge'|'ml.g6e.24xlarge'|'ml.g6e.48xlarge'|'ml.p5e.48xlarge'|'ml.p5en.48xlarge'|'ml.p6-b200.48xlarge'|'ml.trn2.3xlarge'|'ml.trn2.48xlarge'|'ml.c6i.large'|'ml.c6i.xlarge'|'ml.c6i.2xlarge'|'ml.c6i.4xlarge'|'ml.c6i.8xlarge'|'ml.c6i.12xlarge'|'ml.c6i.16xlarge'|'ml.c6i.24xlarge'|'ml.c6i.32xlarge'|'ml.m6i.large'|'ml.m6i.xlarge'|'ml.m6i.2xlarge'|'ml.m6i.4xlarge'|'ml.m6i.8xlarge'|'ml.m6i.12xlarge'|'ml.m6i.16xlarge'|'ml.m6i.24xlarge'|'ml.m6i.32xlarge'|'ml.r6i.large'|'ml.r6i.xlarge'|'ml.r6i.2xlarge'|'ml.r6i.4xlarge'|'ml.r6i.8xlarge'|'ml.r6i.12xlarge'|'ml.r6i.16xlarge'|'ml.r6i.24xlarge'|'ml.r6i.32xlarge'|'ml.i3en.large'|'ml.i3en.xlarge'|'ml.i3en.2xlarge'|'ml.i3en.3xlarge'|'ml.i3en.6xlarge'|'ml.i3en.12xlarge'|'ml.i3en.24xlarge'|'ml.m7i.large'|'ml.m7i.xlarge'|'ml.m7i.2xlarge'|'ml.m7i.4xlarge'|'ml.m7i.8xlarge'|'ml.m7i.12xlarge'|'ml.m7i.16xlarge'|'ml.m7i.24xlarge'|'ml.m7i.48xlarge'|'ml.r7i.large'|'ml.r7i.xlarge'|'ml.r7i.2xlarge'|'ml.r7i.4xlarge'|'ml.r7i.8xlarge'|'ml.r7i.12xlarge'|'ml.r7i.16xlarge'|'ml.r7i.24xlarge'|'ml.r7i.48xlarge'|'ml.p6-b300.48xlarge',
'LaunchTime': datetime(2015, 1, 1),
'LastSoftwareUpdateTime': datetime(2015, 1, 1),
'InstanceStatus': {
'Status': 'Running'|'Failure'|'Pending'|'ShuttingDown'|'SystemUpdating'|'DeepHealthCheckInProgress'|'NotFound',
'Message': 'string'
},
'UltraServerInfo': {
'Id': 'string',
'Type': 'string'
},
'PrivateDnsHostname': 'string'
},
]
}
Response Structure
(dict) --
NextToken (string) --
The next token specified for listing instances in a SageMaker HyperPod cluster.
ClusterNodeSummaries (list) --
The summaries of listed instances in a SageMaker HyperPod cluster
(dict) --
Lists a summary of the properties of an instance (also called a node interchangeably) of a SageMaker HyperPod cluster.
InstanceGroupName (string) --
The name of the instance group in which the instance is.
InstanceId (string) --
The ID of the instance.
NodeLogicalId (string) --
A unique identifier for the node that persists throughout its lifecycle, from provisioning request to termination. This identifier can be used to track the node even before it has an assigned InstanceId. This field is only included when IncludeNodeLogicalIds is set to True in the ListClusterNodes request.
InstanceType (string) --
The type of the instance.
LaunchTime (datetime) --
The time when the instance is launched.
LastSoftwareUpdateTime (datetime) --
The time when SageMaker last updated the software of the instances in the cluster.
InstanceStatus (dict) --
The status of the instance.
Status (string) --
The status of an instance in a SageMaker HyperPod cluster.
Message (string) --
The message from an instance in a SageMaker HyperPod cluster.
UltraServerInfo (dict) --
Contains information about the UltraServer.
Id (string) --
The unique identifier of the UltraServer.
Type (string) --
The type of the UltraServer.
PrivateDnsHostname (string) --
The private DNS hostname of the SageMaker HyperPod cluster node.