Configurazione CloudWatch dell'agente per Amazon EMR 7.0.0 - Amazon EMR

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

Configurazione CloudWatch dell'agente per Amazon EMR 7.0.0

Puoi configurare l' CloudWatch agente Amazon per utilizzare parametri di sistema aggiuntivi oltre a quelli forniti dalla configurazione predefinita CloudWatch dell'agente. La configurazione per 7.0.0 richiede l'utilizzo di operazioni di bootstrap, di cui abbiamo fornito esempi nelle sezioni seguenti. In una delle prossime versioni, Amazon EMR fornirà opzioni di configurazione aggiuntive tramite l'API Amazon EMR.

Configura parametri di sistema aggiuntivi con Amazon EMR 7.0.0

Utilizza i seguenti passaggi per configurare l'agente in modo che utilizzi un set diverso di parametri di sistema in Amazon EMR 7.0.0:

  1. Crea o scegli un bucket nel tuo account Amazon S3 in cui archiviare i file di configurazione che specificano le metriche CloudWatch dell'agente.

  2. Crea il file di configurazione emr-amazon-cloudwatch-agent.json specificando i parametri preferiti. A tale scopo, utilizza uno dei metodi spiegati in Creare il file di configurazione dell' CloudWatch agente. Per ulteriori informazioni sulla struttura del file di configurazione dell' CloudWatch agente, consulta Creare o modificare manualmente il file di configurazione dell' CloudWatch agente nella Amazon CloudWatch User Guide.

  3. Successivamente, accedi al aws-emr-utilities repository GitHub e scarica i seguenti script di metriche di sistema:

    • install_system_metrics_launcher.sh: uno script da scaricare e che poi esegue install_system_metrics.sh in background in modo che il nodo possa completare il bootstrap.

    • install_system_metrics.sh: uno script che attende che l'istanza su cui viene eseguito completi il bootstrap e che poi scarica e applica la configurazione nel file JSON.

  4. Apri ogni file SH e sostituisci my-s3-bucket con il nome del bucket del passaggio 1.

  5. Carica il file JSON e due file SH nel bucket S3.

  6. Ora puoi accedere alla console Amazon EMR e creare un nuovo cluster con l' CloudWatch agente. Scegli EMR su EC2 nel riquadro a sinistra, quindi seleziona Cluster e Crea cluster.

  7. Nella sezione Nome e applicazioni, scegli la versione di Amazon EMR 7.0.0 o una versione successiva.

  8. In Pacchetto di applicazioni, seleziona il pacchetto o le app che desideri installare nel cluster e includi Amazon CloudWatch Agent tra le tue selezioni.

  9. Nella sezione Operazioni di bootstrap, seleziona Aggiungi.

    • In Nome, inserisci install_system_metrics_launcher.sh.

    • In Posizione dello script, inserisci s3://my-s3-bucket/install_system_metrics_launcher.sh. Sostituisci my-s3-bucket con il percorso del bucket S3.

    • Lascia vuoto il blocco Argomenti.

  10. Seleziona Add bootstrap action (Aggiungi operazione di bootstrap).

  11. Continua a creare il cluster per soddisfare le tue esigenze di carico di lavoro.

All'avvio del cluster, l' CloudWatch agente pubblica i parametri di sistema specificati nel file di configurazione. CloudWatch

Configura i parametri delle applicazioni con Amazon EMR 7.0.0

Puoi configurare l' CloudWatch agente Amazon per pubblicare i parametri delle applicazioni per HDFS e YARN oltre ai parametri di sistema. Completa la procedura seguente per configurare l'agente e pubblicare i parametri delle applicazioni:

  1. Crea o scegli un bucket nel tuo account Amazon S3 in cui archiviare i file di configurazione che specificano le metriche CloudWatch dell'agente.

  2. Successivamente, accedi al aws-emr-utilities repository GitHub e scarica i seguenti script:

    • install_app_metrics_launcher.sh: uno script da scaricare e che poi esegue install_app_metrics.sh in background in modo che il nodo possa completare il bootstrap.

    • install_app_metrics.sh: uno script che attende che l'istanza su cui viene eseguito completi il bootstrap e che poi scarica e applica la configurazione nei file YAML che scaricherai in uno dei prossimi passaggi.

  3. Apri ogni file e sostituisci my-s3-bucket con il nome del bucket del passaggio 1.

  4. Quindi, scarica i seguenti file di mappatura YAML. Per informazioni su come sono strutturati questi file YAML, consulta javaagentnel repository. OpenTelemetry Instrumentation for Java GitHub

  5. Carica i due file SH e i quattro file YAML nel bucket S3.

  6. Ora puoi accedere alla console Amazon EMR e creare un nuovo cluster con l' CloudWatch agente. Scegli EMR su EC2 nel riquadro a sinistra, quindi seleziona Cluster e Crea cluster.

  7. Nella sezione Nome e applicazioni, scegli la versione di Amazon EMR 7.0.0 o una versione successiva.

  8. In Application bundle, seleziona il pacchetto o il gruppo personalizzato di app che desideri installare nel cluster e includi l'CloudWatch agente tra le tue selezioni.

  9. Nella sezione Operazioni di bootstrap, seleziona Aggiungi.

    • In Nome, inserisci install_app_metrics_launcher.sh.

    • In Posizione dello script, inserisci s3://my-s3-bucket/install_app_metrics_launcher.sh. Sostituisci my-s3-bucket con il percorso del bucket S3.

    • Lascia vuoto il blocco Argomenti.

  10. Seleziona Add bootstrap action (Aggiungi operazione di bootstrap).

  11. Continua a creare il cluster per soddisfare le tue esigenze di carico di lavoro.

All'avvio del cluster, l' CloudWatch agente pubblica le metriche dell'applicazione che hai specificato insieme alle metriche di sistema. CloudWatch

Configura il servizio gestito da Amazon per Prometheus come spazio di archiviazione cloud per i parametri con Amazon EMR 7.0.0

Puoi configurare l' CloudWatch agente Amazon per pubblicare i parametri su Amazon Managed Service for Prometheus anziché. CloudWatch

Nota

Puoi pubblicare i parametri dell' CloudWatch agente Amazon su Amazon Managed Service for Prometheus o su CloudWatch Amazon, ma non puoi pubblicare i parametri su entrambi i servizi per lo stesso cluster.

Per configurare l'agente per pubblicare i parametri su Amazon Managed Service for Prometheus, devi aggiungere l'autorizzazione (IAM) al profilo aps:RemoteWrite AWS Identity and Access Management dell'istanza Amazon EC2 per Amazon EMR. La seguente policy di esempio contiene le autorizzazioni necessarie:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "aps:RemoteWrite", "Resource": "*" } ] }
Usa l' CloudWatch agente su un cluster EMR per pubblicare i parametri su Amazon Managed Service for Prometheus

Una volta che la policy del servizio ha le autorizzazioni corrette, segui i passaggi seguenti per avviare un cluster che utilizza l' CloudWatch agente per pubblicare i parametri su Amazon Managed Service for Prometheus.

  1. Usa AWS Management Console o AWS CLI per creare un'area di lavoro Amazon Managed Service for Prometheus. Per ulteriori informazioni, consulta Crea un workspace nella Guida per l'utente del servizio gestito da Amazon per Prometheus.

  2. Crea o scegli un bucket nel tuo account Amazon S3 in cui archiviare i file di avvio che specificano il servizio gestito da Amazon per Prometheus come spazio di archiviazione cloud.

  3. Successivamente, accedi al aws-emr-utilities repository GitHub e scarica i seguenti script:

    • add_prometheus_endpoint_launcher.sh: uno script da scaricare e che poi esegue add_prometheus_endpoint.sh in background in modo che il nodo possa completare il bootstrap.

    • add_prometheus_endpoint.sh— Uno script che attende che l'istanza su cui viene eseguita completi il bootstrap, quindi configura l' CloudWatch agente per la pubblicazione sull'endpoint Amazon Managed Service for Prometheus fornito come argomento all'avvio del cluster.

  4. Apri ogni file e sostituisci my-s3-bucket con il nome del bucket del passaggio 2.

  5. Utilizzare il AWS CLI per creare un cluster EMR con l'azione add_prometheus_endpoint_launcher.sh bootstrap. Nel comando seguente, sostituisci my-s3-bucket con il bucket che contiene l'operazione di bootstrap e sostituisci managedpro-remote-write-workspace-url con l'endpoint di scrittura remoto per il workspace del servizio gestito da Amazon per Prometheus. Assicurati di specificare un'etichetta di rilascio Amazon EMR uguale o superiore a emr-7.0.0.

    aws emr create-cluster --name managedpro-cluster \ --release-label emr-7.0.0 \ --applications Name=Hadoop Name=AmazonCloudWatchAgent \ --ec2-attributes KeyName=myKey --instance-type m7g.2xlarge \ --instance-count 3 --use-default-roles --bootstrap-actions Name='Add Prometheus Endpoint',Path=s3://my-s3-bucket/add_prometheus_endpoint_launcher.sh,Args='managedpro-remote-write-workspace-url'

All'avvio del cluster, l' CloudWatch agente pubblica le metriche raccolte su Amazon Managed Service for Prometheus.

Utilizza il servizio gestito da Amazon per Prometheus come origine dati per Grafana gestito da Amazon

Una volta che Amazon EMR ha pubblicato i parametri del cluster sul servizio gestito da Amazon per Prometheus, puoi utilizzare i seguenti passaggi per visualizzare i parametri con Grafana gestito da Amazon:

  1. Usa il AWS Management Console per creare uno spazio di lavoro e un utente Amazon Managed Grafana con le autorizzazioni appropriate. Per ulteriori informazioni, consulta Crea un workspace nella Guida per l'utente di Grafana gestito da Amazon.

  2. Aggiungi il workspace del servizio gestito da Amazon per Prometheus come origine dati per Grafana gestito da Amazon. Per ulteriori informazioni, consulta Utilizza la configurazione dell'origine dati AWS per aggiungere il servizio gestito da Amazon per Prometheus come origine dati nella Guida per l'utente di Grafana gestito da Amazon.

Nota

L' CloudWatch agente dispone di un esportatore Prometheus che rinomina determinati attributi. Per le etichette delle metriche predefinite, Amazon Managed Service for Prometheus utilizza caratteri di sottolineatura al posto dei periodi utilizzati da Amazon. CloudWatch Quindi, se usi Grafana gestito da Amazon per visualizzare i parametri predefiniti nel servizio gestito da Amazon per Prometheus, le etichette appaiono come jobflow_id, instance_id e service_name.

Inoltre, tutte le metriche dell'applicazione pubblicate dall' CloudWatch agente su Amazon Managed Service for Prometheus utilizzano l'etichetta anziché. job service_name Tuttavia, i parametri del sistema continuano a utilizzare l'etichetta service_name.