main

ELK cómo generar alertas

octubre 5, 2016 — por David Mataró0

logo-elastic-alert.jpg

alertas en ELK : CÓMO GENERARLAS

El uso más común de ELK (Elasticsearch, Logstash and Kibana) es la generación dashboards para la visualización de métricas y tendencias, así como para el análisis forense o en procesos de debug. Pero este también puede usarse para generar alertas basadas en los cambios que se producen en la infraestructura. ELK por si mismo no dispone de un sistema de generación de alertas, pero hay herramientas para ello. Vamos ha analizar las diferentes opciones de alertas en elk.

El valor de Devops para un negocio

septiembre 28, 2016 — por David Mataró0

BusinessBenefits.jpg

QuÉ es devops?

Cuando hablamos de Devops, tenemos tendencia a centrarnos en las tecnología, herramientas y procesos utilizados. Básicamente es porque quién hablamos de ello somos gente que formamos parte de los equipos de desarrollo o de operaciones. Pero que valor aporta Devops para un negocio?

En el post anterior “Devops ROI” vimos los conceptos generales que permiten justificar la inversión en tecnología, el ahorro en costes de horas de trabajo y el ahorro en caídas del sistema. Pero Devops aporta otras ventajas o valor difícil de cuantificar en términos monetarios. Hoy en día, donde todos o la mayoría de los negocios son negocios basados en tecnología, este valor puede ser el hecho diferencial entre una empresa u otra.

Para qué usamos devops?

La implantación de Devops nos permite impactar directamente en mejorar como distribuimos un producto al cliente, cambiar el producto rápidamente para satisfacer las necesidades del cliente o como recuperamos después de un fallo que afecta al cliente.

Retorno de la inversión (ROI) en Devops

septiembre 13, 2016 — por David Mataró0

design-process-thumb.jpg

El calculo de cualquier retorno de inversión se basa en el ahorro esperado. Cuando analizamos el retorno de inversión de implantar prácticas como DevOps, es difícil cuantificar este ahorro en términos monetarios. Hay dos aspectos que nos pueden ayudar a entender los ahorros que obtenemos al implantar DevOps: ahorro de costos en horas de trabajo y ahorro de costos de caídas del sistema.

Por lo que hace al ahorro de coste en las horas de trabajo, podemos clasificar el trabajo de cualquier departamento de TI o desarrollo en dos tipos, trabajos planificados y trabajos no planificados, donde los trabajos planificados son aquellos que están destinados a aportar valor a nuestros clientes, en cambio, los trabajos no planificados son aquellos que se realizan a causa de errores o incidencias que hay de resolver de inmediato. Implantar prácticas de Devops permite reducir el tiempo de trabajo no planificado. Pero cual es el coste del trabajo no planificado?

Provisionar entorno de desarrollo con Vagrant y Chef Zero

agosto 31, 2016 — por David Mataró0

VagrantChef2.jpg

En el post Gestión de la configuración o Configuration Management (CM), características y beneficios vimos que uno de los beneficios de los sistemas de gestión de la configuración como Chef o Puppet es que permiten replicar entornos de forma fácil y rápida, lo que nos permite establecer flujos de trabajo a través de los diferentes de entornos idénticos (desarrollo, test, … y producción).  Por otro lado, en el post anterior Tu primer entorno de desarrollo con Vagrant vimos como crear un entorno de desarrollo utilizando Vagrant. Hoy vamos a profundizar un poquito más en la creación de entornos viendo un ejemplo de como provisionar un servidor virtual Vagrant con Chef utilizando una herramienta llamada Chef-Zero.

Tu primer entorno de desarrollo con Vagrant

agosto 23, 2016 — por David Mataró0

vagrant.jpg

Vagrant es una herramienta que nos permite crear y configurar entornos virtuales de desarrollo de forma fácil. La ventaja de crear un entorno de desarrollo con Vagrant es que lo podemos ejecutar sobre nuestro portátil o estación de trabajo, sin necesidad de utilizar infraestructuras externas. Podemos arrancar y parar el entorno tantas veces como queramos y finalmente lo podemos compartir con el resto del equipo de sistemas y desarrollo para que estos lo puedan ejecutar en su portátil.

Con Vagrant podemos ejecutar servidores virtuales con Windows, Linux o Mac OS X, y lo podemos hacer utilizando los hypervisores VMware Workstations, VMware Fusion o VirtualBox. Además Vagrant también dispone de conectores para ejecutar estos servidores virtuales sobre proveedores de infraestructura como AWS Amazon o Digitalocean entre otros.

Cuando utilizamos Vagrant con un sistema de gestión de configuración como Chef o Puppet, podemos desplegar una copia exacta de un entorno de producción sobre nuestro portátil. Donde podemos hacer cambios de configuración y probarlos antes de aplicarlos a producción.

DevOps con proveedores externos

agosto 17, 2016 — por David Mataró0

DevOpsConProveedoresExternos-960x640.jpg

Hay una pregunta que cualquier empresa puede hacerse cuando se plantea implantar prácticas de DevOps. ¿Puedo implantar prácticas DevOps cuando trabajo con proveedores externos ?

Son muchas las empresas que utilizan proveedores externos, ya sean estos desarrolladores, consultoras o proveedores de servicios. Y además, estos equipos externos realizan su trabajo remotamente desde diferentes lugares y zonas horarias. Para implantar Devops con proveedores externos hay un conjunto de pautas que ayudan a que la colaboración sea fluida.

Monitorización en tiempo real, Elasticsearch, Logstash y Kibana

agosto 10, 2016 — por David Mataró0

elastic.jpg

Si analizamos la infraestructura que gestionamos veremos que tenemos multitud de datos en forma de logs o de emails de sistema. Normalmente cada uno de estos logs con su propia aplicación de acceso y o  formato y sin ninguna relación con el resto de sistemas. A menudo, solo utilizamos esta información para evaluar lo sucedido después de una incidencia. Pero la verdad, es que si pudiéramos disponer de todos estos datos dispersos centralizados y normalizados en un formato común, dispondríamos de una fuente de información muy valiosa para gestionar nuestra infraestructura.

Existen diferentes herramientas que permiten centralizar todos estos datos y normalizar su formato. Estas herramientas facilitan el acceso a estos datos y permiten la generación de métricas de gestión y también la generación de alertas. Una de estas herramientas es ELK (Elasticsearch, Logstash y Kibana). Esta herramienta nació de la unión de los proyectos open source Elasticsearch, Logstash y Kibana que gestiona la empresa elastic…

Continous, continous, continous

agosto 4, 2016 — por David Mataró0

continous2.png

Continous integrations, Continous delivery, Continous deployment,  son conceptos que cada vez oímos más. Uno de ellos, continous delivery es de vital importancia para la gestión de cualquier cambio a aplicar en uno o un conjunto de servidores.

Los que hayan trabajado o colaborado con equipo de desarrollo de software seguramente el concepto continous integration o integración continua les sea familiar. La integración continua es una técnica utilizada por los equipos de desarrollo para detectar fallos en el código cuanto antes. Esta consiste en ejecutar de forma automática un conjunto de test cada vez que se sube un cambio al repositorio de código fuente. Estos test comprueban todas las funcionalidades de la aplicación para detectar si el nuevo cambio afecta a alguna de las funcionalidades de la aplicación. Este proceso protege de desplegar código erróneo a producción.

Introducción a Chef

julio 26, 2016 — por David Mataró0

chef_introducion-960x506.jpg

Después de unos primeros posts hablando de Devops y automatización hoy entraremos en materia describiendo la arquitectura y conceptos básico de Chef, la plataforma que utilizamos para automatizar infraestructuras.

Chef es una plataforma que te permite automatizar cómo construyes, despliegas y gestionas tu infraestructura. Chef te permite definir tu infraestructura con software y una vez definida con software esta puede ser versionada, testeada y además es repetible. En el post anterior sobre la gestión de la configuración o configuration management (CM), ya describimos las ventajas de disponer de una infraestructura versionable, testeable y repetible.