Come faccio a inviare flussi di dati da CloudWatch Logs a un cluster Amazon OpenSearch Service basato su VPC in un account diverso?

Ultimo aggiornamento: 23-07-2021

Sto cercando di trasmettere dati da Amazon CloudWatch Logs a un cluster Amazon OpenSearch Service utilizzando un cloud privato virtuale (VPC) in un altro account. Tuttavia, ricevo un messaggio di errore «Inserisci un endpoint del servizio Amazon OpenSearch Service valido». Come posso risolvere questo errore?

Breve descrizione

Nota: Amazon OpenSearch Service è il successore di Amazon Elasticsearch Service (Amazon ES).

Per eseguire lo streaming di dati da CloudWatch Logs a un cluster OpenSearch Service in un altro account, attieniti alla seguente procedura:

1.    Configurare CloudWatch Logs nell'Account A.

2.    Configurazione di AWS Lambda nell'account A.

3.    Configurare il peering di Amazon Virtual Private Cloud (Amazon VPC) tra account.

Risoluzione

Configurare i log di CloudWatch nell'account A

1.    Apri la console di CloudWatch Logs nell'Account A e seleziona il tuo gruppo di log.

2.    Scegli Operazioni.

3.    Scegli il filtroCrea sottoscrizione OpenSearch.

4.    Per l'opzione Seleziona account, seleziona Questo account.

5.    Per l'elenco a discesa del cluster OpenSearch Service, scegli un cluster esistente per l'Account A.

6.    Scegli il ruolo di esecuzione Lambda IAM che dispone delle autorizzazioni per effettuare chiamate al cluster OpenSearch Service selezionato.

7.    Allegare il criterioAWSLambDAVPCAccessExecutionRole al ruolo.

8.    In Configurare il formato di registro e i filtri, selezionare il formato di registro e il modello di filtro sottoscrizione.

9.    Scegliere Next (Avanti).

10.    Inserisci il nome delfiltro Sottoscrizione e scegli Avvia streaming. Per ulteriori informazioni sullo streaming, Streaming CloudWatch registra i dati su Amazon OpenSearch Service.

Configura Lambda nell'account A

1.    Nell'Account A, apri laconsole Lambda.

2.    Seleziona la tua funzione Lambda.

3.    Nel codice funzione, aggiornare la variabile endpoint del cluster OpenSearch Service nell'account B. Questo aggiornamento consente alla funzione Lambda di inviare dati al dominio del servizio OpenSearch nell'account B.

Nota: puoi incollare il nome DNS pubblico per l'Account B. Assicurati di rimuovere «https://» dall'endpoint URL.

4.    ScegliConfigurazione.

5.    Scegli VPC.

6.    InVPC, scegli Modifica.

7.    Seleziona il tuo VPC, le sottoreti e i gruppi di sicurezza.

Nota: questa selezione assicura che la funzione Lambda venga eseguita all'interno di un VPC, utilizzando il routing VPC per inviare i dati al dominio OpenSearch Service. Per ulteriori informazioni sulle configurazioni di Amazon Virtual Private Cloud (Amazon VPC), consulta Configurazione di una funzione Lambda per accedere alle risorse in un VPC.

8.    Scegli Salva.

Configurazione del peering VPC tra account

1.    Apri la console Amazon VPC nell'account A e nell'account B.

Nota: assicurati che il tuo VPC non abbia blocchi CIDR sovrapposti.

2.    Crea una sessione di peering VPC tra i due VPC personalizzati (Lambda e OpenSearch Service). Questa sessione di peering VPC consente a Lambda di inviare dati al dominio di OpenSearch Service. Per ulteriori informazioni sulle connessioni peering VPC, vedereCreazione e accettazione di una connessione peering VPC.

3.    Aggiorna la tabella dei percorsi per entrambi i VPC. Per ulteriori informazioni sulle tabelle di route, vedere Aggiornamento delle tabelle di route per una connessione peering VPC.

4.    Nell'Account A, vai su Gruppi di sicurezza.

5.    Selezionare il gruppo di sicurezza assegnato alla sottorete in cui è configurato Lambda.

6.    Aggiungere la regola in entrata per consentire il traffico dalle sottoreti di OpenSearch Service.

7.    Nell'Account B, selezionare il gruppo di sicurezza assegnato alla sottoretein cui è impostato OpenSearch Service.

8.    Aggiungi la regola in entrata per consentire il traffico dalle sottoreti Lambda.

9.    Nell'Account B, apri laconsole di OpenSearch Service.

10.    Scegli Operazioni.

11.    Sceglieremodifica policy di accesso, quindi aggiungere la seguente policy:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
       
    "AWS": "arn:aws:iam::<AWS Account A>:role/<Lambda Execution Role>"
      },
      "Action": "es:*",
      "Resource": "arn:aws:es:us-east-1: ::<AWS
    Account B>:domain/<OpenSearch Domain Name>/*"
    }
  ]
}

Questa policy consente a OpenSearch Service di effettuare chiamate dal ruolo di esecuzione della funzione Lambda.

12.    Controlla il conteggio degli errori e il parametro della percentuale di successo nella console Lambda. Questo parametro verifica se i log sono stati consegnati correttamente a OpenSearch Service.

13.    Controlla il parametro dellavelocità di indicizzazione in OpenSearch Service per confermare se i dati sono stati inviati. CloudWatch Logs ora viene trasmesso in streaming su entrambi gli account nel tuo Amazon VPC.


Questo articolo è stato utile?


Hai bisogno di supporto tecnico o per la fatturazione?