[TP] Proyecto 1


Para esta práctica, vamos a realizar un proyecto.

Lo que vas a aprender en este TP :
  • Instalar un agente dynatrace: oneagent
  • Comprender los parámetros disponibles
  • Reconfigurar un agente
  • Optimizar su infraestructura/costos
  • Deshabilitar el monitoreo de procesos, contenedores, ...
  • elección de operadores
  • Gestión y asignación de equipos
  • uso de dt.owner y owner

Introducción

Este proyecto tiene como objetivo hacerte manipular diferentes conceptos en torno a Dynatrace y especialmente combinarlos para lograr un objetivo. Para ello, instalaremos y configuraremos un servidor Docker e instalaremos el agente de Dynatrace para obtener una vista 360 del servidor.

Entorno de prueba

Para realizar esta práctica, necesitará un entorno Ubuntu (Pero la práctica se puede hacer con otros SO/distribuciones). En esta máquina, crearemos 2 máquinas virtuales con las siguientes características:
  • Máquina virtual 1:
    • Nombre: gl-145-pr
    • vCPU: 1
    • RAM: 1 GB
    • IP: 192.168.56.2
  • Máquina virtual 2:
    • Nombre: gl-463-rc
    • vCPU: 1
    • RAM: 1 GB
    • IP: 192.168.56.3
Para ayudarlo a configurar este entorno, hemos puesto a su disposición un repositorio con una configuración Vagrant/Virtualbox lista para usar.

RECORDATORIO: Esta práctica está dedicada a la configuración de Dynatrace pero como se trata de una práctica avanzada, necesitará conceptos y conocimientos en torno a DevOps que no son específicos de Dynatrace pero que se utilizarán en sus configuraciones. Necesitará las siguientes habilidades, de las cuales puede seguir la formación de forma gratuita: Obviamente, pondremos a su disposición la mayor cantidad de información posible para que avance incluso sin estos requisitos previos.

Para ello, debe instalar Vagrant y Virtualbox en su máquina. Una vez hecho esto, solo tiene que ejecutar los siguientes comandos:
git clone https://github.com/RousselTM/dynatrace-formation
cd dynatrace-formation/tp
vagrant up

Preconfiguración

Las siguientes acciones son necesarias para preparar su entorno de prueba.

Agente Dynatrace


Lo que vas a aprender en esta sección :
  • Instalar un agente dynatrace: oneagent
  • Comprender los parámetros disponibles
  • Reconfigurar un agente

Veremos cómo instalar y reconfigurar un agente.

Para repasar la sesión sobre la instalación del oneagent, puede hacer clic en este enlace: Instalación y configuración del oneagent
  1. Instalación
    Debe instalar el oneagent en la máquina 'rousseltm-prod-1' definiendo el hostgroup como 'PROD_TP'.
    INFORMACIÓN: Para preparar su transición a IaC, le recomendamos que recupere las fuentes a través de la CLI. Además de la ventaja para IaC, la URL proporcionará automáticamente la versión que corresponda a las actualizaciones del servidor Dynatrace. De esta forma evitará un desajuste entre la versión de la consola y la versión de los agentes.
  2. Verificaciones
    Debe acceder a la consola dynatrace y verificar que su máquina aparece correctamente. ¿Cuál es la aplicación para ver las máquinas que reportan? También debe comprobar que el hostgroup aparece correctamente. ¿Qué aplicación también puede permitirle ver todos los elementos en los que hay un oneagent?
  3. Los PATH
    Durante una instalación, puede ser necesario modificar las carpetas predeterminadas para adaptarse al formato del disco. Debe proporcionar las configuraciones que se establecerán al instalar el agente para personalizar:
    • Carpeta de instalación
    • Carpeta de logs
    • ...
  4. Reconfiguración
    Como se indicó en la formación, es posible que necesitemos modificar los parámetros del oneagent por varias razones: error de configuración, parámetro ausente, migración a un nuevo clúster...
    CRÍTICO: Lo fácil sería reinstalar el agente, pero con la consecuencia de crear un nuevo ID y, por tanto, la pérdida del historial. Por lo tanto, es mejor reconfigurarlo. Reconfiguración del oneagent
    Por lo tanto, debe modificar la configuración del agente para agregar o actualizar:
    • hostgroup: PROD_TP1
    • TAGS: ENV=PROD, PROJECT=P1, APP=A1
    • Owner: T1
    Recuerde comprobar de nuevo si su modificación se tiene debidamente en cuenta en la consola.

Descubrimiento

En esta sección, utilizaremos Dynatrace para tener una visión 360 de la infraestructura.
  1. Mapeo
    Debe encontrar cómo obtener el mapa de su infraestructura: Centro de datos, máquinas, procesos...

Configuración


Lo que vas a aprender en esta sección :
  • Optimizar su infraestructura/costos
  • Deshabilitar el monitoreo de procesos, contenedores, ...
  • elección de operadores

En esta sección, veremos qué es un 'detected name' y cómo crear nombres personalizados
  1. Host
    Debe configurar Dynatrace para que cambie el nombre de las máquinas siguiendo esta plantilla:
    • Todas las máquinas con Hostgroup: '$HOSTGROUP - $DETECTEDNAME'
    • Todas las máquinas sin Hostgroup: 'ERROR - $DETECTEDNAME'
  2. Process group
    Dynatrace agrupará automáticamente los procesos que juzgue idénticos (si no identifica un Hostgroup). Tendrá diferentes aplicaciones en Docker que agrupará, mientras que en realidad son diferentes. Debe crear la configuración para forzar a dynatrace a separarlas en función de la variable de entorno 'ROUSSELTM_APP':
  3. Servicios
  4. Etiquetas (Tags)
    Debe agregar una configuración que creará en todos los servicios de tipo 'Web request service' la etiqueta 'ROUSSELTM_APP' con el contenido del nombre del servidor como valor.
    CRÍTICO: Idealmente, en una empresa, debe asegurarse de que cada entidad tenga el número mínimo de etiquetas para identificar: dirección, departamento, equipo, proyecto ...
    También queremos que el 'Host' y el 'Process group' que alojan estos últimos hereden estas etiquetas.
  5. Zonas
    Como habrá notado, todas las entidades se agrupan. Para este entorno de demostración no supone un problema, pero en una empresa será necesario crear zonas de gestión (management zones) para ordenar esto.
    RECORDATORIO: Además de permitir clasificar entidades en dynatrace, también le permitirá administrar la seguridad.
    Por lo tanto, debe crear una zona de gestión que contendrá todos los servicios, grupos de procesos, máquinas que tengan la etiqueta 'ROUSSELTM_APP=APP1'
    RECORDATORIO: En una empresa, tendrá que agregar otras reglas en la zona de gestión para tener en cuenta otros elementos APLICACIÓN, BASES DE DATOS, ...
  6. Proceso
    De forma predeterminada, Dynatrace recopilará información sobre todo lo que descubra. En una empresa, tendrá procesos, contenedores... que no desea monitorear. Debe configurar Dynatrace para que no monitoree todos los contenedores que terminan en '-build'.
    RECORDATORIO: Ya tiene configuraciones predeterminadas en Settings -> Processes and containers -> Built-in container monitoring rules
  7. Serverless
    ¿Su empresa usa serverless? Debe activar la configuración para que Dynatrace pueda detectar sus contenedores.

Propietarios


Lo que vas a aprender en esta sección :
  • Gestión y asignación de equipos
  • uso de dt.owner y owner

Si su instancia de Dynatrace está configurada correctamente, debería poder saber a quién pertenece cada recurso (entidad). Vimos en el curso que es posible hacer esto de diferentes maneras (etiquetas, metadatos...) pero la más recomendada es el uso de etiquetas. Pero esta información es más técnica para clasificar y procesar sus datos y no permite identificar a las personas que intervienen en la entidad: desarrollador, operador, ... Dynatrace por lo tanto le proporciona la función de propietario para permitirle llenar este vacío.
  1. Creación
    Debe crear el equipo 'Proyecto 1' con las siguientes características:
    • Nombre del equipo: Proyecto 1
    • Descripción: su descripción
    • ID de equipo: proyecto1
    • Funciones: Development y Operations
  2. Asignación
    Debe asignar este equipo a todas las máquinas virtuales/contenedores del equipo en cuestión.

Nivel de dificultad: (2/5)

Articles recommandés

Grafana Alloy: Perfilado Continuo con Pyroscope

Descubra cómo configurar el perfilado continuo (Continuous Profiling) en sus ...

Glossaire de la formation

Observabilidad

La capacidad de conocer el estado interno de un sistema a partir de los datos que emite.Estos datos se clasifican en 3 pilares: logs (registros)métric...

CI/CD

Integración Continua y Despliegue Continuo. Prácticas DevOps destinadas a automatizar las pruebas y el despliegue de aplicaciones para entregar de for...

Dynatrace

Plataforma de observabilidad completa basada en inteligencia artificial (Davis), que ofrece monitorización de aplicaciones (APM), infraestructura y ex...

APM (Application Performance Monitoring)

Monitorización del rendimiento de aplicaciones para identificar, diagnosticar y resolver problemas complejos relacionados con el rendimiento y la disp...

SLA (Service Level Agreement)

Contrato oficial concluido entre un proveedor de servicios y su cliente, definiendo el nivel de servicio esperado (disponibilidad, tiempo de respuesta...

SLO (Service Level Objective)

Objetivo interno cuantificado definido por el equipo técnico (SRE) sobre el nivel de fiabilidad de un servicio (ej: 99.9% de disponibilidad). Relación...

SLI (Service Level Indicator)

Métrica cuantitativa real que mide el nivel de servicio proporcionado en producción (ej: tasa de éxito de solicitudes, latencia media). Relación: El S...

DEM (Digital Experience Monitoring)

Monitorización de la Experiencia Digital. Engloba las tecnologías que permiten rastrear y optimizar la experiencia de los usuarios finales en las apli...

RUM (Real User Monitoring)

Monitorización de Usuarios Reales. Técnica de observabilidad pasiva que captura y analiza cada interacción de los usuarios con una aplicación web o mó...

Synthetic Monitoring

Monitorización Sintética. Técnica de observabilidad activa que utiliza scripts automatizados (bots) para simular el recorrido de los usuarios y verifi...

Trazas distribuidas

Técnica (proveniente del pilar de Trazas) que permite seguir el recorrido completo de una solicitud a través de múltiples microservicios para identifi...

Métricas

Medidas numéricas recopiladas a intervalos regulares (ej: CPU, RAM, tiempo de respuesta) utilizadas para evaluar el estado de salud general de un sist...

AIOps (Artificial Intelligence for IT Operations)

Uso de la inteligencia artificial y el aprendizaje automático para automatizar y mejorar las operaciones informáticas (ej: detección de anomalías, red...

OpenTelemetry

Framework de código abierto que proporciona estándares, APIs y SDKs para recopilar y exportar datos de observabilidad (trazas, métricas, logs) de mane...