Herramientas y devops

julio 14, 2016 — por David Mataró0

main

ConsultoríaCPDDevOpsMetodología

Herramientas y devops

julio 14, 2016 — por David Mataró0

Existen un conjunto de herramientas que nos ayudan a aplicar las prácticas propuestas por devops. A continuación vemos algunas de estas que en posteriores post iremos viendo en más profundidad.

Estas herramientas se agrupan en:

  • Herramientas de organización.
  • Herramientas para la gestión de configuraciones.
  • Herramientas de integración continua.
  • Herramientas para el análisis de logs.


Herramientas para la organización

Tradicionalmente,  los equipos de operación han gestionado las tareas mediante sistemas basados en tickets. Estos sistemas funcionan muy bien para la gestión  de incidencias y para realizar análisis de lo sucedido. En estos sistemas de gestión,  los tickets se asignan a un  operador y éste no suele tener visibilidad de los tickets que no tiene asignados. De forma que es complicado priorizar tareas cuando no se tiene una visibilidad global.

Para ello,  han irrumpido otros sistemas de gestión utilizados por largo tiempo en otros sectores como Kanban.

Kanban se basa en establecer un flujo de trabajo a través de diferentes etapas, Kanban se soporta sobre dos principios:

  • La visualización de todo el flujo de trabajo o workflow.
  • La limitación del trabajo en progreso.


Gestión
de la configuración

Uno de los problemas de las imágenes es su ineficiencia para el despliegue de servidores. Normalmente, estas se configuran manualmente, y llevan mucho trabajo para mantenerlas actualizadas con las últimas actualizaciones de software y parches de seguridad. Existen sistemas más eficientes para gestionar la imágenes, estos son los sistemas de gestión de la configuración o “Configuration Management”.

Los sistemas de gestión de la configuración permiten mejorar la  velocidad i la seguridad para configurar  nuevas imágenes automatizando la configuración de estas.

Los sistemas de gestión de la configuración también permiten aplicar cambios en múltiples servidores manteniendo la homogeneidad entre estos.  También  evitan las frases “en mi pc funciona,  es tu servidor”, problemática que vimos en el anterior post ( “Introducción a Devops y la automatización de la instalación y gestión de sistemas”)

Entre los sistemas de gestión más populares estas Chef i Puppet.


Integración
continua

Jenkins u otras soluciones de integración continua permiten ahorrar mucho tiempo a los equipos de desarrollo  y operaciones. Estos  ayudan al equipo de desarrollo a identificar bugs antes que estos pasen a producción,  y al equipo de operaciones le ayuda a asegurar que los cambios de configuración son validados antes de hacer el despliegue a producción.

Jenkins permite establecer diferentes etapas del proceso de deploy de una aplicación o un sistema. De forma que podemos establecer y garantizar que el despliegue de nuevos sistemas o cambios sobre los sistemas existentes se ejecuta a través de un proceso de despliegue definido, pudiendo ejecutar pruebas de aceptación ya sean estas manuales o automáticas antes que cualquier cambio sea implementado en el entorno de producción.


Análisis
de logs

Para garantizar que los servidores funcionan según lo esperado es imprescindible medir su rendimiento. La mejor forma de ver el rendimiento de los servidores es analizando los logs. Para ello existen herramientas como Vmware vRealize Logs Insight y Splunk. También hay herramientas open-source como ELK (Elasticsearch, Logstash y Kibana) o Graphite.

Si te interesa, echale una ojeada a los siguientes posts:

Dejar comentario

Tu dirección de correo no será publicada Los campos requeridos están marcados con *

dieciseis + cinco =