DevOpsSiempre me ha resultado curiosa la forma en que los diferentes conceptos de la computación se van asentando en el conocimiento común y como, dependiendo de la persona, cada uno tiende a asimilarlo conforme a su ámbito de conocimiento y actuación. ¿Qué relación tiene esto con DevOps y el cloud?

Este artículo surge a raíz de una conversación con un compañero que interpretaba DevOps como algo relacionado con la eficiencia operativa, facilitador de los objetivos de negocio, lo cual desde luego, es una visión acertada desde su posición.

DevOps y la paradoja del elefante

El concepto de DevOps siempre ha sido complicado de definir. Uno de los grandes divulgadores de tecnología de este país intenta explicarlo siempre con “la paradoja del elefante y los sabios ciegos”. Cuenta la historia que pidieron a unos sabios ciegos que describieran qué tenían delante. Uno decía que tocaba algo áspero y grande. Otro que era algo húmedo y suave, con gran flexibilidad, y otro más, que era algo parecido a un manojo de alambres, sin ser capaz ninguno de adivinar que en realidad lo que tenían delante era un elefante.

 

cloudcomputing

 

Desde mi perspectiva, el mundo del desarrollo de software, hasta tiempos muy recientes, se parecía a esta paradoja, en la que cada uno de los equipos integrantes (desarrollo, sistemas, calidad, seguridad, etc.) veíamos una parte del elefante. El DevOps se podría comparar con quitarnos la venda de los ojos, y poner en común todos los puntos de vista para poder definir este elefante de la forma más precisa y exacta posible.

El software, e Internet, han transformado el mundo en las últimas dos décadas, forjando una nueva revolución industrial, y cambiando la forma en la que las personas viven e interactúan. El software ha evolucionado desde que era una herramienta de soporte, a ha pasado a ser una parte integral del negocio y de la cadena de valor. Esto ha permitiendo que las interacciones de las compañías con sus clientes esté vinculada a aplicaciones y servicios online, en su mayor parte.

El software ha cambiado cada etapa de la cadena de valor, desde la logística, las comunicaciones y las operaciones mismas. Al igual que ocurrió con la automatización industrial, las compañías actuales deben transformar su forma de construir y entregar el software. Esta es la principal razón que ha impulsado la transformación cultural que ha significado el DevOps.

DevOps y cloud

Conviene, en este punto, distinguir entre cloud y DevOps, conceptos que suelen aparecer unidos. La palabra DevOps viene de la unión de “desarrollo” (development) y “operaciones” (operations), y pretende definir la unión que se da entre los dos equipos básicos en el desarrollo de software que, a diferencia de los sabios ciegos de la paradoja del elefante, colaboran desde el comienzo en el proceso de construcción. Es decir, estamos centrados en el proceso, y suele implicar un cambio cultural profundo en la forma de hacer las cosas. El termino cloud está ligado siempre a la disponibilidad de tecnología y herramientas necesarias para agilizar el proceso y la puesta a disposición de los clientes (el delivery) de ese software. Un ejemplo típico donde DevOps y Cloud se combinan, es en el contexto de SDN / SD-WAN.

Cuando hablamos de “El equipo de DevOps”, nos referimos a un grupo de programadores, administradores, expertos en QA y en Seguridad y, potencialmente, otros especialistas (en nuestro caso, expertos en networking), que colaboran de forma ágil sobre una plataforma común y con el mismo lenguaje (el cloud).

De esta forma, independientemente de la definición que queramos emplear, la importancia del cloud para el DevOps es incuestionable. La computación en nube impulsa la transformación del IT, y con automatización (como ya pasó en el área industrial) y herramientas avanzadas, ayuda de manera inestimable a las empresas a simplificar y embeber los procesos de DevOps, aumentando su eficiencia de una manera realmente transformadora.

Las ventajas de combinar cloud y DevOps

Los beneficios de esta simbiosis se pueden resumir en cinco puntos clave:

  1. Permite llevar productos al mercado más rápido, gracias a la disponibilidad más rápida de entornos de desarrollo y procesos de desarrollo simplificados
  2. Reduce la complejidad y el mantenimiento de los sistemas gracias a la automatización y la infraestructura como código.
  3. Incrementa la seguridad con procesos automatizados y repetibles que reducen los errores y permiten construir controles de seguridad desde el principio.
  4. Elimina el downtime a través de operaciones continúas basadas en la nube. Además, en el proceso de aplicación de la automatización, los desarrolladores pueden crear aplicaciones sin estado, que aumentan la disponibilidad y la capacidad de conmutación por error en el proceso aumentando la confiabilidad comercial y la satisfacción del cliente.
  5. Incrementa la escalabilidad. Esta es una de las principales razones por las cuales las organizaciones piensan en la nube: les permite incrementar la capacidad de una forma sencilla.

Cuando se integra con DevOps, el uso de infraestructura como código y de diseños orientados a microservicios y stateless, permite un escalado transparente y rápido (incluso automatizado en base a parámetros operativos), lo cual hace posible disponer de la capacidad adecuada, en cada momento, a la demanda. Esto reduce el coste global de la infraestructura e incrementa el alcance global de las soluciones.

En Teldat se utilizan DevOps para garantizar y aumentar la velocidad en la que disponemos de nuevas funcionalidades en nuestras soluciones SD-WAN


Sobre el autor

Fabian Calvo
Fabian Calvo
Ingeniero Informatico, responsable de la operación de la plataforma Cloud de Teldat - SD-WAN

Comparte este post


Nuestras Soluciones Relevantes



| Etiquetas: ,