¿Qué es DevOps?
DevOps es una nueva tendencia en la industria IT que brinda mayor agilidad en el desarrollo de software. El término «DevOps» es una combinación de las palabras «Development» (desarrollo) y «Operations» (operaciones).
DevOps es una metodología de desarrollo software que mejora la colaboración entre grupos con roles históricamente distintos, los desarrolladores y los administradores de sistemas. Esto permite que los desarrolladores puedan enfocarse sólo en desarrollar y fabricar software más rápidamente, con mayor calidad, menor coste y una altísima frecuencia de releases. DevOps incluye sistemas de seguridad, maneras de trabajar en colaboración, análisis de datos, entre otras características.
Con DevOps, es posible brindar una mayor potencia a aquellos que más la necesitan, gracias al autoservicio y la automatización.
Los desarrolladores, que generalmente realizan codificaciones en un entorno de desarrollo estándar, trabajan en estrecha colaboración con los equipos de operaciones de TI para agilizar el diseño, las pruebas y el lanzamiento de los sistemas de software, sin comprometer la confiabilidad. Para esto es necesario seleccionar herramientas que respalden estos procesos y permitan llevar adelante esta metodología.
¿Cuáles son los pilares de devops?
- Administración de redes y sistemas de manera eficaz.
- Automatización de tareas desde la interfaz de línea de comandos.
- Creación de soluciones Cloud de calidad.
- Despliegue, orquestación y monitorización de contenedores de software con Docker y Kubernetes.
- Automatización de procesos de CI/CD.
- Excelencia en la puesta en producción, monitorización y modelo de operación de una solución.
Ventajas de DevOps a la hora de trabajar
- Fomento de la colaboración y responsabilidad: DevOps consiste en fusionar dos departamentos, desarrollo y operaciones. De esta forma, la colaboración debe ser total, así como el asumo de responsabilidades por parte de todas las partes del equipo para que el desarrollo llegue a buen puerto, puesto que ambas partes, development & operations, dependen del mismo equipo.
- Metodología agile: La idea de DevOps es entregar herramientas más rápido (escalar, ahora, es más fácil que nunca), optimizando el coste y mejorando la productividad de los ingenieros DevOps.
- Automatización de procesos: Para poder ser más rápidos y productivos, habrá que automatizar procesos en el desarrollo utilizando las herramientas apropiadas.
- Centrarse en el cliente: Gracias a la metodología agile, esto es más sencillo que nunca. DevOps tiene como máxima que el cliente sea el centro de todos y la creación de herramientas sea totalmente personalizable.
Infraestructura necesaria para el desarrollo DevOps:
- Source Code Management o gestor de código fuente
- Scripting
- Continuous Integration Tools (CI) o herramienta de Integración Continua
- Virtualization
- Cloud
- Provisioning
- Monitoring
- Log Aggregation