

 **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 su che si trova 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à.

# Usa Annotazioni del servizio per configurare Network Load Balancer
<a name="auto-configure-nlb"></a>

Scopri come configurare Network Load Balancer (NLB) in Amazon EKS utilizzando le annotazioni del servizio di Kubernetes. Questo argomento spiega le annotazioni supportate da EKS Auto Mode per personalizzare il comportamento NLB, tra cui l'accessibilità a Internet, i controlli di integrità, la SSL/TLS terminazione e le modalità di targeting IP.

Quando si crea un servizio Kubernetes di tipo EKS Auto Mode, EKS esegue automaticamente il provisioning e configura un Network Load Balancer `LoadBalancer` in base alle annotazioni specificate. AWS Questo approccio dichiarativo ti consente di gestire le configurazioni del bilanciatore del carico direttamente tramite i manifesti di Kubernetes, mantenendo l’infrastruttura come pratiche di codice.

EKS Auto Mode gestisce il provisioning di Network Load Balancer per impostazione predefinita per tutti i servizi di tipo LoadBalancer : non è richiesta l'installazione o la configurazione di controller aggiuntivi. La specifica `loadBalancerClass: eks.amazonaws.com/nlb` viene impostata automaticamente come impostazione predefinita del cluster, semplificando il processo di implementazione e mantenendo la compatibilità con i carichi di lavoro di Kubernetes esistenti.

**Nota**  
La modalità automatica di EKS richiede i tag di sottorete per identificare le sottoreti pubbliche e private.  
Se hai creato il cluster con `eksctl`, disponi già di questi tag.  
Informazioni su come [Assegnazione di tag alle sottoreti per la modalità automatica EKS](tag-subnets-auto.md).

## Servizio di esempio
<a name="_sample_service"></a>

Per ulteriori informazioni sulla risorsa `Service` di Kubernetes, consulta [Kubernetes Documentation](https://kubernetes.io/docs/concepts/services-networking/service/).

Consulta la risorsa di esempio `Service` riportata di seguito:

```
apiVersion: v1
kind: Service
metadata:
  name: echoserver
  annotations:
    # Specify the load balancer scheme as internet-facing to create a public-facing Network Load Balancer (NLB)
    service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing
spec:
  selector:
    app: echoserver
  ports:
    - port: 80
      targetPort: 8080
      protocol: TCP
  type: LoadBalancer
  # Specify the new load balancer class for NLB as part of EKS Auto Mode feature
  # For clusters with Auto Mode enabled, this field can be omitted as it's the default
  loadBalancerClass: eks.amazonaws.com/nlb
```

## Annotazioni di uso comune
<a name="_commonly_used_annotations"></a>

La tabella seguente elenca le annotazioni supportate per Amazon EKS Auto Mode. Amazon EKS Auto Mode non supporta tutte le annotazioni di servizio disponibili nel Load AWS Balancer Controller.

**Suggerimento**  
Tutte le seguenti annotazioni devono avere il prefisso `service.beta.kubernetes.io/` 


| Campo | Description | Esempio | 
| --- | --- | --- | 
|  `aws-load-balancer-type`  | Specifica il tipo di bilanciatore del carico. Utilizza `external` per nuove implementazioni. |  `external`  | 
|  `aws-load-balancer-nlb-target-type`  | Specifica se instradare il traffico verso le istanze del nodo o direttamente verso gli IP dei pod. Utilizza `instance` per implementazioni standard o `ip` per l’instradamento diretto ai pod. |  `instance`  | 
|  `aws-load-balancer-scheme`  | Controlla se il bilanciatore del carico è interno o esposto a Internet. |  `internet-facing`  | 
|  `aws-load-balancer-healthcheck-protocol`  | Protocollo di controllo dell’integrità per il gruppo di destinazione. Le opzioni più comuni sono `TCP` (impostazione predefinita) o `HTTP`. |  `HTTP`  | 
|  `aws-load-balancer-healthcheck-path`  | Il percorso HTTP per i controlli sullo stato di salute quando si utilizza HTTP/HTTPS il protocollo. |  `/healthz`  | 
|  `aws-load-balancer-healthcheck-port`  | Porta utilizzata per i controlli dell’integrità. Può essere un numero di porta specifico o `traffic-port`. |  `traffic-port`  | 
|  `aws-load-balancer-subnets`  | Specifica in quali sottoreti creare il bilanciatore del carico. Può utilizzare ID o nomi di sottorete. |  `subnet-xxxx, subnet-yyyy`  | 
|  `aws-load-balancer-ssl-cert`  | ARN del certificato SSL di Certificate AWS Manager per. HTTPS/TLS |  ` arn:aws: acm:region:account:certificate/cert-id`  | 
|  `aws-load-balancer-ssl-ports`  | Specifica quali porte devono essere utilizzate. SSL/TLS |  `443, 8443`  | 
|  `load-balancer-source-ranges`  | Intervalli CIDR autorizzati ad accedere al bilanciatore del carico. |  `10.0.0.0/24, 192.168.1.0/24`  | 
|  `aws-load-balancer-additional-resource-tags`  |  AWS Tag aggiuntivi da applicare al load balancer e alle risorse correlate. |  `Environment=prod,Team=platform`  | 
|  `aws-load-balancer-ip-address-type`  | Specifica se il bilanciatore del carico utilizza IPv4 o doppio stack (IPv4 \+ IPv6). |  `ipv4` o `dualstack`  | 
|  `aws-load-balancer-listener-attributes.${Protocol}-${Port}`  | Specifica gli attributi del listener da applicare al listener. |  `tcp.idle_timeout.seconds=350`  | 

## Considerazioni
<a name="_considerations"></a>
+ È necessario aggiornare il ruolo IAM del cluster per abilitare la propagazione dei tag da Kubernetes alle risorse di Load Balancer. AWS Per ulteriori informazioni, consulta [Personalizzato AWS tag per le risorse EKS Auto](auto-cluster-iam-role.md#tag-prop).
+ Per informazioni sull'associazione delle risorse a EKS Auto Mode o al Load Balancer Controller AWS autogestito, vedere. [Materiale di riferimento per le migrazioni](migrate-auto.md#migration-reference)
+ Per informazioni sulla risoluzione dei problemi con i bilanciatori del carico, consulta [Risoluzione dei problemi della modalità automatica di EKS](auto-troubleshoot.md).
+ Per ulteriori considerazioni sull’utilizzo della funzionalità di bilanciamento del carico della modalità automatica di EKS, consulta [Sistema di bilanciamento del carico](auto-networking.md#auto-lb-consider).

Durante la migrazione alla modalità automatica di EKS per il bilanciamento del carico, sono necessarie diverse modifiche nelle annotazioni dei servizi e nelle configurazioni delle risorse. Le tabelle seguenti descrivono le differenze principali tra le implementazioni precedenti e quelle nuove, includendo le opzioni non supportate e le alternative consigliate.

### Annotazioni dei servizi
<a name="_service_annotations"></a>


| Precedente | Novità | Description | 
| --- | --- | --- | 
|  `service.beta.kubernetes.io/load-balancer-source-ranges`  | Non supportata | Usa `spec.loadBalancerSourceRanges` sul servizio | 
|  `service.beta.kubernetes.io/aws-load-balancer-type`  | Non supportata | Usa `spec.loadBalancerClass` sul servizio | 
|  `service.beta.kubernetes.io/aws-load-balancer-internal`  | Non supportata | Utilizzare `service.beta.kubernetes.io/aws-load-balancer-scheme`  | 
|  `service.beta.kubernetes.io/aws-load-balancer-proxy-protocol`  | Non supportata | Usa invece `service.beta.kubernetes.io/aws-load-balancer-target-group-attributes` | 
| Vari attributi del bilanciatore del carico | Non supportata | Utilizzare `service.beta.kubernetes.io/aws-load-balancer-attributes`  | 
|  `service.beta.kubernetes.io/aws-load-balancer-access-log-enabled`  | Non supportata | Usa invece `service.beta.kubernetes.io/aws-load-balancer-attributes` | 
|  `service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-name`  | Non supportata | Usa invece `service.beta.kubernetes.io/aws-load-balancer-attributes` | 
|  `service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-prefix`  | Non supportata | Usa invece `service.beta.kubernetes.io/aws-load-balancer-attributes` | 
|  `service.beta.kubernetes.io/aws-load-balancer-cross-zone-load-balancing-enabled`  | Non supportata | Usa invece `service.beta.kubernetes.io/aws-load-balancer-attributes` | 

Per eseguire la migrazione dalle annotazioni obsolete degli attributi del bilanciatore del carico, consolida queste impostazioni nell’annotazione `service.beta.kubernetes.io/aws-load-balancer-attributes`. Questa annotazione accetta un elenco di coppie chiave-valore separato da virgole per vari attributi del bilanciatore del carico. Ad esempio, per specificare la registrazione degli accessi e il bilanciamento del carico tra zone, utilizzate il seguente formato:

```
service.beta.kubernetes.io/aws-load-balancer-attributes: access_logs.s3.enabled=true,access_logs.s3.bucket=my-bucket,access_logs.s3.prefix=my-prefix,load_balancing.cross_zone.enabled=true
```

Questo formato consolidato offre un modo più coerente e flessibile per configurare gli attributi del bilanciatore del carico riducendo al contempo il numero di singole annotazioni necessarie. Rivedi le configurazioni del servizio esistenti e aggiornale per utilizzare questo formato consolidato.

### TargetGroupBinding
<a name="_targetgroupbinding"></a>


| Precedente | Novità | Description | 
| --- | --- | --- | 
|  `elbv2.k8s.aws/v1beta1`  |  `eks.amazonaws.com/v1`  | Modifica alla versione dell’API | 
|  `spec.targetType` facoltativo |  `spec.targetType` obbligatorio | Specifica esplicita del tipo di destinazione | 
|  `spec.networking.ingress.from`  | Non supportata | Non supporta più NLB senza gruppi di sicurezza | 

Nota: per utilizzare la TargetGroupBinding funzionalità personalizzata, devi contrassegnare il gruppo di destinazione con il tag con il `eks:eks-cluster-name` nome del cluster per concedere al controller le autorizzazioni IAM necessarie. Tieni presente che il controller eliminerà il gruppo di destinazione quando la TargetGroupBinding risorsa o il cluster vengono eliminati.