更新 SageMaker HyperPod 集群配置 - 亚马逊 SageMaker AI

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

更新 SageMaker HyperPod 集群配置

运行 update-cluster 更新集群配置。

注意

创建集群后,您无法更改 HyperPod集群关联的 EKS 集群信息。

注意

如果集群上正在运行深度运行状况检查,此 API 将无法按预期运行。您可能会遇到一条错误信息,提示正在进行深度运行状况检查。要更新集群,应等待深度运行状况检查结束。

  1. 创建 JSON 格式的 UpdateCluster 请求文件。确保指定正确的集群名称和实例组名称进行更新。您可以更改实例类型、实例数量、生命周期配置入口点脚本以及脚本的路径。

    1. 对于 ClusterName,指定要更新的集群名称。

    2. 对于 InstanceGroupName

      1. 要更新现有实例组,请指定要更新的实例组名称。

      2. 要添加新的实例组,请指定一个集群中不存在的新名称。

    3. 对于 InstanceType

      1. 要更新现有实例组,必须将最初指定的实例类型与组匹配。

      2. 要添加新实例组,请指定要配置该组的实例类型。

    4. 对于 InstanceCount

      1. 要更新现有实例组,请指定与所需实例数量相对应的整数。您可以提供更高或更低的值(向下至 0)来向上或向下扩展实例组。

      2. 要添加新的实例组,请指定一个大于或等于 1 的整数。

    5. 对于 LifeCycleConfig,您可以更改 SourceS3UriOnCreate 的值,以更新实例组。

    6. 对于 ExecutionRole

      1. 要更新现有实例组,请继续使用创建集群时附加的相同 IAM 角色。

      2. 要添加新的实例组,请指定要附加的 IAM 角色。

    7. 对于 ThreadsPerCore

      1. 更新现有实例组时,请继续使用创建集群时指定的相同值。

      2. 添加新实例组时,您可以从每个实例类型允许的选项中选择任意值。有关更多信息,请搜索实例类型并参阅《Amazon EC2 用户指南》中参考表中每种实例类型的 CPU 核心数和每 CPU 内核的线程数。

    8. 对于 OnStartDeepHealthChecks,添加 InstanceStressInstanceConnectivity,以启用 深度运行状况检查

    9. 对于NodeRecoveryAutomatic请指定启用自动节点恢复。 SageMaker HyperPod 当运行状况监控代理发现问题时,替换或重启实例(节点)。

    下面的代码片段是您可以使用的 JSON 请求文件模板。有关此 API 的请求语法和参数的更多信息,请参阅 UpdateClusterAPI 参考。

    // update_cluster.json { // Required "ClusterName": "name-of-cluster-to-update", // Required "InstanceGroups": [{ "InstanceGroupName": "string", "InstanceType": "string", "InstanceCount": number, "LifeCycleConfig": { "SourceS3Uri": "string", "OnCreate": "string" }, "ExecutionRole": "string", "ThreadsPerCore": number, "OnStartDeepHealthChecks": [ "InstanceStress", "InstanceConnectivity" ] }], "NodeRecovery": "Automatic" }
  2. 运行以下 update-cluster 命令提交请求。

    aws sagemaker update-cluster \ --cli-input-json file://complete/path/to/update_cluster.json