Instalación del agente de CloudWatch en nuevas instancias mediante AWS CloudFormation - Amazon CloudWatch

Instalación del agente de CloudWatch en nuevas instancias mediante AWS CloudFormation

En esta sección se describe cómo se instala el agente de CloudWatch en instancias nuevas de Amazon EC2 con AWS CloudFormation.

nota

Amazon ha cargado varias plantillas de AWS CloudFormation en GitHub para que pueda instalar y actualizar el agente de CloudWatch en las instancias nuevas de Amazon EC2. Para obtener más información acerca del uso de AWS CloudFormation, consulte ¿Qué es AWS CloudFormation?

La plantilla se encuentra en Deploy the Amazon CloudWatch agent to EC2 instances using AWS CloudFormation (Implementación del agente de Amazon CloudWatch en las instancias de EC2 mediante ). Esta ubicación incluye los directorios inline y ssm. Cada uno de estos directorios contiene plantillas para ambas instancias de Linux y Windows.

  • Las plantillas del directorio inline (en línea) tienen la configuración del agente de CloudWatch incorporada en la plantilla de AWS CloudFormation. De forma predeterminada, las plantillas de Linux recopilan las métricas mem_used_percent y swap_used_percent, mientras que las plantillas de Windows recopilan Memory % Committed Bytes In Use y Paging File % Usage.

    Para modificar estas plantillas de forma que recopilen métricas diferentes, modifique la siguiente sección de la plantilla. En el siguiente ejemplo es de la plantilla para servidores Linux. Siga el formato y la sintaxis del archivo de configuración del agente para realizar estos cambios. Para obtener más información, consulte Cree o edite de forma manual el archivo de configuración del agente de CloudWatch.

    { "metrics":{ "append_dimensions":{ "AutoScalingGroupName":"${!aws:AutoScalingGroupName}", "ImageId":"${!aws:ImageId}", "InstanceId":"${!aws:InstanceId}", "InstanceType":"${!aws:InstanceType}" }, "metrics_collected":{ "mem":{ "measurement":[ "mem_used_percent" ] }, "swap":{ "measurement":[ "swap_used_percent" ] } } } }
    nota

    En las plantillas en línea, todas las variables de marcador de posición deben tener un signo de exclamación (!) delante como carácter de escape. Puede ver esto en el ejemplo de plantilla. Si añade otras variables de marcador de posición, asegúrese de añadir un signo de exclamación delante del nombre.

  • Las plantillas del directorio ssm cargan un archivo de configuración del agente desde el almacén de parámetros. Para utilizar estas plantillas, primero se debe crear un archivo de configuración y cargarlo en el almacén de parámetros. A continuación, deberá proporcionar el nombre del almacén de parámetros del archivo en la plantilla. El archivo de configuración lo puede crear manualmente o con el asistente. Para obtener más información, consulte Cree el archivo de configuración del agente de CloudWatch.

Puede utilizar ambos tipos de plantillas para instalar el agente de CloudWatch y para actualizar la configuración del agente.

Tutorial: Instalación y configuración del agente de CloudWatch mediante una plantilla en línea de AWS CloudFormation

En este tutorial aprenderá a utilizar AWS CloudFormation para instalar el agente de CloudWatch en una nueva instancia de Amazon EC2. En este tutorial se instala el agente en una nueva instancia que ejecuta Amazon Linux 2 con las plantillas integradas que no requieren el uso del archivo de configuración JSON ni el almacén de parámetros. La plantilla en línea incluye la configuración del agente en la plantilla. En este tutorial, utilice la configuración del agente predeterminado incluido en la plantilla.

Tras el procedimiento para instalar el agente, el tutorial continúa con cómo actualizar el agente.

Para utilizar AWS CloudFormation para instalar el agente de CloudWatch en una instancia nueva
  1. Descargue la plantilla de GitHub. En este tutorial, descargue la plantilla integrada para Amazon Linux 2 del siguiente modo:

    curl -O https://raw.githubusercontent.com/aws-cloudformation/aws-cloudformation-templates/main/Solutions/AmazonCloudWatchAgent/inline/amazon_linux.yaml
  2. Abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation.

  3. Elija Crear pila.

  4. Para Choose a template (Elegir una plantilla), seleccione Upload a template to Amazon S3 (Cargar una plantilla en Amazon S3), elija la plantilla descargada y elija Next (Siguiente).

  5. En la página Specify Details (Especificar detalles), rellene los parámetros siguientes y elija Next (Siguiente):

    • Nombre de pila: elija un nombre para la pila de AWS CloudFormation.

    • IAMRole: elija un rol de IAM que tenga permisos para escribir métricas, registros y seguimientos de CloudWatch. Para obtener más información, consulte Cree roles de IAM para utilizarlos con el agente de CloudWatch en instancias de Amazon EC2.

    • InstanceAMI: elija una AMI que sea válida en la región en la que va a lanzar la pila.

    • InstanceType: elija un tipo de instancia válido.

    • KeyName: para permitir el acceso de SSH a la nueva instancia, elija un par de claves existente de Amazon EC2. Si aún no tiene un par de claves de Amazon EC2, puede crear uno en la AWS Management Console. Para más información, consulte Amazon EC2 Key Pairs en la Guía del usuario de Amazon EC2.

    • SSHLocation: especifica el rango de direcciones IP que se puede utilizar para conectarse a la instancia por medio de SSH. El valor predeterminado permite el acceso desde cualquier dirección IP.

  6. En la página Options (Opciones), puede elegir marcar los recursos de la pila. Elija Siguiente.

  7. En la página Review (Revisar), revise la información, confirme la advertencia de que la pila puede crear recursos de IAM y elija Create (Crear).

    Si actualiza la consola, verá que la nueva pila tiene el estado CREATE_IN_PROGRESS.

  8. Cuando se crea la instancia, puede verla en la consola de Amazon EC2. Si lo desea, puede conectarse al host y comprobar el progreso.

    Utilice el siguiente comando para confirmar que el agente se ha instalado:

    rpm -qa amazon-cloudwatch-agent

    Utilice el siguiente comando para confirmar que el agente se está ejecutando:

    ps aux | grep amazon-cloudwatch-agent

En el siguiente procedimiento se muestra el uso de AWS CloudFormation para actualizar el agente de CloudWatch con una plantilla en línea. La plantilla en línea predeterminada recopila la métrica mem_used_percent. En este tutorial, va a cambiar la configuración del agente para dejar de recopilar esa métrica.

Para utilizar AWS CloudFormation con el fin de actualizar el agente de CloudWatch
  1. En la plantilla que descargó en el procedimiento anterior, elimine las siguientes líneas y, a continuación, guarde la plantilla:

    "mem": { "measurement": [ "mem_used_percent" ] },
  2. Abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation.

  3. En el panel de AWS CloudFormation, seleccione la pila que creó y elija Update Stack (Actualizar pila).

  4. Para Select Template (Seleccionar plantilla), seleccione Upload a template to Amazon S3 (Cargar una plantilla en Amazon S3), elija la plantilla modificada y elija Next (Siguiente).

  5. En la página Options (Opciones), elija Next (Siguiente) y después Next (Siguiente).

  6. En la página Review (Revisar), revise la información y seleccione Update (Actualizar).

    Después de algún tiempo, verá UPDATE_COMPLETE.

Tutorial: Instalación del agente de CloudWatch mediante AWS CloudFormation y Parameter Store

En este tutorial aprenderá a utilizar AWS CloudFormation para instalar el agente de CloudWatch en una nueva instancia de Amazon EC2. En el tutorial se instala en una nueva instancia que ejecute Amazon Linux 2 con un archivo de configuración del agente que se cree y guarde en el almacén de parámetros.

Tras el procedimiento para instalar el agente, el tutorial continúa con cómo actualizar el agente.

Para utilizar AWS CloudFormation con el fin de instalar el agente de CloudWatch en una instancia nueva mediante una configuración desde Parameter Store
  1. Si aún no lo ha hecho, debe descargue el paquete de agente de CloudWatch en uno de los equipos, de modo que pueda crear el archivo de configuración del agente. Para obtener más información sobre cómo descargar el agente con el almacén de parámetros, consulte Descarga, configuración y ejecución del agente de CloudWatch con SSM. Para obtener más información acerca de cómo descargar el paquete con la línea de comandos, consulte Descargue y configure el agente de CloudWatch con la línea de comandos.

  2. Cree el archivo de configuración del agente y guárdelo en el almacén de parámetros. Para obtener más información, consulte Cree el archivo de configuración del agente de CloudWatch.

  3. Descargue la plantilla de GitHub del modo siguiente.

    curl -O https://raw.githubusercontent.com/awslabs/aws-cloudformation-templates/master/aws/solutions/AmazonCloudWatchAgent/ssm/amazon_linux.template
  4. Abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation.

  5. Elija Crear pila.

  6. Para Choose a template (Elegir una plantilla), seleccione Upload a template to Amazon S3 (Cargar una plantilla en Amazon S3), elija la plantilla descargada y elija Next (Siguiente).

  7. En la página Specify Details (Especificar detalles), rellene los parámetros siguientes según corresponda y elija Next (Siguiente):

    • Nombre de pila: elija un nombre para la pila de AWS CloudFormation.

    • IAMRole: elija un rol de IAM que tenga permisos para escribir métricas, registros y seguimientos de CloudWatch. Para obtener más información, consulte Cree roles de IAM para utilizarlos con el agente de CloudWatch en instancias de Amazon EC2.

    • InstanceAMI: elija una AMI que sea válida en la región en la que va a lanzar la pila.

    • InstanceType: elija un tipo de instancia válido.

    • KeyName: para permitir el acceso de SSH a la nueva instancia, elija un par de claves existente de Amazon EC2. Si aún no tiene un par de claves de Amazon EC2, puede crear uno en la AWS Management Console. Para más información, consulte Amazon EC2 Key Pairs en la Guía del usuario de Amazon EC2.

    • SSHLocation: especifica el rango de direcciones IP que se puede utilizar para conectarse a la instancia por medio de SSH. El valor predeterminado permite el acceso desde cualquier dirección IP.

    • SSMKey: especifica el archivo de configuración del agente que ha creado y guardado en el almacén de parámetros.

  8. En la página Options (Opciones), puede elegir marcar los recursos de la pila. Elija Siguiente.

  9. En la página Review (Revisar), revise la información, confirme la advertencia de que la pila puede crear recursos de IAM y elija Create (Crear).

    Si actualiza la consola, verá que la nueva pila tiene el estado CREATE_IN_PROGRESS.

  10. Cuando se crea la instancia, puede verla en la consola de Amazon EC2. Si lo desea, puede conectarse al host y comprobar el progreso.

    Utilice el siguiente comando para confirmar que el agente se ha instalado:

    rpm -qa amazon-cloudwatch-agent

    Utilice el siguiente comando para confirmar que el agente se está ejecutando:

    ps aux | grep amazon-cloudwatch-agent

En el siguiente procedimiento se observa el uso de AWS CloudFormation para actualizar el agente de CloudWatch mediante una configuración del agente que se guardó en Parameter Store.

Para utilizar AWS CloudFormation con el fin de actualizar el agente de CloudWatch mediante una configuración en Parameter Store
  1. Cambie el archivo de configuración del agente que se encuentra almacenado en el almacén de parámetros a la nueva configuración que desee.

  2. En la plantilla de AWS CloudFormation que ha descargado en el tema Tutorial: Instalación del agente de CloudWatch mediante AWS CloudFormation y Parameter Store, cambie el número de versión. Por ejemplo, podría cambiar VERSION=1.0 por VERSION=2.0.

  3. Abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation.

  4. En el panel de AWS CloudFormation, seleccione la pila que creó y elija Update Stack (Actualizar pila).

  5. Para Select Template (Seleccionar plantilla), seleccione Upload a template to Amazon S3 (Cargar una plantilla en Amazon S3), seleccione la plantilla que acaba de modificar y elija Next (Siguiente).

  6. En la página Options (Opciones), elija Next (Siguiente) y después Next (Siguiente).

  7. En la página Review (Revisar), revise la información y seleccione Update (Actualizar).

    Después de algún tiempo, verá UPDATE_COMPLETE.

Solución de problemas de la instalación del agente de CloudWatch con AWS CloudFormation

Esta sección lo ayudará a solucionar los problemas de instalación y actualización del agente de CloudWatch mediante AWS CloudFormation.

Detección de un error de actualización

Si utiliza AWS CloudFormation para actualizar la configuración del agente de CloudWatch y utiliza una configuración inválida, el agente deja de enviar las métricas a CloudWatch. Una forma rápida de comprobar si la configuración del agente se actualiza correctamente es observar el archivo cfn-init-cmd.log. En un servidor Linux, el archivo se encuentra en /var/log/cfn-init-cmd.log. En una instancia de Windows, el archivo se encuentra en C:\cfn\log\cfn-init-cmd.log.

Ausencia de métricas

Si no ve las métricas que espera ver después de instalar o actualizar el agente, confirme que el agente esté configurado para recopilar esa métrica. Para ello, compruebe el archivo amazon-cloudwatch-agent.json para asegurarse de que la métrica figure en la lista y compruebe que está mirando en el espacio de nombres de métricas correcto. Para obtener más información, consulte Archivos y ubicaciones del agente de CloudWatch.