View a markdown version of this page

CreateClusterExtension - Amazon SageMaker

CreateClusterExtension

Installs an extension, such as sagemaker-observability, on a SageMaker HyperPod cluster orchestrated by Slurm. The cluster must have NodeProvisioningMode set to Continuous and can have only one extension with a given name. To track the installation, call DescribeClusterExtension.

Request Syntax

{ "ClientToken": "string", "ClusterArn": "string", "ConfigurationValues": "string", "ExtensionName": "string", "ExtensionVersion": "string", "Tags": [ { "Key": "string", "Value": "string" } ] }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

ClientToken

A unique, case-sensitive identifier that you provide so that the operation completes no more than one time. This token is valid for 8 hours. If you retry the request with the same client token and the same parameters within this time, the API returns the Amazon Resource Name (ARN) of the extension that the original request created, without creating a duplicate. If you use the same client token with different parameters, the request fails.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 64.

Pattern: [\x21-\x7E]+

Required: No

ClusterArn

The Amazon Resource Name (ARN) of the SageMaker HyperPod cluster on which to install the extension. The cluster must use Slurm as the orchestrator and have NodeProvisioningMode set to Continuous.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 256.

Pattern: arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:cluster/[a-z0-9]{12}

Required: Yes

ConfigurationValues

The configuration settings for the extension, as a JSON object serialized as a string, for example {"metricsProvider":{"nodeMetrics":{"level":"ADVANCED"}}}. Each extension version defines which settings it accepts. SageMaker HyperPod validates the settings against that definition, and rejects the request if a setting is unknown or has an invalid value. Settings that you omit use the extension's default values. If you omit ConfigurationValues, all settings use their default values.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 10240.

Required: No

ExtensionName

The name of the extension to install, for example sagemaker-observability.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 128.

Pattern: [a-z]([a-z0-9]|-[a-z0-9])*

Required: Yes

ExtensionVersion

The version of the extension to install, in MAJOR.MINOR.PATCH format, for example 1.0.0. If you don't specify a version, SageMaker HyperPod installs the latest available version of the extension.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [0-9]+\.[0-9]+\.[0-9]+

Required: No

Tags

Custom tags for managing the extension as an AWS resource. You can add tags to your extension in the same way you add them in other AWS services that support tagging. To learn more about tagging AWS resources in general, see Tagging AWS Resources User Guide. To use this operation to add tags when you create an extension, you must have the sagemaker:AddTags permission.

Type: Array of Tag objects

Array Members: Minimum number of 0 items. Maximum number of 50 items.

Required: No

Response Syntax

{ "ExtensionArn": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

ExtensionArn

The Amazon Resource Name (ARN) of the extension that you created. Use this ARN to describe, update, or delete the extension.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Pattern: arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:extension/(sagemaker|eks|pcs)-[a-z0-9-]+/[a-z0-9-]+/[a-z0-9]+

Errors

For information about the errors that are common to all actions, see Common Error Types.

ConflictException

There was a conflict when you attempted to modify a SageMaker entity such as an Experiment or Artifact.

HTTP Status Code: 400

ResourceInUse

Resource being accessed is in use.

HTTP Status Code: 400

ResourceNotFound

Resource being access is not found.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: