

 **Contribuisci a migliorare questa pagina** 

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Per contribuire a questa guida per l'utente, scegli il GitHub link **Modifica questa pagina** nel riquadro destro di ogni pagina.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Eseguire la migrazione da Karpenter alla modalità automatica di EKS utilizzando kubectl
<a name="auto-migrate-karpenter"></a>

Questo argomento illustra il processo di migrazione dei carichi di lavoro da Karpenter alla modalità automatica di Amazon EKS utilizzando kubectl. La migrazione può essere eseguita gradualmente, consentendo di spostare i carichi di lavoro al proprio ritmo, mantenendo al contempo la stabilità del cluster e la disponibilità delle applicazioni durante la transizione.

L' step-by-stepapproccio descritto di seguito consente di eseguire Karpenter ed EKS Auto Mode fianco a fianco durante il periodo di migrazione. Questa strategia a doppio funzionamento aiuta a garantire una transizione fluida consentendoti di convalidare il comportamento del carico di lavoro in modalità automatica di EKS prima di disattivare completamente Karpenter. Puoi eseguire la migrazione delle applicazioni singolarmente o in gruppo, garantendo la flessibilità necessaria per soddisfare i requisiti operativi specifici e la tolleranza al rischio.

## Prerequisiti
<a name="_prerequisites"></a>

Prima di iniziare la migrazione, assicurati di avere:
+ Karpenter v1.1 o versioni successive deve essere installato sul cluster. Per ulteriori informazioni, consulta [Upgrading to 1.1.0\$1](https://karpenter.sh/docs/upgrading/upgrade-guide/#upgrading-to-110) nei documenti di Karpenter.
+  `kubectl` installato e connesso al cluster. Per ulteriori informazioni, consulta [Configurazione per l’utilizzo di Amazon EKS](setting-up.md).

Questo argomento presuppone che tu abbia familiarità con Karpenter e. NodePools Per ulteriori informazioni, consulta [Karpenter Documentation](https://karpenter.sh/). 

## Fase 1: abilitare modalità automatica di EKS sul cluster
<a name="_step_1_enable_eks_auto_mode_on_the_cluster"></a>

Abilita la modalità automatica EKS sul tuo cluster esistente utilizzando la AWS CLI o la console di gestione. Per ulteriori informazioni, consulta [Abilita modalità automatica di EKS su un cluster esistente](auto-enable-existing.md).

**Nota**  
Durante l’abilitazione della modalità automatica di EKS, non abilitare il nodepool `general purpose` in questa fase durante la transizione. Questo pool di nodi non è selettivo.  
Per ulteriori informazioni, consulta [Attivazione o disattivazione della funzionalità integrata NodePools](set-builtin-node-pools.md).

## Fase 2: Creare una modalità automatica EKS alterata NodePool
<a name="_step_2_create_a_tainted_eks_auto_mode_nodepool"></a>

Crea una nuova modalità NodePool per EKS Auto con una macchia. Ciò garantisce che i pod esistenti non vengano programmati automaticamente sui nuovi nodi della modalità automatica di EKS. Questo pool di nodi utilizza `NodeClass` integrato `default` in modalità automatica di EKS. Per ulteriori informazioni, consulta [Creazione di una classe di nodi per Amazon EKS](create-node-class.md).

Esempio di pool di nodi con taint:

```
apiVersion: karpenter.sh/v1
kind: NodePool
metadata:
  name: eks-auto-mode
spec:
  template:
    spec:
      requirements:
        - key: "eks.amazonaws.com/instance-category"
          operator: In
          values: ["c", "m", "r"]
      nodeClassRef:
        group: eks.amazonaws.com
        kind: NodeClass
        name: default
      taints:
        - key: "eks-auto-mode"
          effect: "NoSchedule"
```

Aggiorna i requisiti per il pool di nodi in modo tale che corrispondano alla configurazione di Karpenter da cui stai eseguendo la migrazione. Devi soddisfare almeno un requisito.

## Fase 3: aggiornare i carichi di lavoro per la migrazione
<a name="_step_3_update_workloads_for_migration"></a>

Identifica e aggiorna i carichi di lavoro che desideri migrare alla modalità automatica di EKS . Aggiungi sia le tolleranze che i selettori di nodi a questi carichi di lavoro:

```
apiVersion: apps/v1
kind: Deployment
spec:
  template:
    spec:
      tolerations:
      - key: "eks-auto-mode"
        effect: "NoSchedule"
      nodeSelector:
        eks.amazonaws.com/compute-type: auto
```

Questa modifica consente di pianificare il carico di lavoro sui nuovi nodella modalità automatica di EKS.

La modalità automatica di EKS utilizza etichette diverse rispetto a Karpenter. Le etichette relative alle istanze EC2 gestite iniziano con. `eks.amazonaws.com` Per ulteriori informazioni, consulta [Crea un pool di nodi per EKS Auto Mode](create-node-pool.md).

## Fase 4: migrare gradualmente i carichi di lavoro
<a name="_step_4_gradually_migrate_workloads"></a>

Ripeti la fase 3 per ogni carico di lavoro di cui desideri eseguire la migrazione. Ciò consente di spostare i carichi di lavoro individualmente o in gruppo, in base ai requisiti e alla tolleranza al rischio.

## Passaggio 5: rimuovere il Karpenter originale NodePool
<a name="_step_5_remove_the_original_karpenter_nodepool"></a>

Una volta migrati tutti i carichi di lavoro, puoi rimuovere il Karpenter originale: NodePool

```
kubectl delete nodepool <original-nodepool-name>
```

## Passaggio 6: rimuovere la contaminazione dalla modalità automatica EKS (opzionale) NodePool
<a name="_step_6_remove_taint_from_eks_auto_mode_nodepool_optional"></a>

Se desideri che la modalità automatica EKS diventi l'impostazione predefinita per i nuovi carichi di lavoro, puoi rimuovere la contaminazione dalla modalità automatica EKS: NodePool

```
apiVersion: karpenter.sh/v1
kind: NodePool
metadata:
  name: eks-auto-mode
spec:
  template:
    spec:
      nodeClassRef:
        group: eks.amazonaws.com
        kind: NodeClass
        name: default
      # Remove the taints section
```

## Fase 7: rimuovere i selettori di nodi dai carichi di lavoro (facoltativo)
<a name="_step_7_remove_node_selectors_from_workloads_optional"></a>

Se hai rimosso la macchia dalla modalità automatica EKS NodePool, puoi facoltativamente rimuovere i selettori dei nodi dai tuoi carichi di lavoro, poiché la modalità automatica EKS è ora l'impostazione predefinita:

```
apiVersion: apps/v1
kind: Deployment
spec:
  template:
    spec:
      # Remove the nodeSelector section
      tolerations:
      - key: "eks-auto-mode"
        effect: "NoSchedule"
```

## Fase 8: disinstallare Karpenter dal cluster
<a name="_step_8_uninstall_karpenter_from_your_cluster"></a>

Le fasi per rimuovere Karpenter dipendono da come l’hai installato. Per ulteriori informazioni, consulta [Karpenter install instructions](https://karpenter.sh/docs/getting-started/getting-started-with-karpenter/#create-a-cluster-and-add-karpenter).