

 **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à.

# Risolvi i problemi relativi alle funzionalità ACK
<a name="ack-troubleshooting"></a>

**Nota**  
Le funzionalità EKS sono completamente gestite ed eseguite all'esterno del cluster. Non hai accesso ai log dei controller o ai namespace dei controller. La risoluzione dei problemi si concentra sullo stato delle funzionalità, sullo stato delle risorse e sulla configurazione IAM.

## Le funzionalità sono ATTIVE ma le risorse non vengono create
<a name="_capability_is_active_but_resources_are_not_being_created"></a>

Se la tua funzionalità ACK mostra `ACTIVE` lo stato ma le risorse non vengono create AWS, controlla lo stato della capacità, lo stato delle risorse e le autorizzazioni IAM.

 **Verifica lo stato delle funzionalità:**

È possibile visualizzare i problemi relativi allo stato e allo stato delle funzionalità nella console EKS o utilizzando la AWS CLI.

 **Console**:

1. Apri la console Amazon EKS all'indirizzo https://console.aws.amazon.com/eks/home \#/clusters.

1. Seleziona il nome del cluster.

1. Scegli la scheda **Osservabilità**.

1. Scegli **Monitora cluster**.

1. Scegli la scheda **Capacità** per visualizzare lo stato e lo stato di tutte le funzionalità.

 ** AWS CLI:**

```
# View capability status and health
aws eks describe-capability \
  --region {{region-code}} \
  --cluster-name {{my-cluster}} \
  --capability-name {{my-ack}}

# Look for issues in the health section
```

 Cause comuni:
+  **Autorizzazioni IAM mancanti**: al Capability Role mancano le autorizzazioni per il servizio AWS 
+  **Namespace errato: risorse create nello spazio** dei nomi senza impostazioni appropriate IAMRoleSelector
+  **Specifiche della risorsa non valide**: verifica la presenza di errori di convalida nelle condizioni di stato delle risorse
+  **Limitazione delle API: AWS vengono raggiunti i limiti di velocità delle** API
+  Webhook di **ammissione: webhook** di ammissione che impediscono al controller di correggere lo stato delle risorse

 **Controlla lo stato delle risorse:**

```
# Describe the resource to see conditions and events
kubectl describe bucket {{my-bucket}} -n default

# Look for status conditions
kubectl get bucket {{my-bucket}} -n default -o jsonpath='{.status.conditions}'

# View resource events
kubectl get events --field-selector involvedObject.name={{my-bucket}} -n default
```

 **Verifica le autorizzazioni IAM**:

```
# View the Capability Role's policies
aws iam list-attached-role-policies --role-name {{my-ack-capability-role}}
aws iam list-role-policies --role-name {{my-ack-capability-role}}

# Get specific policy details
aws iam get-role-policy --role-name {{my-ack-capability-role}} --policy-name {{policy-name}}
```

## Risorse create in AWS Kubernetes ma non visualizzate
<a name="resources_created_in_shared_aws_but_not_showing_in_kubernetes"></a>

ACK tiene traccia solo delle risorse create tramite i manifesti di Kubernetes. Per gestire le AWS risorse esistenti con ACK, utilizza la funzionalità di adozione.

```
apiVersion: s3.services.k8s.aws/v1alpha1
kind: Bucket
metadata:
  name: existing-bucket
  annotations:
    services.k8s.aws/adoption-policy: "adopt-or-create"
spec:
  name: my-existing-bucket-name
```

Per ulteriori informazioni sull'adozione delle risorse, consulta[Concetti ACK](ack-concepts.md).

## Cross-account risorse non create
<a name="_cross_account_resources_not_being_created"></a>

Se non vengono create risorse in un AWS account di destinazione quando si utilizza IAM Role Selectors, verifica la relazione di trust e la IAMRoleSelector configurazione.

 **Verifica la relazione di fiducia**:

```
# Check the trust policy in the target account role
aws iam get-role --role-name {{cross-account-ack-role}} --query 'Role.AssumeRolePolicyDocument'
```

La politica di fiducia deve consentire al Capability Role dell'account di origine di assumerla.

 **Conferma IAMRoleSelector la configurazione**:

```
# List IAMRoleSelectors (cluster-scoped)
kubectl get iamroleselector

# Describe specific selector
kubectl describe iamroleselector {{my-selector}}
```

 **Verifica l'allineamento dello spazio dei nomi**:

IAMRoleSelectors sono risorse con ambito cluster ma destinate a namespace specifici. Assicurati che le tue risorse ACK si trovino in uno spazio dei nomi che corrisponda al selettore dello spazio dei nomi: IAMRoleSelector

```
# Check resource namespace
kubectl get bucket {{my-cross-account-bucket}} -n {{production}}

# List all IAMRoleSelectors (cluster-scoped)
kubectl get iamroleselector

# Check which namespace the selector targets
kubectl get iamroleselector {{my-selector}} -o jsonpath='{.spec.namespaceSelector}'
```

 **Verifica le condizioni: IAMRoleSelected **

Verifica che sia IAMRoleSelector stato abbinato correttamente alla tua risorsa controllando la `ACK.IAMRoleSelected` condizione:

```
# Check if IAMRoleSelector was matched
kubectl get bucket {{my-cross-account-bucket}} -n {{production}} -o jsonpath='{.status.conditions[?(@.type=="ACK.IAMRoleSelected")]}'
```

Se la condizione è presente `False` o manca, il selettore IAMRoleSelector dello spazio dei nomi della risorsa non corrisponde allo spazio dei nomi della risorsa. Verifica che il selettore `namespaceSelector` corrisponda alle etichette dello spazio dei nomi della risorsa.

 **Verifica le autorizzazioni di Capability** Role:

I requisiti `sts:AssumeRole` e le `sts:TagSession` autorizzazioni del ruolo Capability Role per il ruolo dell'account di destinazione:

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": ["sts:AssumeRole", "sts:TagSession"],
      "Resource": [.replaceable]`"arn:aws:iam::444455556666:role/cross-account-ack-role"`
    }
  ]
}
```

Per una configurazione dettagliata tra account, consulta. [Configurare le autorizzazioni ACK](ack-permissions.md)

## Fasi successive
<a name="_next_steps"></a>
+  [Considerazioni ACK per EKS](ack-considerations.md)- Considerazioni e best practice relative a ACK
+  [Configurare le autorizzazioni ACK](ack-permissions.md)- Configura le autorizzazioni IAM e i modelli multiaccount
+  [Concetti ACK](ack-concepts.md)- Comprendi i concetti di ACK e il ciclo di vita delle risorse
+  [Risoluzione dei problemi delle funzionalità EKS](capabilities-troubleshooting.md)- Guida generale alla risoluzione dei problemi relativi alle funzionalità