Perché non riesco a vedere i log del cluster Amazon EMR in un bucket S3 con una policy allegata che applica la crittografia SSE-KMS?

2 minuti di lettura
0

I log del mio cluster Amazon EMR non vengono archiviati nel bucket Amazon Simple Storage Service (Amazon S3) che ho specificato. Il bucket S3 ha una policy allegata che applica la crittografia lato server con AWS Key Management Service (SSE-KMS). La scrittura del log non riesce con un errore 403 simile al seguente: 2020-01-15 04:01:25,247 INFO logspusher-6: Failed to upload 126 logs: USE: /emr/instance-state/instance-state.log-2020-01-14-20-15.gz reason: Access Denied (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID: 8B99FE94D1678AAB)

Breve descrizione

Quando la registrazione è abilitata per un cluster Amazon EMR, il servizio LogPusher archivia i log del cluster nel bucket S3 specificato. LogPusher utilizza la crittografia AES-256, anziché SSE-KMS, per scrivere i log. Per scrivere i log su un bucket S3 con una policy di crittografia SSE-KMS, usa il comando sync per caricare manualmente i file.

Nota: Se ricevi errori durante l'esecuzione dei comandi dell'AWS CLI, assicurati di utilizzare la versione più recente dell'AWS CLI.

Risoluzione

Nota: Con la versione 5.30.0 o successive di Amazon EMR (ad eccezione di Amazon EMR 6.0.0), puoi crittare i file di log archiviati in Amazon S3 con una chiave gestita dal cliente AWS KMS.

  1. Connettiti al nodo principale tramite SSH.

  2. Trova i file di log che desideri copiare. Ad esempio, i log dei passaggi vengono archiviati in /mnt/var/log/hadoop/steps sul nodo principale.

  3. Per copiare i file di log nel bucket S3, esegui il comando sync con il campo --sse-kms-key-id. Esempio:

aws s3 sync /mnt/var/log/hadoop/steps/ s3://awsexamplebucket/elasticmapreduce/${cluster_id}/steps/ --sse aws:kms --sse-kms-key-id 17246c74-6ff4-4adb-86e5-76f7f1603f00

Puoi usare un cron job per automatizzare il comando sync. Per configurare il cron job, esegui un’azione di bootstrap personalizzata su tutti i nodi quando avvii un cluster Amazon EMR.


Informazioni correlate

Proteggere i dati utilizzando la crittografia lato server con le chiavi AWS KMS memorizzate in AWS Key Management Service

Cosa succede agli oggetti nuovi o esistenti quando attivo la crittografia predefinita con AWS KMS sul mio bucket Amazon S3?

AWS UFFICIALE
AWS UFFICIALEAggiornata 3 anni fa