Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Configuración CloudWatch del agente para Amazon EMR 7.0.0
Puede configurar el CloudWatch agente de Amazon para que utilice métricas del sistema adicionales, diferentes de las que proporciona la configuración predeterminada del CloudWatch agente. La configuración de la versión 7.0.0 requiere el uso de acciones de arranque, de las que se ofrecen ejemplos en las siguientes secciones. En una próxima versión, Amazon EMR ofrecerá opciones de configuración adicionales a través de la API de Amazon EMR.
Temas
Configuración de métricas de sistema adicionales con Amazon EMR 7.0.0
Realice los siguientes pasos para configurar el agente para que utilice un conjunto diferente de métricas del sistema en Amazon EMR 7.0.0:
-
Cree o elija un bucket en la cuenta de Amazon S3 en la que desea almacenar los archivos de configuración que especifican las métricas del CloudWatch agente.
-
Cree el archivo de configuración del
emr-amazon-cloudwatch-agent.json
con las métricas especificadas que prefiera. Para ello, utilice uno de los métodos explicados en Crear el archivo de configuración del CloudWatch agente. Para obtener más información acerca de la estructura del archivo de configuración del CloudWatch agente, consulte Crear el archivo de configuración del CloudWatch agente de forma manual en la Guía del CloudWatch usuario de Amazon. -
A continuación, vaya al aws-emr-utilities repositorio en GitHub y descargue los siguientes scripts de métricas del sistema:
-
install_system_metrics_launcher.sh
: un script que se descarga y luego ejecuta install_system_metrics.sh
en segundo plano para que el nodo pueda terminar de arrancar. -
install_system_metrics.sh
: un script que espera a que la instancia en la que se ejecuta termine de arrancar y, a continuación, descarga y aplica la configuración en el archivo JSON.
-
-
Abra cada archivo SH y reemplace
por el nombre del bucket del paso 1.amzn-s3-demo-bucket
-
Cargue el archivo JSON y los dos archivos SH en el bucket de S3.
-
Ahora puede ir a la consola de Amazon EMR y crear un clúster nuevo con el CloudWatch agente. En EMR activado, EC2 en el panel de navegación de la izquierda, seleccione Clústeres y, a continuación, Crear clúster.
-
En la sección Nombre y aplicaciones, elija la versión de Amazon EMR 7.0.0 o posterior.
-
En Paquete de aplicaciones, seleccione el paquete o las aplicaciones que desea instalar en el clúster e incluya el CloudWatch agente de Amazon en la selección.
-
En la sección Acciones de arranque, seleccione Agregar.
-
En Nombre, ingrese
install_system_metrics_launcher.sh
. -
Para la Ubicación del script, ingrese
s3://
. Reemplaceamzn-s3-demo-bucket
/install_system_metrics_launcher.sh
por la ruta al bucket de S3.amzn-s3-demo-bucket
-
Deje el bloque Argumentos vacío.
-
-
Seleccione Agregar acción de arranque.
-
Continúe con la creación del clúster para satisfacer las necesidades de la carga de trabajo.
Cuando se lanza el clúster, el CloudWatch agente publica las métricas del sistema que especificó en el archivo de configuración CloudWatch.
Configuración de las métricas de las aplicaciones con Amazon EMR 7.0.0
Puede configurar el CloudWatch agente de Amazon para que publique métricas de aplicaciones para HDFS y YARN además de las métricas del sistema. Realice los pasos siguientes para configurar el agente para que publique métricas de aplicaciones:
-
Cree o elija un bucket en la cuenta de Amazon S3 en la que desea almacenar los archivos de configuración que especifican las métricas del CloudWatch agente.
-
A continuación, vaya al aws-emr-utilities repositorio en GitHub y descargue los siguientes scripts:
-
install_app_metrics_launcher.sh
: un script que se descarga y luego ejecuta install_app_metrics.sh
en segundo plano para que el nodo pueda terminar de arrancar. -
install_app_metrics.sh
: un script que espera a que la instancia en la que se ejecuta termine de arrancar y, a continuación, descarga y aplica la configuración en los archivos YAML que se descargarán en el paso siguiente.
-
-
Abra cada archivo y reemplace
por el nombre del bucket del paso 1.amzn-s3-demo-bucket
-
A continuación, descargue los siguientes archivos de mapeo YAML. Para obtener información sobre cómo están estructurados estos archivos YAML, consulta
javaagent
en el OpenTelemetry Instrumentation for Java GitHub repositorio. -
datanode-metrics.yaml
: la configuración de las métricas de Hadoop DataNode. -
namenode-metrics.yaml
: la configuración de las métricas de Hadoop NameNode. -
nodemanager-metrics.yaml
: la configuración de las métricas de Yarn NodeManager. -
resourcemanager-metrics.yaml
: la configuración de las métricas de Yarn ResourceManager.
-
-
Cargue los dos archivos SH y los cuatro archivos YAML en el bucket de S3.
-
Ahora puede ir a la consola de Amazon EMR y crear un clúster nuevo con el CloudWatch agente. En EMR activado, EC2 en el panel de navegación de la izquierda, seleccione Clústeres y, a continuación, Crear clúster.
-
En la sección Nombre y aplicaciones, elija la versión de Amazon EMR 7.0.0 o posterior.
-
En Paquete de aplicaciones, seleccione el paquete o el grupo personalizado de aplicaciones que desee instalar en el clúster e incluya el CloudWatch agente en la selección.
-
En la sección Acciones de arranque, seleccione Agregar.
-
En Nombre, ingrese
install_app_metrics_launcher.sh
. -
Para la Ubicación del script, ingrese
s3://
. Reemplaceamzn-s3-demo-bucket
/install_app_metrics_launcher.sh
por la ruta al bucket de S3.amzn-s3-demo-bucket
-
Deje el bloque Argumentos vacío.
-
-
Seleccione Agregar acción de arranque.
-
Continúe con la creación del clúster para satisfacer las necesidades de la carga de trabajo.
Cuando se lanza el clúster, el CloudWatch agente publica las métricas de la aplicación que especificó junto con las métricas del sistema CloudWatch.
Configuración de Amazon Managed Service para Prometheus como almacenamiento en la nube para métricas con Amazon EMR 7.0.0
Puede configurar el CloudWatch agente de Amazon para que publique métricas en Amazon Managed Service para Prometheus en lugar de. CloudWatch
nota
Puede publicar métricas del CloudWatch agente de Amazon en Amazon Managed Service para Prometheus o en CloudWatch Amazon, pero no puede publicar las métricas en ambos servicios en un mismo clúster.
Para configurar el agente para que publique métricas en Amazon Managed Service para Prometheus, debe agregar aps:RemoteWrite
AWS Identity and Access Management el permiso (IAM) IAM al perfil de EC2 instancia de Amazon para Amazon EMR. El siguiente ejemplo de política contiene los permisos necesarios:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "aps:RemoteWrite", "Resource": "*" } ] }
Uso del CloudWatch agente en un clúster de EMR para que publique métricas en Amazon Managed Service para Prometheus
Cuando la política de servicio tenga los permisos correctos, realice los siguientes pasos para lanzar un clúster que utilice el CloudWatch agente para publicar métricas en Amazon Managed Service para Prometheus.
-
Utilice la AWS Management Console o la AWS CLI para crear un espacio de trabajo de Amazon Managed Service para Prometheus. Para obtener más información, consulte Crear un espacio de trabajo en la Guía del usuario de Amazon Managed Service para Prometheus.
-
Cree o elija un bucket en la cuenta de Amazon S3 en la que desea almacenar los archivos de lanzamiento que especifican Amazon Managed Service para Prometheus como almacenamiento en la nube.
-
A continuación, vaya al aws-emr-utilities repositorio en GitHub y descargue los siguientes scripts:
-
add_prometheus_endpoint_launcher.sh
: un script que se descarga y luego ejecuta add_prometheus_endpoint.sh
en segundo plano para que el nodo pueda terminar de arrancar. -
add_prometheus_endpoint.sh
— un script que espera a que termine el arranque de la instancia en la que se ejecuta y, a continuación, configura el CloudWatch agente a fin de publicar en el punto de conexión de Amazon Managed Service para Prometheus que se proporciona como argumento al lanzar el clúster.
-
-
Abra cada archivo y reemplace
por el nombre del bucket del paso 2.amzn-s3-demo-bucket
-
Utilice AWS CLI para crear un clúster de EMR con la acción de
add_prometheus_endpoint_launcher.sh
arranque. En el siguiente comando, reemplace
por el bucket que contiene la acción de arranque y reemplaceamzn-s3-demo-bucket
por el punto de conexión de escritura remoto del espacio de trabajo de Amazon Managed Service para Prometheus. Asegúrese de especificar una etiqueta de versión de Amazon EMR igual amanagedpro-remote-write-workspace-url
emr-7.0.0
o posterior.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://amzn-s3-demo-bucket
/add_prometheus_endpoint_launcher.sh,Args='managedpro-remote-write-workspace-url
'
Cuando se lanza el clúster, el CloudWatch agente publica las métricas que recopila en Amazon Managed Service para Prometheus.
Uso de Amazon Managed Service para Prometheus como origen de datos para Amazon Managed Grafana
Una vez que Amazon EMR haya publicado las métricas del clúster en Amazon Managed Service para Prometheus, puede realizar los siguientes pasos para visualizar las métricas con Amazon Managed Grafana:
-
Utilice AWS Management Console para crear un espacio de trabajo y un usuario de Amazon Managed Grafana con los permisos adecuados. Para obtener más información, consulte Crear un espacio de trabajo en la Guía del usuario de Amazon Managed Grafana.
-
Agregue Amazon Managed Service para Prometheus como origen de datos para Amazon Managed Grafana. Para obtener más información, consulte Uso de la configuración de la fuente de datos AWS para agregar Amazon Managed Service para Prometheus como origen de datos en la Guía del usuario de Amazon Managed Grafana.
nota
El CloudWatch agente tiene un exportador de Prometheus que cambia el nombre de algunos atributos. Para las etiquetas de métricas predeterminadas, Amazon Managed Service para Prometheus utiliza caracteres de subrayado en lugar de los puntos que utiliza Amazon. CloudWatch Por lo tanto, si utiliza Amazon Managed Grafana para visualizar las métricas predeterminadas en Amazon Managed Service para Prometheus, las etiquetas aparecen como jobflow_id
, instance_id
y service_name
.
Además, cualquier métrica de la aplicación que el CloudWatch agente publique en Amazon Managed Service para Prometheus utiliza la job
etiqueta. service_name
Sin embargo, las métricas del sistema siguen utilizando la etiqueta service_name
.