

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

# Buat NodePool
<a name="sagemaker-hyperpod-eks-autoscaling-nodepool"></a>

`NodePool`Set kendala pada node yang dapat dibuat oleh Karpenter dan pod yang dapat berjalan pada node tersebut. `NodePool`Dapat dikonfigurasi untuk melakukan hal-hal seperti:
+ Batasi pembuatan node ke zona tertentu, tipe instance, dan arsitektur komputer.
+ Tentukan label atau taint untuk membatasi pod yang dapat berjalan pada node yang dibuat Karpenter.

**catatan**  
HyperPod penyedia mendukung serangkaian persyaratan Kubernetes dan Karpenter terkenal yang dijelaskan di bawah ini. 

Langkah-langkah berikut mencakup cara membuat file`NodePool`.

1. Buat file YAMG bernama nodepool.yaml dengan konfigurasi yang Anda inginkan. `NodePool`

1. Anda dapat menggunakan konfigurasi sampel di bawah ini.

   Cari `Ready` di bawah `Conditions` untuk menunjukkan semua sumber daya dependen berfungsi dengan baik.

   ```
   apiVersion: karpenter.sh/v1
   kind: NodePool
   metadata:
    name: sample-np
   spec:
    template:
      spec:
        nodeClassRef:
         group: karpenter.sagemaker.amazonaws.com
         kind: HyperpodNodeClass
         name: multiazc5
        expireAfter: Never
        requirements:
           - key: node.kubernetes.io/instance-type
             operator: Exists
   ```

1. Terapkan `NodePool` ke cluster Anda:

   ```
   kubectl apply -f nodepool.yaml
   ```

1. Pantau `NodePool` status untuk memastikan `Ready` kondisi dalam status diatur ke`True`:

   ```
   kubectl get nodepool sample-np -oyaml
   ```

   ```
   apiVersion: karpenter.sh/v1
   kind: NodePool
   metadata:
     name: <nodepool-name>
     uid: <resource-uid>
     ...
   spec:
     disruption:
       budgets:
       - nodes: 90%
       consolidateAfter: 0s
       consolidationPolicy: WhenEmptyOrUnderutilized
     template:
       spec:
         expireAfter: 720h
         nodeClassRef:
           group: karpenter.sagemaker.amazonaws.com
           kind: HyperpodNodeClass
           name: <nodeclass-name>
         requirements:
         - key: node.kubernetes.io/instance-type
           operator: Exists
   status:
     conditions:
     - lastTransitionTime: "<timestamp>"
       message: ""
       observedGeneration: 2
       reason: ValidationSucceeded
       status: "True"
       type: ValidationSucceeded
     - lastTransitionTime: "<timestamp>"
       message: ""
       observedGeneration: 2
       reason: NodeClassReady
       status: "True"
       type: NodeClassReady
     - lastTransitionTime: "<timestamp>"
       message: ""
       observedGeneration: 2
       reason: Ready
       status: "True"
       type: Ready
   ```

**Label yang Didukung untuk Penyedia Karpenter HyperPod**

Ini adalah batasan dan persyaratan opsional yang dapat Anda tentukan dalam konfigurasi Anda. `NodePool`


|  Jenis Kebutuhan  |  Tujuan  |  Gunakan Case/Supported Nilai  |  Rekomendasi  | 
| --- | --- | --- | --- | 
|  Jenis Instance (`node.kubernetes.io/instance-type`)  |  Mengontrol jenis SageMaker instance mana yang dapat dipilih Karpenter  |  Alih-alih membatasi hanya ml.c5.xlarge, biarkan Karpenter memilih dari semua jenis yang tersedia di grup instance Anda  |  Biarkan ini tidak terdefinisi atau gunakan operator Exists untuk memberi Karpenter fleksibilitas maksimum dalam memilih jenis instans hemat biaya  | 
|  Zona Ketersediaan (`topology.kubernetes.io/zone`)  |  Mengontrol node zona AWS ketersediaan mana yang dapat dibuat  |  Nama zona tertentu seperti us-east-1c. Gunakan saat Anda membutuhkan pod untuk berjalan di zona tertentu karena alasan latensi atau kepatuhan  | T/A | 
|  Arsitektur (`kubernetes.io/arch`)  |  Menentukan arsitektur CPU  |  Hanya amd64 (saat ini tidak ada dukungan ARM)  |  T/A  | 