

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

# Penyediaan berkelanjutan untuk operasi klaster yang disempurnakan di Amazon EKS
<a name="sagemaker-hyperpod-scaling-eks"></a>

 SageMaker HyperPod Cluster Amazon yang dibuat dengan orkestrasi Amazon EKS sekarang mendukung penyediaan berkelanjutan, kemampuan baru yang memungkinkan fleksibilitas dan efisiensi yang lebih besar dalam menjalankan beban kerja skala besar. AI/ML Penyediaan berkelanjutan memungkinkan Anda memulai pelatihan dengan cepat, menskalakan dengan mulus, melakukan pemeliharaan tanpa mengganggu operasi, dan memiliki visibilitas terperinci ke dalam operasi klaster. 

**catatan**  
Penyediaan berkelanjutan tersedia sebagai konfigurasi opsional untuk HyperPod cluster yang dibuat dengan orkestrasi EKS. Cluster yang dibuat dengan orkestrasi Slurm menggunakan model penskalaan yang berbeda.

## Cara kerjanya
<a name="sagemaker-hyperpod-scaling-eks-how"></a>

Sistem penyediaan berkelanjutan memperkenalkan arsitektur negara yang diinginkan yang menggantikan model berbasis permintaan tradisional. Arsitektur baru ini memungkinkan operasi paralel dan non-pemblokiran di berbagai tingkat sumber daya sambil menjaga stabilitas dan kinerja sistem. Sistem penyediaan berkelanjutan:
+ **Menerima permintaan**: Merekam jumlah instans target untuk setiap grup instans
+ **Memulai penyediaan**: Mulai meluncurkan instance untuk memenuhi jumlah target

  **Melacak kemajuan**: Memantau setiap upaya peluncuran instance dan mencatat statusnya
+ **Menangani kegagalan**: Secara otomatis mencoba ulang peluncuran yang gagal

Penyediaan berkelanjutan dinonaktifkan secara default. Untuk menggunakan fitur ini, atur `--node-provisioning-mode` ke`Continuous`.

Dengan penyediaan berkelanjutan diaktifkan, Anda dapat memulai beberapa operasi penskalaan secara bersamaan tanpa menunggu operasi sebelumnya selesai. Ini memungkinkan Anda menskalakan grup instans yang berbeda dalam kluster yang sama secara bersamaan dan mengirimkan beberapa permintaan penskalaan ke grup instans yang sama. 

Penyediaan berkelanjutan juga memberi Anda akses ke [DescribeClusterEvent](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeClusterEvent.html)dan [ListClusterEvent](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListClusterEvents.html)untuk pemantauan acara terperinci dan visibilitas operasional. 

## Pengukuran penggunaan
<a name="sagemaker-hyperpod-scaling-eks-metering"></a>

HyperPod cluster dengan penyediaan berkelanjutan menggunakan pengukuran tingkat instans untuk memberikan penagihan akurat yang mencerminkan penggunaan sumber daya aktual. Pendekatan pengukuran ini berbeda dari penagihan tingkat cluster tradisional dengan melacak setiap instance secara independen.

**Penagihan tingkat instans**

Dengan penyediaan berkelanjutan, penagihan dimulai dan berhenti di tingkat instans individu daripada menunggu perubahan status tingkat cluster. Pendekatan ini memberikan manfaat sebagai berikut:
+ **Akurasi penagihan yang tepat**: Penagihan dimulai saat eksekusi skrip siklus hidup dimulai. Jika skrip siklus hidup gagal, ketentuan instance akan dicoba ulang dan Anda akan dikenakan biaya selama durasi runtime skrip siklus hidup.
+ **Pengukuran independen**: Siklus hidup penagihan setiap instans dikelola secara terpisah, mencegah kesalahan penagihan berjenjang
+ **Pembaruan penagihan waktu nyata**: Penagihan dimulai saat instance mulai mengeksekusi skrip siklus hidupnya dan berhenti saat instance memasuki status penghentian

**Siklus hidup penagihan**

Setiap instance di HyperPod klaster Anda mengikuti siklus hidup penagihan ini:
+ **Penagihan dimulai**: Ketika instance berhasil diluncurkan dan mulai mengeksekusi skrip konfigurasi siklus hidupnya
+ **Penagihan berlanjut**: Sepanjang masa operasional instans
+ **Penagihan berhenti**: Saat instance memasuki status penghentian, terlepas dari alasan penghentian

**catatan**  
Penagihan tidak dimulai untuk instance yang gagal diluncurkan. Jika peluncuran instans gagal karena kapasitas yang tidak mencukupi atau masalah lain, Anda tidak dikenakan biaya untuk upaya yang gagal tersebut. Penagihan dihitung pada tingkat instans dan biaya dikumpulkan dan dilaporkan di bawah Amazon Resource Name (ARN) klaster Anda. 

## Buat klaster dengan penyediaan berkelanjutan diaktifkan
<a name="sagemaker-hyperpod-scaling-eks-create"></a>

**catatan**  
Anda harus memiliki kluster Amazon EKS yang sudah ada yang dikonfigurasi dengan jaringan VPC dan bagan Helm yang diperlukan diinstal. Selain itu, siapkan skrip konfigurasi siklus hidup dan unggah ke bucket Amazon S3 yang dapat diakses oleh peran eksekusi Anda. Untuk informasi selengkapnya, lihat [Mengelola SageMaker HyperPod cluster yang diatur oleh Amazon EKS](sagemaker-hyperpod-eks-operate.md).

 AWS CLI Operasi berikut membuat HyperPod cluster dengan satu grup instance dan penyediaan berkelanjutan diaktifkan.

```
aws sagemaker create-cluster \ 
--cluster-name $HP_CLUSTER_NAME \
--orchestrator 'Eks={ClusterArn='$EKS_CLUSTER_ARN'}' \
--vpc-config '{
   "SecurityGroupIds": ["'$SECURITY_GROUP'"],
   "Subnets": ["'$SUBNET'"]
}' \
--instance-groups '{
   "InstanceGroupName": "ig-1",
   "InstanceType": "ml.c5.2xlarge",
   "InstanceCount": 2,
   "LifeCycleConfig": {
      "SourceS3Uri": "s3://'$BUCKET_NAME'",
      "OnCreate": "on_create_noop.sh"
   },
   "ExecutionRole": "'$EXECUTION_ROLE'",
   "ThreadsPerCore": 1,
   "TrainingPlanArn": ""
}' \
--node-provisioning-mode Continuous


// Expected Output:
{
    "ClusterArn": "arn:aws:sagemaker:us-west-2:<account-id>:cluster/<cluster-id>"
}
```

Setelah Anda membuat cluster Anda, Anda dapat menggunakan [ListClusterNodes](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListClusterNodes.html)atau [DescribeClusterNode](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeClusterNode.html)untuk mengetahui informasi lebih lanjut tentang node di cluster. 

Memanggil operasi ini akan mengembalikan [ClusterInstanceStatusDetails](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ClusterInstanceStatusDetails.html)objek dengan salah satu nilai berikut: 
+  **Running**: Node sehat dan terdaftar dengan orkestrator cluster (EKS). 
+  **Kegagalan**: Penyediaan node gagal tetapi sistem akan secara otomatis mencoba lagi penyediaan dengan instans EC2 baru. 
+  **Tertunda**: Node sedang disediakan atau di-boot ulang. 
+  **ShuttingDown**: Penghentian node sedang berlangsung. Node akan bertransisi ke status Kegagalan jika penghentian mengalami masalah, atau akan berhasil dihapus dari cluster. 
+  **SystemUpdating**: Node sedang menjalani penambalan AMI, baik dipicu secara manual atau sebagai bagian dari menambal cronjobs. 
+  **DeepHealthCheckInProgress**: [Pemeriksaan kesehatan mendalam (DHCs)](sagemaker-hyperpod-eks-resiliency-deep-health-checks.md) sedang dilakukan. Ini bisa memakan waktu antara beberapa menit hingga beberapa jam tergantung pada sifat tes. Node yang buruk diganti dan node yang sehat beralih ke Running. 
+  **NotFound**: Digunakan [BatchAddClusterNodes](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_BatchAddClusterNodes.html)sebagai tanggapan untuk menunjukkan node telah dihapus selama pemutaran ulang idempoten. 

## Persyaratan kapasitas minimum (MinCount)
<a name="sagemaker-hyperpod-scaling-eks-mincount"></a>

 MinCount Fitur ini memungkinkan Anda menentukan jumlah minimum instance yang harus berhasil disediakan sebelum grup instans beralih ke status. `InService` Fitur ini memberikan kontrol yang lebih baik atas operasi penskalaan dan membantu mencegah skenario di mana grup instans yang disediakan sebagian tidak dapat digunakan secara efektif untuk beban kerja pelatihan.

**penting**  
MinCount bukan jaminan permanen kapasitas minimum. Ini hanya memastikan bahwa jumlah minimum instance yang ditentukan tersedia ketika grup instance pertama kali menjadi`InService`. Pencelupan singkat di bawah ini MinCount dapat terjadi selama operasi normal seperti penggantian instans yang tidak sehat atau kegiatan pemeliharaan.

### Bagaimana cara MinCount kerja
<a name="sagemaker-hyperpod-scaling-eks-mincount-how"></a>

Saat Anda membuat atau memperbarui grup instans dengan MinCount diaktifkan, perilaku berikut akan terjadi:
+ **Grup instans baru**: Grup instance tetap dalam `Creating` status hingga setidaknya MinCount instance berhasil disediakan dan siap. Setelah ambang batas ini terpenuhi, grup instance bertransisi ke`InService`.
+ **Grup instans yang** ada: Saat memperbarui MinCount grup instans yang ada, status berubah `Updating` hingga MinCount persyaratan baru terpenuhi.
+ **Penskalaan berkelanjutan**: Jika TargetCount lebih besar dari MinCount, sistem penskalaan berkelanjutan terus mencoba meluncurkan instance tambahan hingga tercapai. TargetCount 
+ **Timeout dan rollback**: Jika MinCount tidak dapat dipenuhi dalam waktu 3 jam, sistem secara otomatis memutar kembali grup instans ke keadaan baik terakhir yang diketahui. Untuk informasi selengkapnya tentang perilaku rollback, lihat Perilaku [rollback otomatis](#sagemaker-hyperpod-scaling-eks-mincount-rollback).

### Status grup instans selama MinCount operasi
<a name="sagemaker-hyperpod-scaling-eks-mincount-status"></a>

Grup instans dengan MinCount konfigurasi menunjukkan perilaku status berikut:

Membuat  
Untuk grup instance baru saat CurrentCount < MinCount. Grup instans tetap dalam status ini sampai persyaratan kapasitas minimum terpenuhi.

Memperbarui  
Untuk grup instance yang ada saat MinCount dimodifikasi dan CurrentCount < MinCount. Grup instans tetap dalam status ini sampai persyaratan kapasitas minimum yang baru terpenuhi.

InService  
Ketika MinCount ≤ CurrentCount ≤ TargetCount. Grup instance siap digunakan dan semua operasi mutasi tidak diblokir.

Selama `Creating` atau `Updating` status, pembatasan berikut berlaku:
+ Operasi mutasi seperti`BatchAddClusterNodes`,`BatchDeleteClusterNodes`, atau `UpdateClusterSoftware` diblokir
+ Anda masih dapat memodifikasi MinCount dan TargetCount nilai untuk memperbaiki kesalahan konfigurasi
+ Penghapusan grup Cluster dan Instance selalu diizinkan

### Perilaku rollback otomatis
<a name="sagemaker-hyperpod-scaling-eks-mincount-rollback"></a>

Jika grup instans tidak dapat mencapainya MinCount dalam waktu 3 jam, sistem secara otomatis memulai rollback untuk mencegah penantian yang tidak terbatas:
+ **Grup instance baru**: MinCount dan TargetCount diatur ulang ke (0, 0)
+ **Grup instance yang ada**: MinCount dan TargetCount dikembalikan ke nilainya dari `InService` status terakhir
+ **Pemilihan instans untuk penghentian**: Jika instance perlu dihentikan selama rollback, sistem memilih instance yang tidak sehat terlebih dahulu, lalu yang terbaru disediakan.
+ **Transisi status**: Grup instans segera beralih ke `InService` status setelah inisiasi rollback, memungkinkan sistem penskalaan berkelanjutan untuk mengelola kapasitas sesuai dengan pengaturan rollback

Batas waktu 3 jam disetel ulang setiap kali MinCount diperbarui. Misalnya, jika Anda memperbarui MinCount beberapa kali, periode batas waktu mulai baru dari pembaruan terbaru.

### MinCount acara
<a name="sagemaker-hyperpod-scaling-eks-mincount-events"></a>

Sistem memancarkan peristiwa tertentu untuk membantu Anda melacak MinCount operasi:
+ **Kapasitas minimum tercapai**: Dipancarkan ketika grup instans berhasil mencapai MinCount dan transisi ke `InService`
+ **Rollback dimulai: Dipancarkan** saat batas waktu 3 jam berakhir dan rollback otomatis dimulai

Anda dapat memantau peristiwa ini menggunakan [ListClusterEvents](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListClusterEvents.html)untuk melacak kemajuan MinCount operasi Anda.

### Penggunaan API
<a name="sagemaker-hyperpod-scaling-eks-mincount-api"></a>

MinCount ditentukan menggunakan `MinInstanceCount` parameter dalam konfigurasi grup instance:

```
aws sagemaker create-cluster \
--cluster-name $HP_CLUSTER_NAME \
--orchestrator 'Eks={ClusterArn='$EKS_CLUSTER_ARN'}' \
--vpc-config '{
   "SecurityGroupIds": ["'$SECURITY_GROUP'"],
   "Subnets": ["'$SUBNET'"]
}' \
--instance-groups '{
   "InstanceGroupName": "worker-group",
   "InstanceType": "ml.p4d.24xlarge",
   "InstanceCount": 64,
   "MinInstanceCount": 50,
   "LifeCycleConfig": {
      "SourceS3Uri": "s3://'$BUCKET_NAME'",
      "OnCreate": "on_create.sh"
   },
   "ExecutionRole": "'$EXECUTION_ROLE'"
}' \
--node-provisioning-mode Continuous
```

Pertimbangan utama untuk MinCount penggunaan:
+ `MinInstanceCount`harus antara 0 dan `InstanceCount` (inklusif) nilai dari kelompok instance yang ditentukan dalam [CreateCluster](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateCluster.html)atau permintaan [UpdateCluster](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html)
+ Pengaturan `MinInstanceCount` ke 0 (default) mempertahankan perilaku penskalaan berkelanjutan standar
+ Pengaturan `MinInstanceCount` sama dengan `InstanceCount` memberikan perilaku all-or-nothing penskalaan
+ MinCount hanya tersedia untuk cluster dengan `NodeProvisioningMode` set ke `Continuous`