¿Qué es DevOps?

 

El término DevOps (desarrollo y operaciones) alude a una amplia gama de prácticas relacionadas con el desarrollo y el uso del código de software en entornos de producción en los centros de datos de cloud. DevOps se centra en técnicas de gestión ágil de proyectos y en el uso de microservicios. DevOps aborda el ciclo de vida completo del desarrollo de software mediante la automatización basada en estándares de control de versiones. Git es la solución de control de versiones más conocida para DevOps, seguida de Subversion (SVN) y CVS. DevOps también incluye la gestión de los requisitos de integración y distribución continuas para el ciclo de vida del software, las pruebas automatizadas del código, la coordinación de contenedores, el alojamiento en la cloud y el análisis de datos.

Temas relacionados

Ventajas de DevOps

  • Gestión ágil de proyectos en equipo: gestión mejorada del desarrollo de software para sitios web y aplicaciones móviles.
  • Optimización del proceso de desarrollo de software: se consigue mediante las funciones de integración y distribución continuas (CI/CD). Gracias a la integración y distribución continuas, las empresas pueden distribuir rápidamente, mediante cambios en el código, características de software nuevas que les permiten presentar innovaciones en el mercado. Las actualizaciones del código de los servidores web o de los scripts de las aplicaciones se simplifican mediante el uso de contenedores y sistemas automatizados de control de versiones.
  • Colaboración más sencilla: Git permite a los desarrolladores colaborar en equipos con la posibilidad de deshacer cambios de forma individual.
  • Eficiencia mediante la automatización: gracias a la integración y distribución continuas, es posible probar el código de forma automatizada a través de herramientas de programación empresariales, entornos de desarrollo integrados (IDE) y utilidades de terceros. DevOps permite mejorar la automatización de los procesos del centro de datos, la implementación de servidores web, la gestión de bases de datos, el intercambio de conocimientos, la programación de implementaciones y la inteligencia empresarial para las empresas que lo adopten con el fin de gestionar el ciclo de vida del desarrollo de software.

 

Prácticas de DevOps

Las prácticas de DevOps se integran en todas las capas de la pila del servidor web y destacan a la hora de reunir equipos de programación para que colaboren. Los equipos de DevOps utilizan con frecuencia el marco de cultura, automatización, sencillez, medición e intercambio (CALMS) para la gestión ágil de proyectos.

  • La cultura requiere que se respete el estilo de vida de los programadores, desarrolladores y administradores de sistemas de cada equipo de programación.
  • La automatización se utiliza en todo el ciclo de vida del desarrollo de software, especialmente en las fases de pruebas e implementación del código o en los procesos de gestión del centro de datos.
  • La sencillez está relacionada con el control de costes de personal y de aprovisionamiento de equipos.
  • La medición se centra en el análisis de datos, la supervisión en tiempo real y los parámetros empresariales para conseguir datos sobre parámetros de referencia de las operaciones.
  • El intercambio hace hincapié en las ventajas que aportan a las empresas o los proyectos de cualquier tamaño el código abierto y las soluciones que se implementan con él.

 

Historia de DevOps

El concepto de DevOps evolucionó a partir de la combinación de desarrollo web y administración de sistemas en la era de la cloud. Las aplicaciones de software como servicio (SaaS) necesitaban métodos más complejos para la gestión de código en entornos de producción y la implementación en servidores web de cloud. El desarrollo de la coordinación de contenedores y los marcos elásticos de servidores web han tenido importancia para DevOps. La filosofía de gestión ágil de proyectos es esencial en DevOps. El equilibrio de carga de la cloud, la innovación de los servidores web y la automatización del ciclo de vida del software son los principios básicos de DevOps. Las prácticas recomendadas en DevOps provienen de una combinación de investigaciones académicas sobre informática, la innovación en la tecnología de centros de datos de cloud y las aplicaciones industriales implementadas en las mayores empresas del mundo mediante el desarrollo de software.

 

Funcionamiento de DevOps

DevOps funciona principalmente con equipos de desarrolladores distribuidos que trabajan desde sus ordenadores o portátiles para producir código que se ejecuta en un entorno de pruebas. Los desarrolladores que utilizan software de control de versiones envían los cambios en el código a un entorno de pruebas en el que se implementan las pruebas automatizadas del código durante el proceso de confirmación. Cuando se han probado los cambios efectuados en el código, se envían a los servidores web de producción desde el entorno de pruebas utilizando el control de versiones. En los sistemas de contenedores, los servidores web se aprovisionan utilizando imágenes de disco. El entorno de desarrollo Docker Desktop incluye control de versiones integrado para publicar código en un servidor web a través de imágenes de disco completas que cargan un servidor web de pila completa en contenedores. Las imágenes de disco pueden archivarse en GitHub, GitLab, DockerHub, Quay u otros servicios para utilizarlas en marcos automatizados de coordinación de contenedores como Kubernetes.

El control de versiones, la integración y distribución continuas, el intercambio de conocimientos, la configuración de servidores web, la automatización de centros de datos, las pruebas de código, la gestión de elementos, la supervisión de red y el análisis se consideran los elementos esenciales de las prácticas de DevOps utilizadas por los equipos de programación profesional y desarrollo de software de grandes empresas y otras organizaciones complejas.

 

DevOps y otros enfoques

Existen otros enfoques de DevOps, como, por ejemplo, gestión ágil de proyectos, ArchOps, integración y distribución continuas (CI/CD), DataOps, WebOps y GitOps. Al igual que las filosofías de gestión empresarial, cada uno de estos términos concede una mayor importancia a distintos aspectos de la gestión de proyectos y la organización de equipos. Algunos enfoques se basan en soluciones de gestión del talento, mientras que otros se basan en plataformas de hardware y de software. El objetivo común es la producción y el control de la ejecución del código de software en centros de datos de cloud, principalmente para sitios web y aplicaciones móviles según las necesidades en grandes empresas.

 

¿Quién está adoptando DevOps?

La mayoría de las empresas de la lista Fortune 500 ya han adoptado metodologías DevOps debido a que se consideran una práctica recomendada en el sector. Las mayores empresas de TI lideran el avance de DevOps con la finalidad de optimizar el funcionamiento de la arquitectura de la cloud pública. DevOps se basa en una combinación de investigaciones académicas en informática y desarrollo de software empresarial en equipos profesionales de programación. DevOps atiende las necesidades de cada empresa en cuanto a ahorro de costes y mejora de la eficiencia en el desarrollo de software y las operaciones de producción. Muchas empresas emergentes también son pioneras en el uso de metodologías DevOps para aventajar a la competencia o para disrumpir mercados existentes. La adopción de DevOps está impulsada fundamentalmente por los requisitos de los administradores de sistemas y programadores profesionales que necesitan crear soluciones de pila completa en hosts de cloud pública.

 

Implementación y adopción de DevOps

La implementación de DevOps es cada vez mayor en las grandes empresas, mientras que los métodos centralizados o monolíticos de gestión de proyectos como Spiral y Waterfall están en retroceso. El movimiento DevOps está impulsado por la proliferación de los microservicios que necesitan las organizaciones empresariales complejas. La principal preocupación de las empresas emergentes y las grandes empresas es acelerar el avance del desarrollo de software con mayor seguridad. Las metodologías DevOps permiten a las empresas poner en producción rápidamente cambios en el código o aplicar parches para solucionar defectos de seguridad sin necesidad de interrumpir el funcionamiento de los servicios en línea existentes. Las empresas intentan obtener la máxima rentabilidad de la migración a los centros de datos de cloud empleando técnicas DevOps en la implementación de aplicaciones web o móviles según las necesidades para respaldar marcas, productos y otros servicios en sitios de comercio electrónico o para satisfacer las necesidades de publicación de contenido web del sector de medios de comunicación. Las empresas de telecomunicaciones y de fabricación industrial adoptan DevOps para mejorar la cooperación entre los miembros de sus grandes equipos de programación para dar soporte a productos y servicios.

Productos, soluciones y recursos de VMware relacionados con DevOps

¿Qué es la infraestructura hiperconvergente?

La infraestructura hiperconvergente (HCI) es una infraestructura definida por software con escalabilidad horizontal que combina los servicios de datos básicos con servidores estándar acelerados por flash. Más información.

¿Qué es el almacenamiento definido por software?

El almacenamiento definido por software de VMware ofrece una arquitectura de centro de datos de almacenamiento sencilla pero inteligente, que se adapta a los requisitos de las aplicaciones y de la empresa. Obtenga más información hoy mismo.

El centro de datos definido por software es la base de la transformación digital

VMware ayuda a abordar los desafíos de las clouds híbridas y privadas mediante un centro de datos definido por software (SDDC) más sencillo y flexible. Obtenga una prueba gratuita.

Opciones y herramientas de implementación de ThinApp

Puede implementar aplicaciones capturadas con herramientas de implementación, en un recurso compartido de archivos de red, como archivos ejecutables en los escritorios de los usuarios, o en un entorno de VMware View.

Definición de los objetivos de supervisión para las soluciones vRealize Operations Manager

Puede crear una política para una solución de paquete de gestión que va a añadir a vRealize Operations Manager.