Skip to content

Updates the platform software of a SageMaker HyperPod cluster for security patching

Description

Updates the platform software of a SageMaker HyperPod cluster for security patching. To learn how to use this API, see Update the SageMaker HyperPod platform software of a cluster.

The UpgradeClusterSoftware API call may impact your SageMaker HyperPod cluster uptime and availability. Plan accordingly to mitigate potential disruptions to your workloads.

Usage

sagemaker_update_cluster_software(ClusterName, InstanceGroups,
  DeploymentConfig, ImageId)

Arguments

  • ClusterName

    [required] Specify the name or the Amazon Resource Name (ARN) of the SageMaker HyperPod cluster you want to update for security patching.

  • InstanceGroups

    The array of instance groups for which to update AMI versions.

  • DeploymentConfig

    The configuration to use when updating the AMI versions.

  • ImageId

    When configuring your HyperPod cluster, you can specify an image ID using one of the following options:

    • HyperPodPublicAmiId: Use a HyperPod public AMI
    • CustomAmiId: Use your custom AMI
    • default: Use the default latest system image

    If you choose to use a custom AMI (CustomAmiId), ensure it meets the following requirements:

    • Encryption: The custom AMI must be unencrypted.
    • Ownership: The custom AMI must be owned by the same Amazon Web Services account that is creating the HyperPod cluster.
    • Volume support: Only the primary AMI snapshot volume is supported; additional AMI volumes are not supported.

    When updating the instance group's AMI through the update_cluster_software operation, if an instance group uses a custom AMI, you must provide an ImageId or use the default as input. Note that if you don't specify an instance group in your update_cluster_software request, then all of the instance groups are patched with the specified image.

Value

A list with the following syntax:

list(
  ClusterArn = "string"
)

Request syntax

svc$update_cluster_software(
  ClusterName = "string",
  InstanceGroups = list(
    list(
      InstanceGroupName = "string",
      ImageReleaseVersion = "string"
    )
  ),
  DeploymentConfig = list(
    RollingUpdatePolicy = list(
      MaximumBatchSize = list(
        Type = "INSTANCE_COUNT"|"CAPACITY_PERCENTAGE",
        Value = 123
      ),
      RollbackMaximumBatchSize = list(
        Type = "INSTANCE_COUNT"|"CAPACITY_PERCENTAGE",
        Value = 123
      )
    ),
    WaitIntervalInSeconds = 123,
    AutoRollbackConfiguration = list(
      list(
        AlarmName = "string"
      )
    )
  ),
  ImageId = "string"
)