Tema

El concepto de DevOps

DevOps es un modo de abordar la cultura, la automatización y el diseño de plataformas para proporcionar mayor valor empresarial y capacidad de respuesta mediante la prestación ágil de servicios de alta calidad. Todo ello es posible a través de una entrega de servicios rápida e iterativa. DevOps implica enlazar aplicaciones heredadas con aplicaciones nativas de la nube e infraestructura más nuevas.

De todos modos, ¿qué es DevOps?

La palabra "DevOps" es una combinación de las palabras "development" (desarrollo) y "operations" (operaciones), pero representa un conjunto de ideas y prácticas que es mucho más grande que esos dos términos juntos o separados. DevOps incluye seguridad, maneras colaborativas de trabajo, análisis de datos y muchas otras cosas. ¿Pero qué es?

DevOps describe los enfoques para agilizar los procesos mediante los cuales una idea (como una nueva función de software, una solicitud de mejora o la corrección de un error) pasa del desarrollo a la implementación en un entorno de producción, donde puede generar valor para el usuario. Estos enfoques requieren que los equipos de desarrollo y de operaciones se comuniquen con frecuencia y aborden su trabajo con empatía hacia sus compañeros de equipo. También son necesarios la escalabilidad y el aprovisionamiento flexible. Con DevOps, se facilita una mayor potencia a aquellos que más la necesitan mediante autoservicio y automatización. Los desarrolladores trabajan en estrecha colaboración con las operaciones de TI para agilizar las compilaciones, pruebas y versiones de software, sin sacrificar la fiabilidad.

Por supuesto, esto significa cambios más frecuentes para codificar y un mayor uso de la infraestructura dinámica. Las estrategias de gestión tradicionales no son compatibles con este tipo de demanda. Necesitará hacer algunos cambios para obtener competitividad.

Cultura, proceso y plataformas

DevOps depende de una cultura de colaboración que valora la apertura y la transparencia. Implementar DevOps implica aplicar principios y prácticas de open source porque los valores culturales de DevOps están estrechamente entrelazados con los valores de las comunidades de open source y los enfoques ágiles de trabajo.

La cultura de los proyectos de software de open source puede ser un plano técnico sobre cómo diseñar una cultura DevOps. Compartir libremente información es el enfoque predeterminado para la colaboración en comunidades de open source. Puede ayudarlo a implementar cambios culturales, como promover la transparencia al tomar decisiones, fomentar la experimentación mediante la eliminación del temor a cometer errores o implementar un sistema de recompensas que promueva la confianza y la colaboración.

Con el liderazgo adecuado y la implementación de programas de incentivos, sus equipos de desarrollo y operaciones pueden ayudarlo a facilitar una cultura abierta, pero DevOps es más efectivo cuando esta cultura se expande por toda la organización. Obviamente, el nombre se refiere al desarrollo y a las operaciones, pero DevOps es para todos.

La cultura de Red Hat se basa en la apertura y la transparencia. Y a nosotros nos ha funcionado durante más de 25 años. Cuando se trata de ayudar a los clientes a adoptar un enfoque abierto, tenemos la historia para guiarlo a hacer de DevOps una realidad.

Cultura DevOps

Desarrollar aplicaciones modernas requiere procesos diferentes a los enfoques del pasado. Muchos equipos utilizan enfoques ágiles para el desarrollo de software. Para estos equipos, DevOps no es algo secundario. De hecho, el primero de los 12 principios del Manifiesto de Agile es el siguiente: "La satisfacción del cliente a través de la entrega de software continua y a tiempo". Este es el motivo por el que la integración y la implementación continuas (CI/CD) son tan importantes para los equipos de DevOps.

Pero cambiar solamente los procesos operativos y de desarrollo no es suficiente. Necesitará aplicar sistemas para optimizar verdaderamente la manera de entregar software. Esto significa que DevOps generará cambios en las unidades de negocio que requieren trabajo de desarrollo y en los grupos que dan soporte a los usuarios finales. La clave es un ciclo continuo de comentarios de los usuarios finales sobre la empresa.

Su proceso deberá cambiar, independientemente de CÓMO hace el trabajo. Es inevitable que CUALQUIERA sea el trabajo que realice, también cambiará. DevOps no solo implica acelerar la creación del mismo software monolítico; también implica crear nuevos tipos de software que se adapten mejor a este ritmo de entrega continua.

Este es el motivo por el que los equipos de DevOps con frecuencia crean su software con una arquitectura de microservicios y enlazan estos servicios junto con las API. Los equipos realizan entregas más rápido al enfocarse en crear piezas más pequeñas de funcionalidad, por lo que usted deberá concentrarse en cómo se gestionan esos servicios y las API, y en tener una estrategia, como la integración ágil, para proporcionar todo junto.

Realizar estos tipos de cambios puede implicar un gran esfuerzo, pero con la tecnología adecuada se puede comenzar inmediatamente. La automatización puede ayudarlo a acelerar sus procesos y, eventualmente, a migrar sus cargas de trabajo de DevOps a la nube. Un estudio de IDC1 muestra que el 85% de los líderes de TI afirman que la automatización es clave para su estrategia de DevOps. Esto se debe a que la automatización permite que una infraestructura soporte los cambios de código constantes que acompañan a DevOps. Y permite que los entornos escalen continuamente y con facilidad. La automatización ayuda a sus recursos humanos más inteligentes a hacer las cosas más importantes al hacerse cargo de las tareas tediosas y repetitivas.

1 IDC (marzo de 2018). "Automation, DevOps, and the Demands of a Multicloud World" Procedente de https://www.redhat.com/cms/managed-files/cm-idc-automation-devops-demands-multicloud-world-f10589-201803-en.pdf

Automatización DevOps

Seleccionar herramientas que den soporte a sus procesos es fundamental para el éxito de DevOps. Si sus operaciones intentarán mantener el ritmo de los rápidos ciclos de desarrollo, necesitarán usar plataformas de gran flexibilidad y tratar su infraestructura como los equipos de desarrollo tratan el código. Las implementaciones manuales son lentas y dan lugar a errores. El aprovisionamiento y la implementación de plataformas se pueden simplificar mediante la automatización.

Los contenedores facilitan la mudanza de aplicaciones entre los entornos de desarrollo, prueba y producción. Usar contenedores permite que los desarrolladores empaqueten y aíslen sus aplicaciones con todo lo que necesitan para su ejecución, incluidos los archivos de aplicaciones, los entornos de tiempo de ejecución, las bibliotecas dependientes y las configuraciones.

Elegir plataformas confiables, tanto adentro como afuera del contenedor —como Red Hat Enterprise Linux y Red Hat OpenShift Container Platform—, asegura que la escalabilidad y la automatización no fallen cuando más lo necesite. Con las plataformas adecuadas, puede aprovechar mejor los cambios culturales y de proceso que ha implementado.

Plataforma DevOps

¿Está su equipo preparado para innovar?

Para competir en el mercado de la actualidad, se necesita más que tecnología. Mida la madurez cultural, de los procesos y de la plataforma de su organización y conozca las medidas que debe tomar en su camino hacia la transformación digital.

DevOps y la seguridad

Como mencionamos anteriormente, DevOps no solo se trata de los equipos de desarrollo y operaciones. Para poder aprovechar al máximo el enfoque de DevOps, las organizaciones deben considerar el rol que desempeña la seguridad en el ciclo de vida de sus aplicaciones. Esto significa pensar en la seguridad básica desde la etapa de planificación en adelante. También implica automatizar algunas funciones de seguridad para impedir que el flujo de trabajo de DevOps se lentifique. Seleccionar las herramientas correctas para integrar la seguridad puede ser útil para lograr sus objetivos de seguridad de DevOps.

Pero la seguridad efectiva de DevOps requiere más que nuevas herramientas; se construye sobre los cambios culturales de DevOps para integrar el trabajo de los equipos de seguridad lo antes posible. DevOps agiliza todo al acortar las distancias entre el desarrollo y las operaciones, pero la agilidad obtenida puede ser perjudicada por una planificación de seguridad insuficiente.

La seguridad solía ser de exclusiva responsabilidad de un equipo aislado y se añadía en la etapa final del desarrollo. En la actualidad, en un marco de trabajo colaborativo de DevOps, la seguridad es una responsabilidad compartida e integrada desde el principio.

Las herramientas de DevOps que necesita

Red Hat Ansible Automation

Red Hat Ansible Automation es una tecnología de automatización de TI simple y sin agentes que le permite mejorar los procesos actuales, migrar aplicaciones para aumentar la optimización y proporcionar un único lenguaje para las prácticas de DevOps en toda la organización.

Red Hat OpenShift

Desarrolle, implemente y gestione sus contenedores, en cualquier lugar, a cualquier escala.

Capacitación en DevOps para ayudarlo a lograr el éxito

Trayectorias de aprendizaje

Plan de estudios de DevOps

Desde los conceptos básicos de automatización con Ansible hasta la administración de Red Hat® Openshift Container Platform y muchos puntos clave en el medio, tenemos un camino diseñado para capacitar y validar su habilidad para cambiar del desarrollo a la implementación. Nuestros cursos le enseñan cómo las herramientas como Docker, Kubernetes y Puppet se pueden usar con la tecnología Red Hat para hacer que DevOps funcione para usted y su equipo.

Infografía

"Capacítese y pruebe sus conocimientos con Red Hat en DevOps"

La capacitación y certificación Red Hat permiten que las organizaciones y los individuos experimenten tiempos de comercialización más ágiles, disminuyan la tasa de errores en los lanzamientos y acorten el tiempo de entrega entre correcciones mediante la combinación del contenido de capacitación basado en los casos de uso del cliente y la validación de las habilidades mediante exámenes de certificación prácticos. Esta infografía describe el plan de estudios para capacitación y examen con Red Hat en DevOps.

Hay mucho más para hacer con DevOps