

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengelola kluster SageMaker HyperPod EKS menggunakan AWS CLI
<a name="sagemaker-hyperpod-eks-operate-cli-command"></a>

Topik berikut memberikan panduan tentang menulis file permintaan SageMaker HyperPod API dalam format JSON dan menjalankannya menggunakan AWS CLI perintah.

**Topics**
+ [Membuat SageMaker HyperPod cluster](sagemaker-hyperpod-eks-operate-cli-command-create-cluster.md)
+ [Mengambil detail SageMaker HyperPod cluster](sagemaker-hyperpod-eks-operate-cli-command-cluster-details.md)
+ [Memperbarui konfigurasi SageMaker HyperPod cluster](sagemaker-hyperpod-eks-operate-cli-command-update-cluster.md)
+ [Memperbarui perangkat lunak SageMaker HyperPod platform](sagemaker-hyperpod-eks-operate-cli-command-update-cluster-software.md)
+ [Mengakses node SageMaker HyperPod cluster](sagemaker-hyperpod-eks-operate-access-through-terminal.md)
+ [Penskalaan cluster SageMaker HyperPod](smcluster-scale-down.md)
+ [Menghapus cluster SageMaker HyperPod](sagemaker-hyperpod-eks-operate-cli-command-delete-cluster.md)

# Membuat SageMaker HyperPod cluster
<a name="sagemaker-hyperpod-eks-operate-cli-command-create-cluster"></a>

Pelajari cara membuat SageMaker HyperPod cluster yang diatur oleh Amazon EKS menggunakan. AWS CLI

1. Sebelum membuat SageMaker HyperPod cluster:

   1. Pastikan Anda memiliki cluster Amazon EKS yang sudah ada dan berjalan. Untuk petunjuk mendetail tentang cara menyiapkan kluster Amazon EKS, lihat [Membuat klaster Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/create-cluster.html) di *Panduan Pengguna Amazon EKS*.

   1. Instal bagan Helm seperti yang diinstruksikan dalam. [Menginstal paket di cluster Amazon EKS menggunakan Helm](sagemaker-hyperpod-eks-install-packages-using-helm-chart.md) Jika Anda membuat [ SageMaker HyperPod cluster Amazon Nova](https://docs.aws.amazon.com//nova/latest/nova2-userguide/nova-hp-cluster.html), Anda memerlukan bagan Helm terpisah.

1. Siapkan skrip konfigurasi siklus hidup dan unggah ke bucket Amazon S3, seperti. `s3://amzn-s3-demo-bucket/Lifecycle-scripts/base-config/`

   Untuk memulai dengan cepat, unduh skrip sampel [https://github.com/aws-samples/awsome-distributed-training/blob/main/1.architectures/7.sagemaker-hyperpod-eks/LifecycleScripts/base-config/on_create.sh](https://github.com/aws-samples/awsome-distributed-training/blob/main/1.architectures/7.sagemaker-hyperpod-eks/LifecycleScripts/base-config/on_create.sh)dari GitHub repositori Pelatihan Terdistribusi AWS ome, dan unggah ke bucket S3. Anda juga dapat menyertakan instruksi penyiapan tambahan, serangkaian skrip penyiapan, atau perintah yang akan dijalankan selama tahap penyediaan HyperPod klaster.
**penting**  
Jika Anda membuat [Peran IAM untuk SageMaker HyperPod](sagemaker-hyperpod-prerequisites-iam.md#sagemaker-hyperpod-prerequisites-iam-role-for-hyperpod) lampiran hanya terkelola [https://docs.aws.amazon.com/sagemaker/latest/dg/security-iam-awsmanpol-cluster.html](https://docs.aws.amazon.com/sagemaker/latest/dg/security-iam-awsmanpol-cluster.html), klaster Anda memiliki akses ke bucket Amazon S3 dengan awalan tertentu. `sagemaker-`

   Jika Anda membuat grup instans terbatas, Anda tidak perlu mengunduh dan menjalankan skrip siklus hidup. Sebaliknya, Anda harus berlari`install_rig_dependencies.sh`. 

   Prasyarat untuk menjalankan skrip meliputi: `install_rig_dependencies.sh`
   + AWS Node (CNI) dan CoreDNS keduanya harus diaktifkan. Ini adalah add-on EKS standar yang tidak dikelola oleh SageMaker HyperPod Helm standar, tetapi dapat dengan mudah diaktifkan di konsol EKS di bawah Add-on.
   +  Bagan SageMaker HyperPod Helm standar harus diinstal sebelum menjalankan skrip ini.

   `install_rig_dependencies.sh`Skrip melakukan tindakan berikut. 
   + `aws-node`(CNI): `rig-aws-node` Daemonset baru dibuat; sudah `aws-node` ditambal untuk menghindari node RIG.
   + `coredns`: Dikonversi ke Daemonset RIGs untuk mendukung penggunaan Multi-rig dan mencegah kelebihan beban.
   + operator pelatihan: Diperbarui dengan toleransi noda Pekerja RIG dan NodeAffinity yang mendukung instans non-RIG.
   + Elastic Fabric Adapter (EFA): Diperbarui untuk mentolerir noda pekerja RIG dan menggunakan gambar wadah yang benar untuk setiap Wilayah.

1. Siapkan file permintaan [CreateCluster](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateCluster.html)API dalam format JSON. Untuk`ExecutionRole`, berikan ARN dari peran IAM yang Anda buat dengan yang dikelola `AmazonSageMakerClusterInstanceRolePolicy` dari bagian. [Peran IAM untuk SageMaker HyperPod](sagemaker-hyperpod-prerequisites-iam.md#sagemaker-hyperpod-prerequisites-iam-role-for-hyperpod)
**catatan**  
Pastikan SageMaker HyperPod klaster Anda di-deploy dalam Virtual Private Cloud (VPC) yang sama dengan cluster Amazon EKS Anda. Subnet dan grup keamanan yang ditentukan dalam konfigurasi SageMaker HyperPod cluster harus memungkinkan konektivitas jaringan dan komunikasi dengan titik akhir server API klaster Amazon EKS.

   ```
   // create_cluster.json
   {
       "ClusterName": "string",
       "InstanceGroups": [{
           "InstanceGroupName": "string",
           "InstanceType": "string",
           "InstanceCount": number,
           "LifeCycleConfig": {
               "SourceS3Uri": "s3://amzn-s3-demo-bucket-sagemaker/lifecycle-script-directory/src/",
               "OnCreate": "on_create.sh"
           },
           "ExecutionRole": "string",
           "ThreadsPerCore": number,
           "OnStartDeepHealthChecks": [
               "InstanceStress", "InstanceConnectivity"
           ]
       }],
       "RestrictedInstanceGroups": [ 
         { 
            "EnvironmentConfig": { 
               "FSxLustreConfig": { 
                  "PerUnitStorageThroughput": number,
                  "SizeInGiB": number
               }
            },
            "ExecutionRole": "string",
            "InstanceCount": number,
            "InstanceGroupName": "string",
            "InstanceStorageConfigs": [ 
               { ... }
            ],
            "InstanceType": "string",
            "OnStartDeepHealthChecks": [ "string" ],
            "OverrideVpcConfig": { 
               "SecurityGroupIds": [ "string" ],
               "Subnets": [ "string" ]
            },
            "ScheduledUpdateConfig": { 
               "DeploymentConfig": { 
                  "AutoRollbackConfiguration": [ 
                     { 
                        "AlarmName": "string"
                     }
                  ],
                  "RollingUpdatePolicy": { 
                     "MaximumBatchSize": { 
                        "Type": "string",
                        "Value": number
                     },
                     "RollbackMaximumBatchSize": { 
                        "Type": "string",
                        "Value": number
                     }
                  },
                  "WaitIntervalInSeconds": number
               },
               "ScheduleExpression": "string"
            },
            "ThreadsPerCore": number,
            "TrainingPlanArn": "string"
         }
      ],
       "VpcConfig": {
           "SecurityGroupIds": ["string"],
           "Subnets": ["string"]
       },
       "Tags": [{
           "Key": "string",
           "Value": "string"
       }],
       "Orchestrator": {
           "Eks": {
               "ClusterArn": "string",
               "KubernetesConfig": {
                   "Labels": {
                       "nvidia.com/mig.config": "all-3g.40gb"
                   }
               }
           }
       },
       "NodeRecovery": "Automatic"
   }
   ```
**Grup instans yang fleksibel**  
Alih-alih menentukan satu`InstanceType`, Anda dapat menggunakan `InstanceRequirements` parameter untuk menentukan beberapa jenis instance untuk grup instance. Perhatikan hal-hal berikut:  
`InstanceType`dan `InstanceRequirements` saling eksklusif. Anda harus menentukan satu atau yang lain, tetapi tidak keduanya.
`InstanceRequirements.InstanceTypes`adalah daftar berurutan yang menentukan prioritas penyediaan. SageMaker HyperPodmencoba untuk menyediakan jenis instance pertama dalam daftar dan kembali ke tipe berikutnya jika kapasitas tidak tersedia. Anda dapat menentukan hingga 20 jenis instans, dan daftar tidak boleh berisi duplikat.
Grup instans fleksibel memerlukan mode penyediaan node berkelanjutan.
Contoh berikut menunjukkan grup instance menggunakan`InstanceRequirements`:  

   ```
   {
       "InstanceGroupName": "flexible-ig",
       "InstanceRequirements": {
           "InstanceTypes": ["ml.p5.48xlarge", "ml.p4d.24xlarge", "ml.g6.48xlarge"]
       },
       "InstanceCount": 10,
       "LifeCycleConfig": {
           "SourceS3Uri": "s3://amzn-s3-demo-bucket-sagemaker/lifecycle-script-directory/src/",
           "OnCreate": "on_create.sh"
       },
       "ExecutionRole": "arn:aws:iam::111122223333:role/iam-role-for-cluster"
   }
   ```

   Perhatikan hal berikut saat mengonfigurasi untuk membuat SageMaker HyperPod cluster baru yang terkait dengan cluster EKS.
   + Anda dapat mengonfigurasi hingga 20 grup instans di bawah `InstanceGroups` parameter.
   + Untuk`Orchestator.Eks.ClusterArn`, tentukan ARN cluster EKS yang ingin Anda gunakan sebagai orkestrator.
   + Untuk`OnStartDeepHealthChecks`, tambahkan `InstanceStress` dan `InstanceConnectivity` aktifkan[Pemeriksaan kesehatan yang mendalam](sagemaker-hyperpod-eks-resiliency-deep-health-checks.md).
   + Untuk`NodeRecovery`, tentukan `Automatic` untuk mengaktifkan pemulihan simpul otomatis. SageMaker HyperPod menggantikan atau me-reboot instance (node) ketika masalah ditemukan oleh agen pemantauan kesehatan.
   + Untuk `Tags` parameter, Anda dapat menambahkan tag khusus untuk mengelola SageMaker HyperPod cluster sebagai AWS sumber daya. Anda dapat menambahkan tag ke klaster Anda dengan cara yang sama seperti Anda menambahkannya di AWS layanan lain yang mendukung penandaan. Untuk mempelajari selengkapnya tentang menandai AWS sumber daya secara umum, lihat [Panduan Pengguna AWS Sumber Daya Tag](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html).
   + Untuk `VpcConfig` parameter, tentukan informasi VPC yang digunakan dalam cluster EKS. Subnet harus bersifat pribadi.
   + Untuk`Orchestrator.Eks.KubernetesConfig.Labels`, Anda dapat secara opsional menentukan label Kubernetes untuk diterapkan ke node. Untuk mengaktifkan partisi GPU dengan Multi-Instance GPU (MIG), tambahkan `nvidia.com/mig.config` label dengan profil MIG yang diinginkan. Misalnya, `"nvidia.com/mig.config": "all-3g.40gb"` mengkonfigurasi semua GPUs dengan profil partisi 3g.40gb. Untuk informasi selengkapnya tentang partisi GPU dan profil yang tersedia, lihat. [Menggunakan partisi GPU di Amazon SageMaker HyperPod](sagemaker-hyperpod-eks-gpu-partitioning.md)

1. Jalankan perintah [create-cluster](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/create-cluster.html) sebagai berikut.
**penting**  
Saat menjalankan `create-cluster` perintah dengan `--cli-input-json` parameter, Anda harus menyertakan `file://` awalan sebelum jalur lengkap ke file JSON. Awalan ini diperlukan untuk memastikan bahwa AWS CLI mengenali input sebagai jalur file. Menghilangkan `file://` awalan menghasilkan kesalahan parameter parsing.

   ```
   aws sagemaker create-cluster \
       --cli-input-json file://complete/path/to/create_cluster.json
   ```

   Ini harus mengembalikan ARN dari cluster baru.
**penting**  
Anda dapat menggunakan operasi [update-cluster](https://docs.aws.amazon.com//cli/latest/reference/ecs/update-cluster.html) untuk menghapus grup instans terbatas (RIG). Ketika RIG diperkecil menjadi 0, sistem file FSx for Lustre tidak akan dihapus. Untuk benar-benar menghapus sistem file FSx for Lustre, Anda harus menghapus RIG sepenuhnya.   
Menghapus RIG tidak akan menghapus artefak apa pun yang disimpan di bucket Amazon S3 yang dikelola layanan. Namun, Anda harus memastikan semua artefak dalam sistem file FSx for Lustre sepenuhnya disinkronkan ke Amazon S3 sebelum dihapus. Sebaiknya tunggu setidaknya 30 menit setelah pekerjaan selesai untuk memastikan sinkronisasi lengkap semua artefak dari sistem file FSx for Lustre ke bucket Amazon S3 yang dikelola layanan.
**penting**  
Saat menggunakan On-Demand Capacity Reservation (ODCR) onboard, Anda harus memetakan grup instans Anda ke ID Availability Zone (ID AZ) yang sama dengan ODCR `OverrideVpcConfig` dengan menyetelnya dengan subnet di ID AZ yang cocok.  
KRITIS: Verifikasi `OverrideVpcConfig` konfigurasi sebelum penerapan untuk menghindari biaya duplikat untuk ODCR dan Kapasitas Sesuai Permintaan.

# Mengambil detail SageMaker HyperPod cluster
<a name="sagemaker-hyperpod-eks-operate-cli-command-cluster-details"></a>

Pelajari cara mengambil detail SageMaker HyperPod klaster menggunakan. AWS CLI

## Jelaskan sebuah cluster
<a name="sagemaker-hyperpod-eks-operate-cli-command-describe-cluster"></a>

Jalankan [describe-cluster](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/describe-cluster.html) untuk memeriksa status cluster. Anda dapat menentukan nama atau ARN cluster.

```
aws sagemaker describe-cluster --cluster-name your-hyperpod-cluster
```

Setelah status cluster berubah**InService**, lanjutkan ke langkah berikutnya. Dengan menggunakan API ini, Anda juga dapat mengambil pesan kegagalan dari menjalankan operasi HyperPod API lainnya.

## Rincian daftar node cluster
<a name="sagemaker-hyperpod-eks-operate-cli-command-list-cluster-nodes"></a>

Jalankan [list-cluster-nodes](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/list-cluster-nodes.html)untuk memeriksa informasi kunci dari node cluster.

```
aws sagemaker list-cluster-nodes --cluster-name your-hyperpod-cluster
```

Ini mengembalikan respons, dan `InstanceId` itulah yang perlu Anda gunakan untuk logging (using`aws ssm`) ke dalamnya.

## Jelaskan detail node cluster
<a name="sagemaker-hyperpod-eks-operate-cli-command-describe-cluster-node"></a>

Jalankan [describe-cluster-node](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/describe-cluster-node.html)untuk mengambil rincian node cluster. Anda bisa mendapatkan ID node cluster dari list-cluster-nodes output. Anda dapat menentukan nama atau ARN cluster.

```
aws sagemaker describe-cluster-node \
    --cluster-name your-hyperpod-cluster \
    --node-id i-111222333444555aa
```

## Daftar cluster
<a name="sagemaker-hyperpod-eks-operate-cli-command-list-clusters"></a>

Jalankan [list-cluster](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/list-clusters.html) untuk mencantumkan semua cluster di akun Anda.

```
aws sagemaker list-clusters
```

Anda juga dapat menambahkan bendera tambahan untuk memfilter daftar cluster ke bawah. Untuk mempelajari selengkapnya tentang apa yang dijalankan perintah ini pada level rendah dan flag tambahan untuk pemfilteran, lihat referensi [ListClusters](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListClusters.html)API.

# Memperbarui konfigurasi SageMaker HyperPod cluster
<a name="sagemaker-hyperpod-eks-operate-cli-command-update-cluster"></a>

Jalankan [update-cluster](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/update-cluster.html) untuk memperbarui konfigurasi cluster.

**catatan**  
Pertimbangan penting:  
Anda tidak dapat mengubah informasi kluster EKS yang dikaitkan dengan HyperPod cluster Anda setelah cluster dibuat. 
Jika pemeriksaan kesehatan mendalam berjalan di cluster, API ini tidak akan berfungsi seperti yang diharapkan. Anda mungkin menemukan pesan kesalahan yang menyatakan bahwa pemeriksaan kesehatan mendalam sedang berlangsung. Untuk memperbarui cluster, Anda harus menunggu sampai pemeriksaan kesehatan mendalam selesai.

1. Buat file permintaan [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html)API dalam format JSON. Pastikan Anda menentukan nama cluster dan nama grup instance yang tepat untuk diperbarui. Untuk setiap grup instans, Anda dapat mengubah jenis instance, jumlah instance, skrip titik masuk konfigurasi siklus hidup, dan jalur ke skrip.
**catatan**  
Anda dapat menggunakan `UpdateCluster` untuk memperkecil atau menghapus seluruh grup instans dari SageMaker HyperPod klaster Anda. Untuk petunjuk tambahan tentang cara mengurangi atau menghapus grup instans, lihat[Penskalaan cluster SageMaker HyperPod](smcluster-scale-down.md).

   1. Untuk`ClusterName`, tentukan nama cluster yang ingin Anda perbarui.

   1. Untuk `InstanceGroupName`

      1. Untuk memperbarui grup instans yang ada, tentukan nama grup instans yang ingin Anda perbarui.

      1. Untuk menambahkan grup instans baru, tentukan nama baru yang tidak ada di klaster Anda.

   1. Untuk `InstanceType`

      1. Untuk memperbarui grup instans yang ada, Anda harus mencocokkan jenis instans yang awalnya Anda tentukan ke grup.

      1. Untuk menambahkan grup instans baru, tentukan jenis instance yang ingin Anda konfigurasikan grup.

      Misalnya grup yang menggunakan `InstanceRequirements` alih-alih`InstanceType`, Anda dapat menambahkan atau menghapus jenis instance dari `InstanceTypes` daftar. Namun, Anda tidak dapat menghapus jenis instance yang memiliki node aktif yang berjalan di atasnya. Anda juga tidak dapat beralih antara `InstanceType` dan `InstanceRequirements` saat memperbarui grup instans yang ada. `InstanceType`dan `InstanceRequirements` saling eksklusif.

   1. Untuk `InstanceCount`

      1. Untuk memperbarui grup instans yang ada, tentukan bilangan bulat yang sesuai dengan jumlah instance yang Anda inginkan. Anda dapat memberikan nilai yang lebih tinggi atau lebih rendah (turun ke 0) untuk menskalakan grup instans naik atau turun.

      1. Untuk menambahkan grup instance baru, tentukan bilangan bulat yang lebih besar atau sama dengan 1. 

   1. Untuk`LifeCycleConfig`, Anda dapat mengubah nilai untuk keduanya `SourceS3Uri` dan `OnCreate` saat Anda ingin memperbarui grup instance.

   1. Untuk `ExecutionRole`

      1. Untuk memperbarui grup instans yang ada, tetap gunakan peran IAM yang sama yang Anda lampirkan selama pembuatan klaster.

      1. Untuk menambahkan grup instance baru, tentukan peran IAM yang ingin Anda lampirkan.

   1. Untuk `ThreadsPerCore`

      1. Untuk memperbarui grup instans yang ada, tetap gunakan nilai yang sama yang Anda tentukan selama pembuatan klaster.

      1. Untuk menambahkan grup instans baru, Anda dapat memilih nilai apa pun dari opsi yang diizinkan per jenis instans. Untuk informasi selengkapnya, cari jenis instans dan lihat kolom **Benang valid per inti** dalam tabel referensi di [inti CPU dan utas per inti CPU per jenis instans](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cpu-options-supported-instances-values.html) di *Panduan Pengguna Amazon EC2*.

   1. Untuk`OnStartDeepHealthChecks`, tambahkan `InstanceStress` dan `InstanceConnectivity` aktifkan[Pemeriksaan kesehatan yang mendalam](sagemaker-hyperpod-eks-resiliency-deep-health-checks.md).

   1. Untuk`NodeRecovery`, tentukan `Automatic` untuk mengaktifkan pemulihan simpul otomatis. SageMaker HyperPod menggantikan atau me-reboot instance (node) ketika masalah ditemukan oleh agen pemantauan kesehatan.

   Cuplikan kode berikut adalah template file permintaan JSON yang dapat Anda gunakan. Untuk informasi selengkapnya tentang sintaks permintaan dan parameter API ini, lihat referensi [UpdateCluster](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html)API.

   ```
   // 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"
   }
   ```

1. Jalankan `update-cluster` perintah berikut untuk mengirimkan permintaan. 

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

# Memperbarui perangkat lunak SageMaker HyperPod platform
<a name="sagemaker-hyperpod-eks-operate-cli-command-update-cluster-software"></a>

Saat Anda membuat SageMaker HyperPod klaster, SageMaker HyperPod pilih Amazon Machine Image (AMI) yang sesuai dengan versi Kubernetes dari klaster Amazon EKS Anda.

Jalankan [update-cluster-software](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/update-cluster-software.html)untuk memperbarui cluster yang ada dengan perangkat lunak dan patch keamanan yang disediakan oleh layanan. SageMaker HyperPod Untuk`--cluster-name`, tentukan nama atau ARN cluster yang akan diperbarui.

**penting**  
Ketika API ini dipanggil, SageMaker HyperPod tidak menguras atau mendistribusikan ulang jobs (Pod) yang berjalan pada node. Pastikan untuk memeriksa apakah ada pekerjaan yang berjalan di node sebelum memanggil API ini.
Proses patching menggantikan volume root dengan AMI yang diperbarui, yang berarti bahwa data Anda sebelumnya yang disimpan dalam volume root instance akan hilang. Pastikan Anda mencadangkan data dari volume root instans ke Amazon S3 atau Amazon FSx for Lustre.
Semua node cluster mengalami downtime (node muncul seperti `<NotReady>` pada output`kubectl get node`) saat patching sedang berlangsung. Kami menyarankan Anda menghentikan semua beban kerja sebelum menambal dan melanjutkannya setelah tambalan selesai.   
Jika patch keamanan gagal, Anda dapat mengambil pesan kegagalan dengan menjalankan [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeCluster.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeCluster.html)API seperti yang diinstruksikan. [Jelaskan sebuah cluster](sagemaker-hyperpod-eks-operate-cli-command-cluster-details.md#sagemaker-hyperpod-eks-operate-cli-command-describe-cluster)

```
aws sagemaker update-cluster-software --cluster-name your-hyperpod-cluster
```

**Upgrade bergulir dengan grup instans fleksibel**  
Misalnya grup yang menggunakan `InstanceRequirements` dengan beberapa tipe instans, peningkatan bergulir menyebarkan setiap jenis instance secara proporsional di seluruh batch. Misalnya, jika grup instans memiliki 100 instance (10 P5 dan 90 G6) dan Anda mengonfigurasi ukuran batch 10%, setiap batch berisi 1 instance P5 dan 9 instans G6.

 Saat memanggil `UpdateClusterSoftware` API, SageMaker HyperPod perbarui node versi Kubernetes dengan memilih yang terbaru [SageMaker HyperPod DLAMI](sagemaker-hyperpod-ref.md#sagemaker-hyperpod-ref-hyperpod-ami) berdasarkan versi Kubernetes dari klaster Amazon EKS Anda. Kemudian menjalankan skrip siklus hidup di bucket Amazon S3 yang Anda tentukan selama pembuatan atau pembaruan klaster. 

Anda dapat memverifikasi versi kubelet dari sebuah node dengan menjalankan perintah. `kubectl describe node`

Node SageMaker HyperPod klaster versi Kubernetes tidak diperbarui secara otomatis saat Anda memperbarui versi klaster Amazon EKS Anda. Setelah memperbarui versi Kubernetes untuk klaster Amazon EKS Anda, Anda harus menggunakan `UpdateClusterSoftware` API untuk memperbarui node SageMaker HyperPod cluster Anda ke versi Kubernetes yang sama.

 Disarankan untuk memperbarui SageMaker HyperPod klaster Anda setelah memperbarui node Amazon EKS Anda, dan hindari perbedaan lebih dari satu versi antara versi cluster Amazon EKS dan versi node SageMaker HyperPod cluster.

Tim SageMaker HyperPod layanan secara teratur meluncurkan [SageMaker HyperPod DLAMI](sagemaker-hyperpod-ref.md#sagemaker-hyperpod-ref-hyperpod-ami) s baru untuk meningkatkan keamanan dan meningkatkan pengalaman pengguna. Kami menyarankan Anda untuk selalu memperbarui ke SageMaker HyperPod DLAMI terbaru. Untuk pembaruan SageMaker HyperPod DLAMI future untuk patch keamanan, tindak lanjuti dengan. [Catatan SageMaker HyperPod rilis Amazon](sagemaker-hyperpod-release-notes.md)

**catatan**  
Anda hanya dapat menjalankan API ini secara terprogram. Fungsionalitas penambalan tidak diterapkan di UI SageMaker HyperPod konsol.

# Mengakses node SageMaker HyperPod cluster
<a name="sagemaker-hyperpod-eks-operate-access-through-terminal"></a>

Anda dapat langsung mengakses node SageMaker HyperPod cluster dalam layanan menggunakan AWS CLI perintah untuk AWS Systems Manager (SSM). Jalankan `aws ssm start-session` dengan nama host node dalam format`sagemaker-cluster:[cluster-id]_[instance-group-name]-[instance-id]`. Anda dapat mengambil ID cluster, ID instance, dan nama grup instance dari [SageMaker HyperPod konsol](sagemaker-hyperpod-operate-slurm-console-ui.md#sagemaker-hyperpod-operate-slurm-console-ui-view-details-of-clusters) atau dengan menjalankan `describe-cluster` dan `list-cluster-nodes` dari [AWS CLI perintah untuk SageMaker HyperPod](sagemaker-hyperpod-operate-slurm-cli-command.md#sagemaker-hyperpod-operate-slurm-cli-command-list-cluster-nodes). Misalnya, jika ID cluster Anda`aa11bbbbb222`, nama node cluster adalah`controller-group`, dan ID node cluster adalah`i-111222333444555aa`, `start-session` perintah SSM harus sebagai berikut.

**catatan**  
Jika Anda belum menyiapkan AWS Systems Manager, ikuti instruksi yang diberikan di[Menyiapkan AWS Systems Manager dan Menjalankan Sebagai untuk kontrol akses pengguna cluster](sagemaker-hyperpod-prerequisites.md#sagemaker-hyperpod-prerequisites-ssm).

```
$ aws ssm start-session \
    --target sagemaker-cluster:aa11bbbbb222_controller-group-i-111222333444555aa \
    --region us-west-2
Starting session with SessionId: s0011223344aabbccdd
root@ip-111-22-333-444:/usr/bin#
```

# Penskalaan cluster SageMaker HyperPod
<a name="smcluster-scale-down"></a>

Anda dapat mengurangi jumlah instans yang berjalan di SageMaker HyperPod klaster Amazon Anda. Anda mungkin ingin menurunkan klaster karena berbagai alasan, seperti pengurangan pemanfaatan sumber daya atau pengoptimalan biaya.

Halaman berikut menguraikan dua pendekatan utama untuk menurunkan skala:
+ **Turunkan skala pada tingkat grup instans:** Pendekatan ini menggunakan `UpdateCluster` API, yang dengannya Anda dapat:
  + Turunkan jumlah instance untuk grup instance tertentu secara independen. SageMaker AI menangani penghentian node dengan cara yang mencapai jumlah instans target baru yang telah Anda tetapkan untuk setiap grup. Lihat [Turunkan skala grup instans](#smcluster-scale-down-updatecluster).
  + Hapus grup instans sepenuhnya dari cluster Anda. Lihat [Hapus grup instance](#smcluster-remove-instancegroup).
+ **Turunkan skala pada tingkat instans:** Pendekatan ini menggunakan `BatchDeleteClusterNodes` API, yang dengannya Anda dapat menentukan masing-masing node yang ingin Anda akhiri. Lihat [Turunkan skala pada tingkat instans](#smcluster-scale-down-batchdelete).

**catatan**  
Saat menurunkan skala pada tingkat instans dengan`BatchDeleteCusterNodes`, Anda hanya dapat menghentikan maksimum 99 instans sekaligus. `UpdateCluster`mendukung penghentian sejumlah instance.

## Pertimbangan penting
<a name="smcluster-scale-down-considerations"></a>
+ Saat memperkecil klaster, Anda harus memastikan bahwa sumber daya yang tersisa cukup untuk menangani beban kerja Anda dan bahwa setiap migrasi atau penyeimbangan data yang diperlukan ditangani dengan benar untuk menghindari gangguan. 
+ Pastikan untuk mencadangkan data Anda ke Amazon S3 atau sistem file FSx for Lustre sebelum menjalankan API pada grup node pekerja. Ini dapat membantu mencegah potensi kehilangan data dari volume root instance. Untuk informasi selengkapnya tentang pencadangan, lihat[Gunakan skrip cadangan yang disediakan oleh SageMaker HyperPod](sagemaker-hyperpod-operate-slurm-cli-command.md#sagemaker-hyperpod-operate-slurm-cli-command-update-cluster-software-backup).
+ Untuk menjalankan API ini pada cluster yang ada, Anda harus terlebih dahulu menambal cluster dengan menjalankan [ UpdateClusterSoftware](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateClusterSoftware.html)API. Untuk informasi selengkapnya tentang menambal cluster, lihat[Perbarui perangkat lunak SageMaker HyperPod platform cluster](sagemaker-hyperpod-operate-slurm-cli-command.md#sagemaker-hyperpod-operate-slurm-cli-command-update-cluster-software).
+ Pengukuran/penagihan untuk instans sesuai permintaan akan secara otomatis dihentikan setelah penurunan skala. Untuk menghentikan pengukuran untuk instans cadangan yang diperkecil, Anda harus menghubungi tim AWS akun Anda untuk mendapatkan dukungan.
+ Anda dapat menggunakan kapasitas yang dirilis dari instans cadangan yang diperkecil untuk meningkatkan skala klaster lain. SageMaker HyperPod 

## Turunkan skala pada tingkat grup instans
<a name="smcluster-scale-down-or-delete"></a>

[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html)Operasi ini memungkinkan Anda untuk membuat perubahan pada konfigurasi SageMaker HyperPod klaster Anda, seperti mengurangi jumlah instance grup instans atau menghapus seluruh grup instans. Ini dapat berguna saat Anda ingin menyesuaikan sumber daya yang dialokasikan ke klaster berdasarkan perubahan beban kerja, mengoptimalkan biaya, atau mengubah jenis instans grup instans.

### Turunkan skala grup instans
<a name="smcluster-scale-down-updatecluster"></a>

Gunakan pendekatan ini ketika Anda memiliki grup instans yang menganggur dan aman untuk menghentikan salah satu instance untuk penskalaan. Saat Anda mengirimkan `UpdateCluster` permintaan untuk menurunkan skala, HyperPod secara acak memilih instance untuk penghentian dan menskalakan ke jumlah node yang ditentukan untuk grup instans.

**Perilaku penskalaan dengan grup instans yang fleksibel**  
Untuk grup instance yang digunakan `InstanceRequirements` dengan beberapa tipe instance, HyperPod mengakhiri tipe instance prioritas terendah terlebih dahulu selama scale-down. Prioritas ditentukan oleh urutan jenis instance dalam `InstanceTypes` daftar, di mana tipe pertama memiliki prioritas tertinggi. Ini melindungi instance dengan prioritas lebih tinggi, yang biasanya berkinerja lebih tinggi, selama operasi penskalaan.

**catatan**  
Saat Anda menskalakan jumlah instance dalam grup instans ke 0, semua instance dalam grup itu akan dihentikan. Namun, grup instance itu sendiri akan tetap ada sebagai bagian dari SageMaker HyperPod cluster. Anda dapat menskalakan cadangan grup instans di lain waktu, menggunakan konfigurasi grup instance yang sama.   
Atau, Anda dapat memilih untuk menghapus grup instance secara permanen. Untuk informasi selengkapnya, lihat [Hapus grup instance](#smcluster-remove-instancegroup).

**Untuk menurunkan skala dengan `UpdateCluster`**

1. Ikuti langkah-langkah yang diuraikan dalam[Memperbarui konfigurasi SageMaker HyperPod cluster](sagemaker-hyperpod-eks-operate-cli-command-update-cluster.md). Saat Anda mencapai langkah **1.d** di mana Anda menentukan **InstanceCount**bidang, masukkan angka yang lebih kecil dari jumlah instance saat ini untuk menurunkan skala cluster.

1. Jalankan AWS CLI perintah [update-cluster](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/update-cluster.html) untuk mengirimkan permintaan Anda.

Berikut ini adalah contoh dari objek `UpdateCluster` JSON. Pertimbangkan kasus di mana grup instans Anda saat ini memiliki 2 instance yang sedang berjalan. Jika Anda mengatur **InstanceCount**bidang ke 1, seperti yang ditunjukkan dalam contoh, maka HyperPod secara acak memilih salah satu contoh dan menghentikannya.

```
{
  "ClusterName": "name-of-cluster-to-update",
  "InstanceGroups": [
    {
      "InstanceGroupName": "training-instances",
      "InstanceType": "instance-type",
      "InstanceCount": 1,
      "LifeCycleConfig": {
        "SourceS3Uri": "s3://amzn-s3-demo-bucket/training-script.py",
        "OnCreate": "s3://amzn-s3-demo-bucket/setup-script.sh"
      },
      "ExecutionRole": "arn:aws:iam::123456789012:role/SageMakerRole",
      "ThreadsPerCore": number-of-threads,
      "OnStartDeepHealthChecks": [
        "InstanceStress",
        "InstanceConnectivity"
      ]
    }
  ],
  "NodeRecovery": "Automatic"
}
```

### Hapus grup instance
<a name="smcluster-remove-instancegroup"></a>

Anda dapat menggunakan [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html)operasi untuk menghapus seluruh grup instans dari SageMaker HyperPod cluster Anda ketika mereka tidak lagi diperlukan. Ini melampaui penskalaan sederhana, memungkinkan Anda untuk sepenuhnya menghilangkan grup instance tertentu dari konfigurasi klaster Anda. 

**catatan**  
Saat menghapus grup instance:  
Semua instance dalam grup yang ditargetkan dihentikan.
Seluruh konfigurasi grup dihapus dari cluster.
Beban kerja apa pun yang berjalan pada grup instance tersebut dihentikan.

**Untuk menghapus grup instance dengan `UpdateCluster`**

1. Saat mengikuti langkah-langkah yang diuraikan dalam[Memperbarui konfigurasi SageMaker HyperPod cluster](sagemaker-hyperpod-eks-operate-cli-command-update-cluster.md):

   1. Tetapkan `InstanceGroupsToDelete` parameter opsional di `UpdateCluster` JSON Anda dan berikan daftar nama grup instance yang dipisahkan koma yang ingin Anda hapus.

   1.  Saat Anda menentukan `InstanceGroups` daftar, pastikan bahwa spesifikasi grup instans yang Anda hapus tidak lagi tercantum dalam `InstanceGroups` daftar.

1. Jalankan AWS CLI perintah [update-cluster](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/update-cluster.html) untuk mengirimkan permintaan Anda.

**penting**  
 SageMaker HyperPod Cluster Anda harus selalu memelihara setidaknya satu grup instans.
Pastikan semua data penting dicadangkan sebelum dihapus.
Proses penghapusan tidak dapat dibatalkan.

Berikut ini adalah contoh dari objek `UpdateCluster` JSON. *Pertimbangkan kasus di mana cluster saat ini memiliki 3 grup instans, *pelatihan, pelatihan* *prototipe, dan kelompok penyajian* inferensi.* Anda ingin menghapus grup pelatihan *prototipe*.

```
{
  "ClusterName": "name-of-cluster-to-update",
  "InstanceGroups": [
    {
      "InstanceGroupName": "training",
      "InstanceType": "instance-type",
      "InstanceCount": ,
      "LifeCycleConfig": {
        "SourceS3Uri": "s3://amzn-s3-demo-bucket/training-script.py",
        "OnCreate": "s3://amzn-s3-demo-bucket/setup-script.sh"
      },
      "ExecutionRole": "arn:aws:iam::123456789012:role/SageMakerRole",
      "ThreadsPerCore": number-of-threads,
      "OnStartDeepHealthChecks": [
        "InstanceStress",
        "InstanceConnectivity"
      ]
    },
    {
      "InstanceGroupName": "inference-serving",
      "InstanceType": "instance-type",
      "InstanceCount": 2,
      [...]
    },
  ],
  "InstanceGroupsToDelete": [ "prototype-training" ],
  "NodeRecovery": "Automatic"
}
```

## Turunkan skala pada tingkat instans
<a name="smcluster-scale-down-batchdelete"></a>

`BatchDeleteClusterNodes`Operasi ini memungkinkan Anda untuk menurunkan skala SageMaker HyperPod cluster dengan menentukan node individual yang ingin Anda akhiri. `BatchDeleteClusterNodes`menyediakan kontrol yang lebih granular untuk penghapusan node yang ditargetkan dan optimasi cluster. Misalnya, Anda dapat menggunakan `BatchDeleteClusterNodes` untuk menghapus node yang ditargetkan untuk pemeliharaan, peningkatan bergulir, atau menyeimbangkan kembali sumber daya secara geografis.

**Permintaan dan respons API**

Saat Anda mengirimkan `BatchDeleteClusterNodes` permintaan, SageMaker HyperPod menghapus node berdasarkan instancenya IDs. API menerima permintaan dengan nama cluster dan daftar node IDs yang akan dihapus. 

Tanggapan tersebut mencakup dua bagian: 
+  `Failed`: Daftar kesalahan tipe `[ BatchDeleteClusterNodesError ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_BatchDeleteClusterNodesError.html)` - satu per contoh ID.
+  `Successful`: Daftar instance IDs berhasil dihentikan. 

**Validasi dan penanganan kesalahan**

API melakukan berbagai validasi, seperti:
+ Memverifikasi format ID node (awalan `i-` dan struktur ID instans Amazon EC2). 
+ Memeriksa panjang daftar node, dengan batas 99 atau lebih sedikit node IDs dalam satu `BatchDeleteClusterNodes` permintaan.
+ Memastikan klaster yang valid dengan nama SageMaker HyperPod cluster input hadir dan tidak ada operasi tingkat cluster (pembaruan, pembaruan sistem, penambalan, atau penghapusan) yang sedang berlangsung.
+ Menangani kasus di mana instance tidak ditemukan, memiliki status tidak valid, atau sedang digunakan.

**Kode Respons API**
+  API mengembalikan kode `200` status untuk berhasil (misalnya, semua node input berhasil validasi) atau sebagian permintaan berhasil (misalnya, beberapa node input gagal validasi). 
+  Jika semua validasi ini gagal (misalnya, semua node input gagal validasi), API akan mengembalikan respons Permintaan `400` Buruk dengan pesan kesalahan dan kode kesalahan yang sesuai. 

**Contoh**

Berikut ini adalah contoh **penskalaan cluster pada tingkat instance** menggunakan: AWS CLI

```
aws sagemaker batch-delete-cluster-nodes --cluster-name "cluster-name" --node-ids '["i-111112222233333", "i-111112222233333"]'
```

# Menghapus cluster SageMaker HyperPod
<a name="sagemaker-hyperpod-eks-operate-cli-command-delete-cluster"></a>

Jalankan [delete-cluster](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/delete-cluster.html) untuk menghapus cluster. Anda dapat menentukan nama atau ARN cluster.

```
aws sagemaker delete-cluster --cluster-name your-hyperpod-cluster
```

API ini hanya membersihkan SageMaker HyperPod sumber daya dan tidak menghapus sumber daya apa pun dari kluster EKS terkait. Ini termasuk cluster Amazon EKS, identitas EKS Pod, FSx volume Amazon, dan add-on EKS. Ini juga termasuk konfigurasi awal yang Anda tambahkan ke cluster EKS Anda. Jika Anda ingin membersihkan semua sumber daya, pastikan Anda juga membersihkan sumber daya EKS secara terpisah. 

Pastikan Anda menghapus sumber daya terlebih dahulu, diikuti oleh SageMaker HyperPod sumber daya EKS. Melakukan penghapusan dalam urutan terbalik dapat mengakibatkan sumber daya yang tersisa.

**penting**  
Ketika API ini dipanggil, SageMaker HyperPod tidak menguras atau mendistribusikan ulang jobs (Pod) yang berjalan pada node. Pastikan untuk memeriksa apakah ada pekerjaan yang berjalan di node sebelum memanggil API ini.