Construya una infraestructura ágil para DevOps De Scott D. Lowe, vExpert Partner y cofundador, ActualTech Media y David M. Davis, vExpert Partner y cofundador, ActualTech Media Noviembre de 2015 Índice de materias Introducción .....................................................................................3 Desafíos de TI: transformación de la infraestructura ................... 4 Resuelva los desafíos de TI tratando la infraestructura como código ................................................................................................5 Infraestructura componible de HPE .............................................. 6 Ciclos de desarrollo más cortos y simples ..........................................6 Construcción e integración aceleradas y automatizadas .................. 7 Actualización día a día acelerada ....................................................... 7 Pruebas aceleradas y automatizadas................................................. 7 El futuro de "lo componible"............................................................... 7 Infraestructura como código frente a infraestructura componible..8 ¿Cómo responde HPE a las necesidades de la comunidad DevOps? 8 Las ventajas empresariales de la infraestructura componible ...10 Obtención de valor más rápida ........................................................ 10 Aumento de la productividad del personal ..................................... 10 Flexibilidad y agilidad....................................................................... 10 Costes reducidos ............................................................................... 10 ActualTech Media © 2015. Todos los derechos reservados. Se prohíbe la venta, copia y reproducción de este documento, bajo ninguna circunstancia, sin que medie autorización por escrito. La información incluida en el presente documento se presenta de buena fe y se entiende como cierta, adecuada y fiable en el momento de su publicación. No obstante, se proporciona sin garantía alguna de precisión, adecuación ni fiabilidad. El autor rechaza cualquier responsabilidad por pérdidas sufridas a consecuencia del uso por el lector del asesoramiento, la información, la asistencia o el servicio, en la medida que lo permita la legislación aplicable. Construya una infraestructura ágil para DevOps Pagina 2 Introducción E l departamento de TI empresarial se encuentra en mitad de una transformación fundamental: de constructor cuidadoso de la infraestructura, a cargo de las aplicaciones empresariales principales, a desarrollador ligero y activo de aplicaciones que facilitan las operaciones empresariales basadas en la infraestructura: lo que se conoce como TI bimodal. Esta metamorfosis del departamento de TI se logra aprovechando la automatización basada en software y con unidades de infraestructura programables. Mientras esta transformación puede no ser nada evidente, se está produciendo en la mayoría de las organizaciones. En los próximos meses y años, las TI empresariales deben trabajar para comprender en profundidad esta transformación, aprender a satisfacer mejor las necesidades de la empresa y planificar el futuro de su departamento de TI. Pero, ¿qué está provocando este cambio? y ¿por qué ahora? Acerca de los autores Scott Lowe es partner y cofundador de ActualTech Media. Scott lleva cerca de veinte años dedicado al campo de las TI, de los cuales ha trabajado diez como director informático en varias organizaciones. Ha escrito miles de artículos y entradas de blog en estos años. Asimismo, prepara con regularidad nuevo contenido que siempre resulta interesante para sus clientes. David Davis es partner en ActualTech Media , donde crea contenido tecnológico empresarial atractivo, modera eventos en línea y ayuda a conectar algunas de las empresas de tecnología más conocidas del sector con la comunidad de usuarios finales. Con más de 20 años de experiencia en tecnología empresarial, ha trabajado como director de TI y es responsable de cientos de informes, eBooks y cursos de formación en vídeo, especialmente centrados en la virtualización y la computación en la nube. Cuenta con varias certificaciones (6 x vExpert, VCP, VCAP, & CCIE# 9369). Su blog puede encontrarse en VirtualizationSoftware.com, mientras que su formación en vídeo está disponible en Pluralsight.com. También lo encontrará en Twitter: @DavidMDavis. Construya una infraestructura ágil para DevOps Pagina 3 Desafíos de TI: transformación de la infraestructura C on cada nueva década, el departamento de TI se somete a algún tipo de transformación fundamental. Hace unos 10 años, fue la virtualización de servidores la que cambió a las organizaciones de TI. Esta virtualización de servidores supuso una perturbación para las organizaciones de TI, mientras los adoptantes inteligentes fueron recompensados con nuevas oportunidades y una gran eficiencia. En la actualidad, esas organizaciones de TI son más eficientes y ágiles que nunca, gracias a las ventajas que les ha aportado la virtualización. De forma parecida, la transformación que ha introducido el movimiento DevOps seguirá sin duda un camino revolucionario y perturbador. La transformación actual hacia DevOps viene impulsada por los desafíos que afectan a todas las empresas. Como apuntó Meg Whitman, tanto las personas como las empresas están siendo definidas por su innovación. Es posible que conozca el libro "It’s Not the BIG That Eat the SMALL… It’s the FAST That Eat the SLOW" (No son los GRANDES los que se comen a los PEQUEÑOS... Son los RÁPIDOS los que se comen e los LENTOS), de Jason Jennings. Aunque hace ya tiempo de su publicación, el título es aplicable cada vez más a las empresas de hoy en día, donde la diferencia entre el éxito y el fracaso se encuentra en la capacidad de una empresa de materializar rápidamente las ideas. “Vivimos en una economía de las ideas donde el éxito viene definido por la capacidad de convertir ideas en valor más rápido que los competidores” La "economía de las ideas" exige que la organización de TI se integre en el rápido proceso de innovación utilizado para los productos y servicios de cada empresa. La organización de TI debe seguir el ritmo, incluso imponerlo, si la empresa quiere mantenerse competitiva. Esta presión innovadora ha llevado al auge de la cultura de DevOps, que está barriendo actualmente el paisaje de las TI. Para las organizaciones que desean adoptar este movimiento, la colaboración es la norma cultural. El desarrollo y las operaciones ya no están separadas por cadenas de mando independientes. En un entorno de DevOps, el personal de desarrollo y el de operaciones colabora para apoyar el software durante todo su ciclo de vida, desde la idea inicial al soporte de producción. - HPE CEO Meg Whitman Para proporcionar a los grupos de DevOps la infraestructura de TI que demandan, a la velocidad que la necesitan, las TI empresariales deben aumentar su velocidad, agilidad y flexibilidad. Al fin y al cabo, las TI empresariales no están libres de competidores. Si las TI empresariales no son capaces de mejorar en estas áreas, los grupos de DevOps irán directamente a la nube pública (algo que ya está ocurriendo en muchos casos), y esto socava el liderazgo de la organización de TI como proveedor de la infraestructura. Los directores de TI más capaces no van a dejar el control y la seguridad de la infraestructura de TI en manos de la nube pública. Las organizaciones de TI más hábiles se están preparando para responder -o están respondiendo ya- a los requisitos del movimiento DevOps; lo que Gartner llama las TI bimodales. Construya una infraestructura ágil para DevOps Pagina 4 Resuelva los desafíos de TI tratando la infraestructura como código E s probable que esté familiarizado con las diversas iniciativas de los proveedores en torno al centro de datos definido por software o SDDC (Software-Defined Data Center). Para muchos, estos esfuerzos han sido fracturados, lo que ha generado varias capas de software, interfaces de programación de aplicaciones (API) y paradigmas administrativos. Lo que se necesita es una automatización rápida y basada en políticas comunes de las aplicaciones y la infraestructura en las áreas de desarrollo, pruebas y producción. Para implementar la infraestructura rápidamente, el objetivo de los profesionales de DevOps consiste en tratar la infraestructura como código. Esto les permite implementarla, controlar sus versiones y retirarla del mismo modo que gestionan el software de aplicaciones que han desarrollado. Esta potente capa de software común se convierte en una capa de abstracción completa, configurable y programable para todos los recursos del centro de datos. La abstracción es la base de la virtualización y, por ello, el hipervisor de computación omnipresente desempeña un papel esencial. No obstante, cuando se implementan de forma exhaustiva, entran en juego todos los recursos (computación, almacenamiento y redes). Con todos los recursos controlados virtualmente como elementos de software, los profesionales de DevOps obtienen el control sobre su infraestructura y pueden acelerar realmente la empresa de formas impensables hace tan solo unos años. Los diversos elementos de la infraestructura se convierten simplemente en una extensión de la capa de software y son tratados como código. Este deseo de controlar la infraestructura como código por software provoca una pregunta: "¿Por qué la organización de TI empresarial no adopta simplemente la nube pública?" A pesar de que utilizar la nube pública ofrece multitud de ventajas, existen sólidos motivos para que las empresas construyan sus propios entornos de nube privada. Probablemente, la preocupación más importante sea la seguridad de los datos. La conformidad es mucho más fácil de mantener con una infraestructura in situ. Al realizar la transición hacia la nube pública, no puede evitarse la pérdida de alguna parte del control, algo que resulta inadmisible para muchas empresas. Construya una infraestructura ágil para DevOps Pagina 5 Infraestructura componible de HPE P ara poder ayudar a la organización de TI empresarial a adoptar principios basados en DevOps, Hewlett Packard Enterprise ha creado un enfoque que ha llamado la Infraestructura componible, y está desarrollando paquetes de herramientas y hardware de servidor en torno a este concepto. Fuente: Hewlett Packard Enterprise La infraestructura componible se alinea perfectamente con las necesidades de la comunidad de DevOps, al facilitar un gran número de ventajas operativas, que incluyen: Ciclos de desarrollo más cortos y simples Al eliminar la necesidad de reconstruir entornos manualmente tras escribir código nuevo y realizar pruebas, el tiempo de desarrollo se reduce significativamente. De hecho, la simplificación se está convirtiendo en una megatendencia en la mayoría de las áreas de TI, porque reduce los costes y facilita la agilidad. Por ejemplo, con la infraestructura componible, si los desarrolladores tienen una idea para una nueva aplicación durante la hora de comer, pueden tener un nuevo entorno de desarrollo (incluso un clon de producción, si lo desean) ya operativo cuando vuelvan a sus escritorios. Pueden empezar a desarrollar inmediatamente la nueva aplicación. Es posible crear bajo demanda un entorno complejo con varios niveles ejecutando una sola línea de código. Este entorno de infraestructura no solo está compuesto por unas pocas máquinas virtuales, sino que incluye también hardware real de servidores, red y almacenamiento que permite a los desarrolladores aprovechar un grupo fluido de computación y almacenamiento, así como de estructura rápida y flexible, que está desagregado para facilitar su rápida composición, descomposición y recomposición en diferentes grupos, siempre que se necesite. Los grupos componibles de infraestructura pueden formarse y volver a formarse todas las veces que sea necesario, en función de las prioridades empresariales. Construya una infraestructura ágil para DevOps Pagina 6 Construcción e integración aceleradas y automatizadas El desarrollo requiere una tarea constante de construcción y una configuración homogénea para que las pruebas resulten eficaces. Mientras las organizaciones llevan a cabo el desarrollo, existe la necesidad de construir y volver a construir continuamente el entorno operativo subyacente para fines de desarrollo, pruebas y producción. Además, la mayoría de las aplicaciones requieren varios elementos de infraestructura subyacentes para poder operar. Estos elementos pueden incluir servidores de bases de datos, servidores web, dispositivos de red, equilibradores de carga, etc. La infraestructura componible de HPE permite a los equipos de DevOps automatizar plenamente la creación de todos estos elementos. De este modo, la organización puede centrarse en el código en lugar de en la infraestructura. Con la infraestructura componible, pueden reducirse los costosos y complejos ciclos de desarrollo gracias a la naturaleza dinámica y adaptable de la infraestructura subyacente. La infraestructura ya no será nunca una barrera para el progreso o la innovación. Actualización día a día acelerada Las compilaciones diarias son habituales en los proyectos de desarrollo de software. Sin automatización, resultaría poco práctico volver a compilar el software todos los días. La infraestructura componible permite a las organizaciones acelerar estos procesos y mejorar el de compilación diaria. Con la infraestructura componible, las actualizaciones de desarrollo diarias pueden acelerarse, porque los recursos de infraestructura pueden añadirse dinámicamente al grupo cuando sean necesarios (y retirarse dinámicamente cuando ya no lo sean). De este modo, la infraestructura puede ajustarse a las necesidades de los desarrolladores. Pruebas aceleradas y automatizadas Los equipos de control de calidad y pruebas deben trabajar siempre con el código más reciente para poder tener el mayor impacto. Con la infraestructura componible, las pruebas pueden realizarse con la misma infraestructura de producción. Además, esa infraestructura puede asignarse dinámicamente cuando se realicen las pruebas y desasignarse cuando finalicen. El futuro de "lo componible" ¿Y si las aplicaciones pudieran gestionar ellas mismas su propia infraestructura y fueran capaces de componer, descomponer y recomponer los recursos a medida que los necesitaran? Con la infraestructura componible, esto no es tan descabellado como parece. Con más aplicaciones diseñadas inteligentemente, capaces de gestionar su infraestructura en función de sus necesidades, es posible que pudiera replantearse el papel del administrador de infraestructura actual para que se dedicara a proyectos de tecnología que ayudaran a la empresa a ser más innovadora y competitiva Construya una infraestructura ágil para DevOps Pagina 7 Infraestructura como código frente a infraestructura componible La infraestructura como código es una parte central de la estrategia de infraestructura componible de HPE. La infraestructura componible utiliza grupos flexibles de computación, almacenamiento y estructura, así como un enfoque basado en plantillas, para facilitar la transición hacia la entrega continua. Al utilizar una RESTful API abierta y unificada, junto con plantillas repetibles nativas de HPE OneView, la infraestructura componible proporciona una interfaz programática para herramientas de planificación del máximo nivel y prepara el camino para DevOps. Esta entrega continua proporciona velocidad, agilidad y una ventaja competitiva para la empresa. Con la infraestructura como código, los elementos de la infraestructura, tanto físicos como virtuales, consisten en grupos de recursos fluidos que permiten la composición, descomposición y reconstrucción de los elementos granulares de recursos. Los elementos de recursos incluyen la computación, el almacenamiento y la estructura de red/almacenamiento. El centro del enfoque es la API unificada, que permite abstraer cualquier elemento de la infraestructura con una sola línea de código. Cuando se combina con la infraestructura adecuada, la API unificada permite la abstracción y automatización de cualquier recurso físico o virtual. ¿Cómo responde HPE a las necesidades de la comunidad DevOps? Habilitadores de la infraestructura componible ¿Qué es Chef? La misión de Chef consiste en convertir la infraestructura en código habilitando la automatización completa de la creación y eliminación de elementos de infraestructura diferenciados, entre los que se incluyen la computación, el almacenamiento, la estructura de almacenamiento en red y los dispositivos de equilibrado de carga. Ello se consigue utilizando las recetas de Chef (es decir, secuencias de comandos Ruby, cada una de las cuales es responsable de instalar o configurar un elemento de infraestructura) y los libros de recetas, que son recopilaciones de recetas y otros elementos que llevan a cabo múltiples instrucciones. Las áreas de desarrollo y operaciones pueden utilizar varias iniciativas para ayudar a resolver los desafíos operativos de DevOps, como Chef, Docker y OpenStack. Estas iniciativas sirven para habilitar funcionalidades de automatización significativas, además de para proporcionar un entorno de infraestructura totalmente basado en API. En el centro de estas iniciativas se encuentra el concepto de tratar el entorno de infraestructura del centro de datos como código, lo que permite una fluidez total de la infraestructura. Ahora es posible construir y eliminar infraestructura utilizando API, lo que facilita la implementación de aplicaciones en los entornos de desarrollo, preproducción y producción. Los desarrolladores ya no tienen que crear manualmente entornos independientes para cada iteración de software. Tampoco tienen que esperar que un administrador de sistemas preste sus servicios. El código que escriben puede diseñarse para que aprovisione sus propios recursos bajo demanda. En este mundo, Chef compite para ganarse a aquellos que buscan habilitar la automatización y el aprovisionamiento de la configuración, mientras que OpenStack proporciona una plataforma de infraestructura como servicio (IaaS) basada en la nube privada. Docker facilita el desarrollo y traslado de las aplicaciones a producción sin cambios: construir, ejecutar y enviar a cualquier lugar. Juntas, estas herramientas (y otras) permiten ciclos de desarrollo mucho más cortos, lo que acelera la obtención de valor con el desarrollo de nuevas aplicaciones. A medida que los desarrolladores construyen aplicaciones, pueden capturar el proceso de implementación en, por ejemplo, una receta de Chef y automatizar la implementación en un proceso continuo de varios niveles. Construya una infraestructura ágil para DevOps Pagina 8 ¿Qué es Docker? Docker es una plataforma abierta para construir, enviar y ejecutar aplicaciones distribuidas. Los contenedores de Docker se ponen en funcionamiento rápidamente y proporcionan una capa de aislamiento de otros servicios que se ejecutan en contenedores. Docker proporciona también la capacidad de empaquetar una aplicación con todas sus dependencias en una unidad estandarizada para el desarrollo de software, lo que garantiza que las aplicaciones se ejecutarán siempre del mismo modo, con independencia del entorno. Los contenedores de Docker empaquetan un elemento de software en un sistema de archivos completo que contiene todo lo que necesita para ejecutarse: código, tiempo de ejecución, herramientas del sistema, bibliotecas del sistema, cualquier cosa que pueda instalarse en un servidor. Ello garantiza que siempre se ejecutará del mismo modo, con independencia del entorno en el que lo haga. Ofrece a los programadores, equipos de desarrollo e ingenieros de operaciones la caja de herramientas común que necesitan para aprovechar la naturaleza distribuida y de red de las aplicaciones modernas. HPE está colaborando con las empresas líderes en el ámbito de DevOps, incluidas Chef Software, Docker y OpenStack, para convertir la visión de la infraestructura componible en una realidad. Por ejemplo, Chef Software es una herramienta de configuración y gestión líder que proporciona una automatización extremo a extremo de las aplicaciones rápida, escalable y flexible. Al integrar HPE OneView y Chef, HPE permite a los clientes utilizar recetas de Chef para aprovisionar automáticamente pilas de aplicaciones completas desde el hardware a la aplicación en cuestión de minutos. El enfoque de Docker de los contenedores deja a las empresas "construir, enviar y ejecutar en cualquier lugar". Pero ¿y si "cualquier lugar" es una nube privada local con servidores físicos? Utilizando Docker y HPE OneView, los clientes pueden empezar con servidores físicos y automatizar todo el proceso para que puedan implementarse las aplicaciones rápidamente y con facilidad. Por último, OpenStack es un punto de integración con el concentrador de automatización de HPE OneView. Ello permite a las empresas aprovechar OpenStack para automatizar completamente sus implementaciones de infraestructura a través de nubes públicas y privadas HPE OneView HPE OneView es una herramienta de gestión que automatiza la entrega y las operaciones de los recursos de servidores, almacenamiento y red en entornos físicos y virtuales. Al hacer converger la gestión de los recursos de servidores, almacenamiento y redes de HPE, HPE OneView mejora la eficacia de los administradores de TI. Con la automatización, HPE OneView ayuda también a evitar el tiempo de inactividad provocado por los errores humanos. Interopera estrechamente con HPE CloudSystem, HPE Business Service Management, VMware® vCenter y Microsoft® System Center, así como con Chef, Docker y OpenStack. HPE OneView es la API unificadora que reúne los recursos de hardware y permite gestionarlos y consumirlos como elementos basados en software del centro de datos. ¿Qué es OpenStack? O OpenStack es software de código abierto para crear nubes públicas y privadas. Utilizado principalmente para implementar infraestructura como servicio (IaaS), OpenStack se compone de una serie de proyectos que gestionan distintos recursos, cuentan con una interfaz basada en web y pueden controlarse todos mediante una RESTful API. Más de 500 empresas, HPE incluida, se han unido al proyecto OpenStack y lo apoyan. La popularidad de OpenStack ha crecido rápidamente por su flexibilidad. Cuenta además con un ecosistema y una comunidad en continua expansión. Construya una infraestructura ágil para DevOps Pagina 9 Las ventajas empresariales de la infraestructura componible La infraestructura componible de HPE facilita una serie de resultados importantes: Obtención de valor más rápida Al eliminar completamente los lentos procesos manuales de adquisición y construcción, los desarrolladores y operadores pueden centrarse en el desarrollo para completar sus procesos mucho más rápido que en el pasado. Una obtención de valor más rápida significa que las ventajas operativas y económicas del proceso de desarrollo pueden materializarse mucho antes. Aumento de la productividad del personal DevOps es una mentalidad cultural donde la productividad es el resultado clave. Al no tener la necesidad de construir manualmente la infraestructura, los desarrolladores y operadores pueden ser mucho más productivos que en el pasado. La infraestructura que se alinea con la forma en la que colaboran los equipos crea una sinergia que no puede lograrse con otras arquitecturas. Flexibilidad y agilidad Mediante el uso de la infraestructura componible, las organizaciones consiguen la capacidad de permitir que el software construya su propio entorno operativo en función de las necesidades del momento. DevOps y la infraestructura componible no solo se centran en el desarrollo, sino que también tienen que ver con lo que pasa en un entorno de producción. Imagine un escenario en el que una aplicación de producción pueda detectar que la granja de servidores web está a punto de alcanzar su capacidad máxima, implementar proactivamente más servidores web y reconfigurar el equilibrador de carga para agregar estos nuevos recursos, todo ello sin la intervención de un desarrollador o un operador. Ésa es la magia de la infraestructura componible en todo su esplendor. Costes reducidos La infraestructura componible puede tener un impacto positivo en la estructura de costes de una organización de varias maneras: • Costes de personal reducidos o redirigidos. Incluso si no se reduce el personal con el modelo DevOps, se destinan más esfuerzos a las características que añaden valor que a las pesadas tareas manuales. • Mayor aprovechamiento de la infraestructura. Ya no es necesario sobreaprovisionar los recursos. Las empresas pueden habilitar al entorno de software para aprovechar la infraestructura existente hasta el máximo de su potencial. Los nichos que solían separar los elementos de la infraestructura pueden eliminarse. • Menos defectos. Los defectos en el software tienen un coste enorme. Los entornos y procesos de desarrollo tradicionales tienen una gran carga manual y son propensos a errores. Con la automatización, las empresas pueden reducir e impedir proactivamente la aparición de errores, lo que suaviza el impacto de los defectos potenciales. Construya una infraestructura ágil para DevOps Pagina 10 En última instancia, la infraestructura componible resulta idónea para las necesidades de la comunidad DevOps. Esto le permite: • Ejecutarlo todo: optimice cualquier aplicación y almacene todos los datos • Actuar con mayor rapidez: acelere la entrega de aplicaciones y servicios • Trabajar de manera eficaz: reduzca los esfuerzos y el coste operativo • Liberar el valor: aumente la productividad y el control HPE proporciona una variedad de herramientas y servicios diseñados para ayudarle a dar sus primeros pasos en el viaje hacia la infraestructura componible. Con una formación técnica global de categoría empresarial, HPE puede ayudarle a diseñar la solución más adecuada, integrarla en su entorno existente, prestar soporte proactivo a dicho entorno y facilitar la automatización de su infraestructura. Obtenga más información sobre cómo pasar de un entorno de TI tradicional a la infraestructura componible. 4AA6-2192ESE Construya una infraestructura ágil para DevOps Pagina 11 Acerca de ActualTech Media ActualTech Media entrega servicios y activos de contenidos para las principales empresas de TI de todo el mundo. Scott D. Lowe, David M. Davis y sus socios, autores con gran capacidad de influencia en el sector de las TI, desarrollan contenido externo fiable diseñado para educar, convencer y convertir a los compradores de TI. ActualTech Media ayuda a sus clientes a llegar al público empresarial y técnico adecuado con contenido de calado que produce resultados. Acerca de HPE HPE crea nuevas posibilidades para que la tecnología tenga un impacto significativo sobre las personas, las empresas, las administraciones y la sociedad. Con la mayor gama de tecnología en materia de software, servicios e infraestructura de TI, HPE ofrece soluciones a los desafíos más complejos de los clientes en cada región del mundo. Encontrará más información acerca de HPE (NYSE: HPE) en http://www.hpe.com/info/composable. Construya una infraestructura ágil para DevOps Pagina 12