22/10/2014

Lo que DevOps une, que nadie lo separe

A estas alturas, decir que la industria de las TI vive un cambio constante no es ninguna exclusiva. De hecho, resulta cada vez más patente la necesidad de transformación de los modelos de negocio con la agilidad necesaria para responder a las necesidades de los clientes (y a las de la propia empresa) así como aplicar actualizaciones con la mayor celeridad que sea compatible con la calidad, para anticiparse a los competidores. Esta premisa, que nadie discutirá, requiere una política interna que alinee el departamento de operaciones TI (cuya misión básica es la estabilidad) y de desarrollo (normalmente más proclive al cambio). Este es el papel del concepto DevOps: Developers + Operations.

Ocurre a menudo que esos dos departamentos trabajan aislados el uno del otro [la expresión al uso es ´silos`] con motivaciones y objetivos distintos, y a veces con intereses conflictivos que, a la postre, acaban retrasando los lanzamientos de productos y/o servicios. DevOps se define como un modelo altamente colaborativo, cuyo resultado es una mayor productividad en los procesos y una calidad más alta, como consecuencia de automatizar los recursos de TI y los flujos de trabajo, todo ello con la posibilidad de medición constante del rendimiento de cada actualización, y establecer un diagnóstico integral del software a medida que se avanza en el proyecto.

Así dicho, podría parecer que esta crónica se aparta de los senderos habituales de este blog, dedicado al análisis de las estrategias en el mercado TI. Pues, todo lo contrario: DevOps es un concepto que ha nacido para vivir mucho tiempo, porque la realidad del mercado lo pide a gritos. La prueba es que lo han adoptado casi todos los nombres que tienen algo que decir en esta industria, desde Google hasta Oracle, pasando por CA Technologies, RedHat, Amazon o VMware, por citar algunos.

Microsoft pone a disposición la herramienta gratuita DevOps Deployment Workbench Express Edition, para entornos de la compañía (infraestructura Windows con desarrollo Visual Studio) dirigida a crear, gestionar y monitorizar los diferentes procesos que, en su terminología denomina orquestaciones.

Otra de las apuestas por soluciones DevOps la encarna VMware, quien desde hace tiempo cuenta con vFabric Application Management , un sistema centralizado que permite la actualización, monitorización y gestión de aplicaciones en los sistemas virtuales y en cloud dirigidas a mejorar las capacidades tanto de los desarrolladores como de operaciones.

Por otra parte, aunque también ofrece herramientas DevOps integrales, IBM cuenta con un modelo específicamente adaptado a entornos Cloud que permite, entre otros aspectos, ajustar la capacidad de proceso en base a las necesidades de cada momento, ofreciendo sistemas de planificación, gestión, analítica y seguimiento de todos los procesos, e incluso entornos específicamente dirigidos al desarrollo de aplicaciones y/o servicios móviles.

Merece mención especial Oracle, que tiene mucho que decir gracias al control sobre la plataforma Java – adquirida entre los activos de Sun – que se utiliza como medio para crear y adaptar entornos DevOps). Desde la compañía ofrecen distintas soluciones para entornos DevOps mediante Oracle Fusion Middleware, su entono integral de gestión enfocado en la máxima eficiencia en el uso del hardware y software existente.

Este panorama sectorial no niega que la idea misma de DevOps implica variaciones: una serie de aspectos a tener en cuenta por parte de los participantes en el proceso. Por un lado, es fundamental el cambio de mentalidad en el modelo productivo, tanto en el equipo de desarrollo como en el de operaciones. Trabajar juntos en la misma dirección hace que el éxito no dependa de la excelencia individial sino de la capacidad conjunta acumulada. DevOps es un concepto transversal, que se ocupa de optimizar internamente el modelo organizativo de las empresas (concretamente desarrollo y operaciones). Es totalmente compatible con estrategias on-premise o cloud (tanto pública o como privada), o híbrida.

En lugar de afrontar grandes proyectos de forma integral, con DevOps se tiende a dividirlos en partes pequeñas interconectables entre sí, lo que permite, por un lado, acortar el ciclo integral del proyecto (permitiendo el trabajo en paralelo), y por el otro se mejor la eficiencia de los equipos de trabajo (ya que se evitan cuellos de botella aislando los retos o problemas que vayan surgiendo).

Es igualmente importante contar con sistemas que permitan controlar, gestionar y documentar adecuadamente los cambios y actualizaciones en el código. Del mismo modo, existen herramientas – como las citadas – para gestionar la configuración del entorno, orquestación de recursos y monitorización.

Estas nuevas herramientas tienen por objeto permitir el análisis y la comprensión del impacto de cada nueva actualización (tanto a nivel de la propia aplicación como en el software y hardware donde se ejecutan), hasta establecer un diagnóstico integral del software a medida que se avanza en el proyecto.

[informe de Daniel Comino]


Contacto Suscríbete RSS


Sobre el autor. Copyright © 2024 El dominio norbertogallego.com es propiedad y está administrado por Diandro SL. B85905537. Creative Commons