

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

# `AWSSupport-TroubleshootAPIGatewayVpcLinkIntegration`
<a name="automation-awssupport-troubleshootapigatewayvpclinkintegration"></a>

## Description
<a name="automation-awssupport-troubleshootapigatewayvpclinkintegration-description"></a>

Il `AWSSupport-TroubleshootAPIGatewayVpcLinkIntegration` runbook ti aiuta a risolvere i problemi relativi alle integrazioni di Amazon API Gateway che utilizzano un link Amazon Virtual Private Cloud (Amazon VPC). Usa questo runbook per identificare i problemi di configurazione tra i componenti di integrazione senza ispezionare ogni risorsa separatamente. Il runbook supporta le API REST e le API HTTP ed esegue i seguenti controlli:
+ **Rilevamento di API e integrazioni**: identifica il tipo di API e abbina il percorso della risorsa e il metodo HTTP all'integrazione configurata.
+ **Convalida del link Amazon VPC**: verifica che l'integrazione utilizzi un link Amazon VPC e controlla se il link è disponibile.
+ **Analisi backend**: esamina le risorse di Elastic Load Balancing o le risorse di individuazione dei AWS Cloud Map servizi associate all'integrazione.
+ **Configurazione di rete**: valuta il routing della sottorete, i gruppi di sicurezza e gli ACL di rete tra un collegamento Amazon VPC con API HTTP e il relativo sistema di bilanciamento del carico.
+ **Integrità del listener e del target**: convalida la configurazione del listener, i gruppi target, lo stato del target e le architetture Network Load Balancer e Application Load Balancer supportate.
+ **TLSconvalida del certificato**: verifica lo stato, l'attendibilità, la validità della catena, la scadenza e la copertura del nome host del certificato quando l'integrazione lo utilizza. TLS

**Limitazioni**  
Questo runbook presenta le seguenti limitazioni:  
Il runbook fornisce un'analisi dettagliata del backend solo per le integrazioni che utilizzano il tipo di connessione. `VPC_LINK`
Per le API HTTP, il runbook analizza le integrazioni con un listener Elastic Load Balancing o un servizio di rilevamento dei servizi. AWS Cloud Map 
Il runbook convalida le configurazioni standard dei listener HTTP e HTTPS sulle porte 80 e 443. Non convalida le porte di listener personalizzate.
Il runbook non supporta configurazioni di link Amazon VPC tra account.
Per i collegamenti Amazon VPC associati alle API HTTP, il runbook valuta la connettività ACL del gruppo di sicurezza e della rete solo sulla porta TCP 443.

**Prerequisiti**  
Prima di eseguire l'automazione, assicurati che il ruolo IAM specificato in disponga delle autorizzazioni elencate. `AutomationAssumeRole` Se non specifichi un ruolo, devi disporre di queste autorizzazioni.

## Come funziona
<a name="automation-awssupport-troubleshootapigatewayvpclinkintegration-how-it-works"></a>

Il runbook esegue la convalida e l'analisi seguenti:
+ Identifica se l'API specificata è un'API REST o un'API HTTP.
+ Abbina il percorso della risorsa e il metodo HTTP forniti alla risorsa, al percorso e all'integrazione applicabili.
+ Recupera l'integrazione e la configurazione del collegamento Amazon VPC e verifica lo stato del collegamento Amazon VPC.
+ Analizza la configurazione associata del load balancer o del service discovery. AWS Cloud Map 
+ Convalida la configurazione dello stato di rete, del listener, del certificato, del gruppo di destinazione e del target, se applicabile.
+ Genera un report con i problemi rilevati, i dettagli di configurazione, i consigli e i comandi AWS CLI pertinenti.

 [Esegui questa automazione (console) ](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootAPIGatewayVpcLinkIntegration) 

**Tipo di documento **

Automazione

**Proprietario**

Amazon

**Piattaforme**

/

**Autorizzazioni IAM richieste **

Il `AutomationAssumeRole` parametro richiede le seguenti azioni per utilizzare correttamente il runbook.
+ `apigateway:GET`
+ `elasticloadbalancing:DescribeLoadBalancers`
+ `elasticloadbalancing:DescribeListeners`
+ `elasticloadbalancing:DescribeRules`
+ `elasticloadbalancing:DescribeTargetGroups`
+ `elasticloadbalancing:DescribeTargetHealth`
+ `ec2:DescribeNetworkInterfaces`
+ `ec2:DescribeRouteTables`
+ `ec2:DescribeSubnets`
+ `ec2:DescribeSecurityGroups`
+ `ec2:DescribePrefixLists`
+ `ec2:DescribeNetworkAcls`
+ `servicediscovery:GetService`
+ `servicediscovery:GetNamespace`
+ `acm:DescribeCertificate`

Policy IAM di esempio:

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "APIGatewayReadAccess",
            "Effect": "Allow",
            "Action": "apigateway:GET",
            "Resource": [
                "arn:aws:apigateway:*::/restapis/*",
                "arn:aws:apigateway:*::/apis/*",
                "arn:aws:apigateway:*::/vpclinks/*"
            ]
        },
        {
            "Sid": "LoadBalancerReadAccess",
            "Effect": "Allow",
            "Action": [
                "elasticloadbalancing:DescribeLoadBalancers",
                "elasticloadbalancing:DescribeListeners",
                "elasticloadbalancing:DescribeRules",
                "elasticloadbalancing:DescribeTargetGroups",
                "elasticloadbalancing:DescribeTargetHealth"
            ],
            "Resource": "*"
        },
        {
            "Sid": "EC2NetworkReadAccess",
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeRouteTables",
                "ec2:DescribeSubnets",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribePrefixLists",
                "ec2:DescribeNetworkAcls"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ServiceDiscoveryReadAccess",
            "Effect": "Allow",
            "Action": [
                "servicediscovery:GetService",
                "servicediscovery:GetNamespace"
            ],
            "Resource": [
                "arn:aws:servicediscovery:*:{{ACCOUNTID}}:service/*",
                "arn:aws:servicediscovery:*:{{ACCOUNTID}}:namespace/*"
            ]
        },
        {
            "Sid": "CertificateReadAccess",
            "Effect": "Allow",
            "Action": "acm:DescribeCertificate",
            "Resource": "arn:aws:acm:*:{{ACCOUNTID}}:certificate/*"
        }
    ]
}
```

## Istruzioni
<a name="automation-awssupport-troubleshootapigatewayvpclinkintegration-instructions"></a>

Segui questi passaggi per configurare l'automazione:

1. Apri [ AWSSupport-TroubleshootAPIGatewayVpcLinkIntegration ](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootAPIGatewayVpcLinkIntegration/description) nella console di Systems Manager in ** Documenti**.

1. Scegli **Esegui automazione**.

1. Per i parametri di input, inserisci quanto segue:
   + **AutomationAssumeRole (Facoltativo) **

     L'Amazon Resource Name (ARN) del ruolo IAM utilizzato da Systems Manager Automation per eseguire azioni per tuo conto. Se non specifichi un ruolo, Systems Manager Automation utilizza le tue autorizzazioni.
   + **ApiId (Obbligatorio) **

     L'ID di 10 caratteri dell'API REST o dell'API HTTP di API Gateway che desideri risolvere.
   + **ApiResourcePath (Obbligatorio) **

     Il percorso delle risorse API con l'integrazione di Amazon VPC Link. Escludi la fase e il percorso di base del dominio personalizzato. Ad esempio, `/users/{id}`, `/api/v1/products` o `/health`. Usalo `/` per il percorso principale o `$default` per il percorso predefinito dell'API HTTP.
   + **ApiMethod (Obbligatorio) **

     Il metodo HTTP configurato per il percorso della risorsa. Valori consentiti: `GET` `POST``PUT`,`DELETE`,`PATCH`,`HEAD`,`OPTIONS`, e`ANY`. Per una `$default` route API HTTP, scegli`ANY`.

1. Scegli **Esegui**.

1. L'automazione viene avviata.

1. Il runbook esegue i seguenti passaggi. I rami condizionali potrebbero saltare i passaggi che non si applicano all'integrazione:
   + **`ExtractApiTypeAndIntegrationParams`**— Identifica il tipo di API e abbina il percorso e il metodo forniti a una risorsa API REST o a una route API HTTP.
   + **`GetApiIntegration`**— Recupera il tipo di integrazione, l'URI, il tipo di connessione, l'ID di connessione e TLS la configurazione.
   + **`BranchOnConnectionType`**— Continua l'analisi dettagliata quando l'integrazione utilizza un link Amazon VPC. Altrimenti, il runbook genera il report.
   + **`GetVpcLinkDetails`**— Recupera lo stato del collegamento Amazon VPC, gli ARN di destinazione, i gruppi di sicurezza e le sottoreti.
   + **`BranchOnVpcLinkStatus`**— Continua l'analisi quando il link Amazon VPC è disponibile. Altrimenti, il runbook genera il report.
   + **`BranchOnAPIType`**— Indirizza le API REST all'analisi del load balancer e le API HTTP all'analisi di integrazione del backend.
   + **`BranchOnIntegrationType`**— Indirizza le API HTTP all'analisi del load balancer o all'analisi del service discovery. AWS Cloud Map 
   + **`GetLoadBalancerDetails`**— Recupera lo stato, il tipo, lo schema, Amazon VPC, i gruppi di sicurezza, le sottoreti e le impostazioni dei gruppi di sicurezza del sistema di bilanciamento del carico. PrivateLink 
   + **`GetServiceDiscoveryDetails`**— Recupera i dettagli del AWS Cloud Map servizio e dello spazio dei nomi per un backend di service discovery.
   + **`BranchOnLoadBalancerAvailability`**— Continua l'analisi del load balancer quando è in stato. `active` Altrimenti, il runbook genera il report.
   + **`BranchOnVPCLinkVersion`**— Indirizza i link Amazon VPC per le API REST alla convalida del listener e i link Amazon VPC per le API HTTP alla convalida della configurazione di rete.
   + **`VerifySubnetAndSecurityGroupConfig`**— Convalida il routing della sottorete, le regole dei gruppi di sicurezza e gli ACL di rete tra un collegamento Amazon VPC per le API HTTP e il relativo sistema di bilanciamento del carico.
   + **`DescribeAndValidateListenerConfig`**— Recupera i dettagli del listener e convalida la compatibilità del protocollo e delle porte con l'endpoint di integrazione.
   + **`BranchOnCertificateRequired`**— Indirizza gli TLS ascoltatori alla convalida del certificato. Gli altri ascoltatori continuano ad analizzare il gruppo target.
   + **`DescribeAndValidateCertificate`**— Utilizza i dati AWS Certificate Manager (ACM) per convalidare lo stato del certificato, l'attendibilità, la catena, la scadenza e la copertura del nome host.
   + **`DescribeTargetsAndTargetGroups`**— Recupera il gruppo target degli ascoltatori e valuta lo stato e il tipo di target.
   + **`BranchOnTargetHealth`**— Continua quando tutti i bersagli sono sani. Altrimenti, il runbook genera il rapporto.
   + **`BranchOnTargetType`**— Indirizza un target Application Load Balancer a un'analisi aggiuntiva del listener quando il tipo di load balancer principale è Network Load Balancer.
   + **`VerifyTargetALBListeners`**— Convalida il protocollo di Network Load Balancer e il protocollo Application Load Balancer di destinazione, la porta, il controllo dello stato, lo stato del target e la compatibilità dei certificati.
   + **`GenerateReport`**— Consolida i risultati in un report con dettagli di configurazione, problemi rilevati, raccomandazioni e riferimenti pertinenti.

1. Dopo il completamento, consulta la ** sezione ** Risultati per il rapporto dettagliato e lo stato generale.

## Riferimenti
<a name="automation-awssupport-troubleshootapigatewayvpclinkintegration-references"></a>

Systems Manager Automation
+ [Esegui questa automazione (console) ](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootAPIGatewayVpcLinkIntegration/description)
+ [Esegui un'automazione ](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-working-executing.html)
+ [Configurazione di un'automazione ](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-setup.html)
+ [Supporta i flussi di lavoro di automazione ](https://aws.amazon.com/premiumsupport/technology/saw/)