Esta guía sirve de introducción al Agent y te explica cómo usarlo para enviar métricas de nivel de sistema a la plataforma de Datadog. Se utilizará como ejemplo la instalación del Agent en Ubuntu. Estos son los puntos que trataremos:
- Instalación del Agent
- Verificar que el Agent se esté ejecutando
- Configurar las funciones del Agent
- Solucionar problemas en los recursos
Acerca del Agent
El Datadog Agent es un software que se ejecuta en tus hosts. Recopila eventos y métricas de los hosts y los envía a Datadog, donde puedes analizar tus datos de monitorización y rendimiento. Puede ejecutarse en tus hosts locales (Windows, MacOS), entornos contenedorizados (Docker, Kubernetes) y en los centros de datos on-premise. Para instalarlo y configurarlo, puedes utilizar herramientas de gestión de configuración (como Chef, Puppet o Ansible).
El Agent puede recopilar entre 75 y 100 métricas de nivel de sistema cada 15-20 segundos. Con configuración adicional, el Agent puede enviar datos, logs y trazas en tiempo real desde los procesos en ejecución a la plataforma de Datadog. El Datadog Agent es de código abierto, y su código fuente está disponible en GitHub: DataDog/datadog-agent.
Sobrecarga del Agent
La cantidad de espacio y recursos que ocupa el Agent depende de la configuración y de los datos que el Agent esté configurado para enviar. Al principio, puedes esperar alrededor de un 0,08% de CPU utilizada de media con un espacio en disco de aproximadamente 880MB a 1,3GB.
Para obtener más información sobre estos puntos de referencia, consulta Sobrecarga del Agent.
Datos recopilados
Métricas del Agent
Las métricas del Agent que presentamos a continuación son información que el Agent envía a Datadog sobre sí mismo. Su propósito es que dispongas de datos como en qué hosts y contenedores se están ejecutando Agents, cuándo se inicia un Agent y qué versión de Python se está utilizando.
Métrica | Descripción |
---|
datadog.agent.python.version | La métrica está etiquetada con python_version . |
datadog.agent.running | Muestra un valor de 1 si el Agent envía información a Datadog. |
datadog.agent.started | Envía un count con un valor de 1 cuando se inicia el Agent (disponible en v6.12+). |
Para ver la lista completa de métricas del Agent, consulta la integración de Métricas del Agent.
Checks
Dependiendo de la plataforma que utilices, el Agent puede tener varios checks básicos activados de forma predeterminada que recopilen métricas.
Para recopilar métricas de otras tecnologías, consulta la página de Integraciones.
Diferencias entre Agents para hosts y para contenedores
En esta guía, te enseñaremos a instalar y configurar un Agent en un host. Si tu intención es instalar Agents en un entorno contenedorizado, deberías tener en cuenta que existen algunas diferencias.
En un host, el Agent se configura mediante un archivo YAML (como podrás comprobar más adelante en esta guía). En cambio, las opciones de configuración del Agent en un contenedor se habilitan con variables de entorno como, por ejemplo:
DD_API_KEY
para la clave de API de DatadogDD_SITE
para el sitio de Datadog
De un modo similar, mientras que en un host las integraciones se identifican mediante el archivo de configuración del Agent, en un entorno de contenedor se identifican automáticamente mediante la función Autodiscovery de Datadog. Para más información, consulta Autodiscovery básico del Agent.
Consulta Docker Agent o Kubernetes para ver un tutorial sobre cómo ejecutar el Agent en un entorno contenedorizado.
¿Por qué debería instalar el Agent?
Para que el Agent envíe datos desde cualquiera de las numerosas integraciones basadas en Agent, tiene que estar instalado. No tiene necesidad de desviar los datos a la plataforma de Datadog; por ejemplo, puedes enviar logs y métricas a través de la API de Datadog. Sin embargo, el Agent es el método recomendado obstante para desviar tus datos hacia la plataforma de Datadog.
El Agent recopila datos del host cada 15 segundos para ofrecer información precisa sobre lo que sucede en tus entornos. Como se ha mencionado anteriormente en la sección Checks, el Agent tiene varios checks activados que recopilan más de 50 métricas predeterminadas para brindar más información sobre los datos de nivel de sistema.
Configuración
Requisitos previos
Crea una cuenta de Datadog.
Ten a mano tu clave de API de Datadog.
Ten la IU de Datadog abierta.
Nota: Este tutorial utiliza el sistema operativo Ubuntu. Consulta la página Uso básico del Agent para obtener una lista completa de las plataformas compatibles.
Instalación
En la interfaz de usuario de Datadog, ve a la página Instalación del Agent y haz clic en Ubuntu. Para instalar el Datadog Agent en un host, utiliza el comando de instalación de una línea de esa página (el ejemplo se muestra a continuación), actualizado con tu clave de API de Datadog.
Ejemplo para Ubuntu de un comando de instalación de una línea:
DD_API_KEY=<DATADOG_API_KEY> DD_SITE="" bash -c "$(curl -L https://install.datadoghq.com/scripts/install_script_agent7.sh)"
Utiliza la página de instalación del Agent para consultar las instrucciones de instalación más actualizadas para tu sistema operativo.
Validación
Comando del terminal
Ejecuta el comando de estado del Agent para verificar la instalación.
sudo datadog-agent status
Si la instalación se realiza correctamente, devolverá un informe de estado de Agent con la información del Agent al comienzo. Ejemplo:
===============
Agent (v7.36.1)
===============
Status date: 2022-06-15 15:54:48.364 EDT / 2022-06-15 19:54:48.364 UTC (1655322888364)
Agent start: 2022-06-15 15:54:29.85 EDT / 2022-06-15 19:54:29.85 UTC (1655322869850)
Pid: 9801
Go Version: go1.17.6
Python Version: 3.8.11
Build arch: amd64
Agent flavor: agent
Check Runners: 6
Log Level: info
Eventos
En la interfaz de usuario de Datadog, ve a la Página del Event Explorer. Cuando se inicia o reinicia un Agent, envía eventos a Datadog. El siguiente mensaje aparece si tu Agent se instala correctamente:
Agent de Datadog (v. 7.XX.X) iniciado en <Hostname>
Checks de servicio
El Agent está configurado para ofrecer los siguientes checks de servicio:
Estos checks pueden utilizarse en la plataforma de Datadog para visualizar el estado del Agent a través de monitores y dashboards de forma rápida. Consulta Información general sobre el check de servicio para obtener más información.
Métricas
En la interfaz de usuario de Datadog, ve a la página Resumen de métricas y busca la métrica datadog.agent.started
o la métrica datadog.agent.running
. Si estas métricas no son visibles de inmediato, es posible que el Agent tarde unos minutos en enviar los datos a la plataforma de Datadog.
Haz clic en cualquiera de las métricas para que se abra un panel de métrica. Aquí, podrás ver metadatos adicionales sobre el lugar desde el que se recopilaron las métricas, así como cualquier etiqueta asociada. Como no se ha configurado ninguna etiqueta en el host a estas alturas del tutorial, solo deberías ver las etiquetas predeterminadas que Datadog asigna a las métricas, como version
y host
. Para obtener más información sobre cómo añadir etiquetas, consulta la siguiente sección sobre los archivos de configuración del Agent.
Explora otras métricas predeterminadas, como ntp.offset
o system.cpu.idle
.
Archivos de configuración del Agent
El archivo de configuración principal del Agent es datadog.yaml
. Estos son los parámetros obligatorios:
- tu clave de API de Datadog, que se utiliza para asociar los datos del Agent con tu organización, y
- el sitio de Datadog (
).
Consulta el ejemplo de archivo config_template.yaml
para ver todas las opciones disponibles de configuración.
Puedes modificar los archivos de configuración del Agent para aprovechar otras funciones de Datadog, incluidas las etiquetas (tags).
Las etiquetas añaden una capa adicional de metadatos a tus métricas y eventos. Te permiten contexto y comparar los datos en visualizaciones de Datadog. Cuando los datos se envían a Datadog desde múltiples hosts, el etiquetado de esta información te permite limitar los datos que más te interesa visualizar.
Por ejemplo, supongamos que tienes datos recopilados de diferentes equipos y sólo te interesa ver las métricas del equipo alfa, el etiquetado de esos hosts específicos con team:alpha
o team:bravo
te permite filtrar hasta las métricas que están etiquetadas con team:alpha
. Consulta Empezando con etiquetas para obtener más información sobre el etiquetado de tus datos.
Localiza el archivo principal de configuración del Agent. Para Ubuntu, las localizaciones del archivos son /etc/datadog-agent/datadog.yaml
.
En el archivo datadog.yaml
, localiza el parámetro tags
. Puedes definir las etiquetas de nivel de host en la configuración de datadog.yaml
para aplicar las etiquetas en todas las métricas, trazas y logs que se desvíen desde este host.
## @param tags - list of key:value elements - optional
## @env DD_TAGS - space separated list of strings - optional
## List of host tags. Attached in-app to every metric, event, log, trace, and service check emitted by this Agent.
##
## This configuration value merges with `DD_EXTRA_TAGS`, allowing some
## tags to be set in a configuration file (`tags`), and additional tags to be added
## with an environment variable (`DD_EXTRA_TAGS`).
##
## Learn more about tagging: https://docs.datadoghq.com/tagging/
#
# tags:
# - team:infra
# - <TAG_KEY>:<TAG_VALUE>
Quita la marca de comentario del parámetro de etiquetas y de la etiqueta team:infra
del ejemplo. También puedes añadir tu propia etiqueta personalizada (por ejemplo, test:agent_walkthrough
).
## @param tags - list of key:value elements - optional
## @env DD_TAGS - space separated list of strings - optional
## List of host tags. Attached in-app to every metric, event, log, trace, and service check emitted by this Agent.
##
## This configuration value merges with `DD_EXTRA_TAGS`, allowing some
## tags to be set in a configuration file (`tags`), and additional tags to be added
## with an environment variable (`DD_EXTRA_TAGS`).
##
## Learn more about tagging: https://docs.datadoghq.com/tagging/
#
tags:
- team:infra
- test:agent_walkthrough
Reinicia el Agent ejecutando el [comando de reinicio] del Agent 26. El comando de reinicio de Ubuntu:
sudo service datadog-agent restart
Unos minutos más tarde, ve de nuevo a la página Resumen de métricas y haz clic en la métrica datadog.agent.started
. Además de las etiquetas host
y version
predeterminadas, verás la etiqueta team
y las etiquetas personales que hayas añadido. También puedes filtrar las métricas con el campo Tag
en la parte superior de la página.
Ve a la página del Event Explorer y busca las etiquetas personalizadas que aparecen con el último evento del Agent.
Otras opciones de configuración
La recopilación de datos de logs, trazas (traces) y procesos puede habilitarse a través del archivo de configuración del Agent. No son funciones activadas por defecto. Por ejemplo, en el archivo de configuración, el parámetro logs_enabled
está establecido en false.
##################################
## Configuración de la recopilación de logs ##
##################################
## @param logs_enabled - boolean - optional - default: false
## @env DD_LOGS_ENABLED - boolean - optional - default: false
## Para activar la recopilación de logs del Datadog Agent, establece logs_enabled como true.
#
# logs_enabled: false
Para configurar otras funciones de Datadog mediante el archivo de configuración del Agent, es necesario:
Durante la configuración, cuando veas que la documentación hace referencia al archivo datadog.yaml
o al archivo de configuración del Agent, ten en cuenta que se trata del archivo que tienes que configurar.
Comandos
Consulta Comandos del Agent para Iniciar, Detener o Reiniciar tu Agent.
Solucionar problemas
Si necesitas ayuda para solucionar problemas relacionados con el Agent:
Referencias adicionales
Más enlaces, artículos y documentación útiles:
Siguientes pasos
After the Agent is installed: