Ir al contenido principal

Encontrar las mejores herramientas para DevOps

Para alcanzar la velocidad y agilidad ofrecida por DevOps necesitas elegir las herramientas correctas con las cuales podrás automatizar todas las tareas de desarrollo, producción y operación. De acuerdo al estudio realizado el 2013 por PuppetLabs, más del 80% de las organizaciones de alto desempeño que usan tecnología en aspectos claves de su negocio confían en herramientas de automatización para el manejo de su plataforma y pasos a producción de sus sistemas. Según esto, es probable que ya tengas muchas de las herramientas usadas en ambientes DevOps, ¿pero son las herramientas correctas para tu empresa?

Toma un acercamiento estratégico

No existe una única forma de seleccionar las herramientas correctas para tus necesidades. Los requerimientos de tu industria, departamento de TI, sistemas legados y flujos de trabajos son únicos a tu empresa. Y también es la manera para elegir las herramientas que usarán para maximizar los beneficios de DevOps.
La clave es crear una estrategia centrada en lo que es importante para tu empresa. Si tu objetivo es la colaboración, las herramientas correctas pueden alentar a tu equipo a hacer las cosas correctamente. En un breve tiempo se darán cuenta de que el esfuerzo puesto al principio aprendiendo a utilizar nuevas herramientas, se verá recompenzado a no tener que lidiar con trabajo tedioso como puede ser la habilitación de ambientes de prueba y la revisión de código o configuraciones de servidores.

Identificar los cuello de botella

El primer paso es identificar los cuello de botella de tus flujo de trabajo que impiden que tu empresa pueda contar con una plataforma más estable y usar la tecnología más fácilmente para apoyar a al negocio.
Hay dos caminos para identificar estos cuellos de botella. Primero: Pregunta! Pregunta a tu equipo en que parte las cosas se ponen lentas o problemáticas. Pídeles que generen un ranking según la severidad de estos cuellos de botella, y que identifiquen los que afectan a sistemas críticos.
Pero esto no es todo. También deberás analizar los logs de tus sistemas. Aprender que tareas y servicios son usados más y tienen un peor desempeño, que sistemas son los más inestables, y suma y sigue. Esto te dará evidencia dura de que está funcionando bien en tu plataforma y empresa, donde esta peor, y que es lo que está fallando.
Combina estos dos métodos para categorizar y comenzar la búsqueda de las herramientas que necesitan.

Enfócate en categorías claves

Las empresas más exitosas en implementar DevOps automatizan sólo utilizando herramientas en una pocas categorías claves, como por ejemplo:
Administración de configuraciones. Cuando los aficionados de DevOps hablan de cosas como “automatización de infraestructura”, “infrastructura como código” e “infrastructura programable”, ellos se refieren a la administración de configuraciones. Esto es la mantención y el seguimiento de forma centralizada de cambios en la configuración de los sistemas y softwares, lo que permite realizar operaciones rápidamente y de forma segura sobre la plataforma. Las herramientas más conocidas en este ámbito son AnsibleCFEngineChefPuppet y SaltStack. La real pregunta es que necesitan ustedes de un sistema de configuración? Por ejemplo usando Puppet puedes tener de forma inmediata un inventario de tu plataforma, mientras que está está trabajando como debe.
Paso a Producción. Las herramientas para hacer deploys permiten que el paso a producción de sistemas, lo que es el corazón de continuous delivery, uno de los principales objetivos de DevOps.Capistrano, una librería de deploy, es la herramienta más popular en esta categoría. Otras herramientas importantes para automatizar los pasos a producción son AnsibleFabric, y Jenkins. Nuevamente, lo importante es encontrar una herramienta que haga el seguimiento del historial de los sistemas y que esta información sea significativa para tu equipo.
Monitoreo. En DevOps se requieren dos tipos de monitoreo. El primero tiene que ver con la disponibilidad de los servicios, y aquí Nagios es la herramienta más conocida, aunque [Sensu][http://sensuapp.org] está ganando terreno rápidamente. El otro tipo de monitoreo es sobre el desempeño de aplicaciones y dispositivos (CPU, Memoria, Disco, etc.), en este campo la recolección de estadísticas está gobernada por herramientas como statsd y collectd, mientras que para la visualización recomendamos sin lugar a dudas Grafana.
Análisis de Logs. Si hay un espacio importante en nuestra actividad que ha sido dejado de lado por años, este es el análisis de los logs de nuestros sistemas y aplicaciones. Es en los logs donde encontramos la verdad de la salud de nuestra plataforma. Para la recoleción y transformación de logs en datos analisables la herramienta que se impone es Logstash la cual viene hoy con una consola gráfica de análisis excelente como es Kibana.
Pruebas de configuraciones. Otro ámbito importante y que no es muy usual ver que se aplique es la automatización de pruebas de los servicios que dan nuestras plataformas TI. Por ejemplo revisar que desde Internet sólo estén habilitados ciertos puertos, o que ninguno de los servidores permita el acceso del usuario root utilizando ssh. Hoy gracias a Serverspec es ridículamente sencillo escribir estos test y así estar seguro de que nuestras configuraciones están correctas.
Contar con el conjunto correcto de herramientas DevOps automatizará los trabajos de TI, entregará visibilidad en tiempo real del desempeño de sistemas y dispositivos, y te dará la seguridad de contar con una única fuente de información verídica. Más importantes que las capacidades individuales de cada herramienta, es como en conjunto pueden te ayudan en lograr los objetivos de tu empresa.

Comentarios

Entradas más populares de este blog

Solución al problema “sudo: command not found” en Linux

Al instalar una distribución GNU/Linux, lo primero que se suele hacer es ejecutar los siguientes comandos de actualización del sistema: Terminal 1 2 sudo apt - get update sudo apt - get upgrade Sin embargo, en Debian nos encontraremos con el problema de que el comando sudo  no se encuentra. Esto depende de cómo hayamos realizado el proceso de instalación, ya que si se especifica una contraseña para el usuario  root  durante la instalación,  sudo  no será instalado por defecto. Por el contrario, si no se especifica una contraseña, sí se instalará. En caso de obtener el error  “sudo: command not found” , debemos realizar los siguientes pasos para solucionar esta situación. 1. Cambiar al usuario root Desde la terminal, introducimos el comando  su  para hacer el login con el usuario  root . Pedirá una contraseña, que será la que hayamos especificado en el proceso de instalación. 2. Instalar el paquete “sudo” Ahora que ya tenem

Listado de 1500 libros gratis para estudiantes y apasionados por la Programación.

En internet hay muchos recursos para aprender a programar, la modalidad de estos por lo general son por medio de videos. Plataformas como youtube sean convertido en una muy importantes fuentes de esos recursos educativos, donde muchas personas no solo buscan apoyo para aprender a programar sino muchas otras cosas mas. Hace algunos meses tuve la oportunidad de compartirles una muy buena y amplia lista de libros gratuitos para aprender a programar, si deseas acceder a esta lo puedes hacer desde el siguiente enlace:  Importante lista de Libros gratis en formato PDF para programadores.  Les recuerdo que todos los libros son totalmente gratuitos. Si lo puedes notar los recursos son infinitos, por eso en este post quiero compartirte una nueva lista de aproximadamente 1500 libros gratis para estudiantes y apasionados por la Programación. Los libros están en formatos PDF, entres los libros encontramos aquellos que nos enseñan sobre: MYSQL, SQL SERVER, PHP, HTML, CSS, C#, C++, JAVASCRIPT

Este es el procedimiento para solicitar citas en el sistema de Gestión de Trámites Universitarios en Venezuela

El sistema otorga citas electrónicas para los procesos de certificación, acreditación, refrendo y autenticación de documentos de los egresados de instituciones universitarias oficiales y privadas El pasado mes de abril, el Ministerio del Poder Popular para Educación Universitaria, Ciencia y Tecnología (Mppeuct) activó el sistema automatizado de asignación de citas para la Gestión de Trámites Universitarios (GTU). Mediante este sistema, se otorga citas electrónicas para los procesos de certificación, acreditación, refrendo y autenticación de documentos de los egresados de instituciones universitarias oficiales y privadas, evitando las largas colas ofreciendo mayor comodidad a la población. Conozca el procedimiento para solicitar la cita electrónica: