DevOPS Flashcards
Que es DevOps?
Conceptualmente es una integración entre development, operations y quality.
Al contrario de una metodología cascada, devops es una metodología que busca involucrar a todas las partes desde el primer día.
Buscar ahorrar tiempo en la resolución de incidencias, lanzar features mas rápidamente, reducir riesgos a partir de la automatización e incrementar la satisfacción de los clientes.
Cuales son los principios de DevOps?
Automatización: permite simplificar los procesos.
Iteración: sirve para acelerar los procesos de desarrollo. devops funciona con metodologías ágiles, podría ser scrum, kanban o xp.
Sefl-service: Los programadores pueden generar los pipelines.
Mejora continua: el objetivo es hacer que el proceso se más fluido, a traves del feedback usando post-mortems o autopsias luego de cada incidente.
Testing continuo: Las pruebas continuas permiten lanzamientos mas rápidos.
Colaboración: la colaboración entre desarrolladores y operaciones es clave para alcanzar el éxito.
Que es continuous integration CI?
Conjunto de practicas que consiste en probar automáticamente cada revision de código antes que se implemente en producción.
Cual es la diferencia entre continuous delivery (delivery continuo) y Continuos deployment (implementación continua)?
En implementación continua todo es automatizado, los cambios unas vez aprobados suben a producción sin intervención humana.
En general se usa en aplicaciones de streaming o cuando se necesita deployar en multiples servers.
En delivery continuo debe haber una aprobación humana para deployar.
Cuales son las tareas iterativas en DevOps?
Plan > Code > Build >Test > Release > Deploy > Operate > Monitor
Plan: es donde ser organizan las tareas, horarios y configuración de herramientas. Se planifica utilizando el proceso de historias del usuario desde la metodología ágil .
Code: Los desarrolladores escriben el código. Cuando el código esta listo lo suben.
Build: Aquí se utilizan las herramientas de integración continua y entrega.
Test: Los procesos de pruebas continuas reducen los riesgos.
Release: Cuando el código ha pasado el proceso de prueba y esta listo para implementarse.
Deploy: El equipo operativo implementa la nueva característica en producción. Aquí se puede hacer uso de la implementación continua.
Operate/configure infrastructure: Ops construye o mantiene una infraestructura escalable.
Monitor: El monitoreo permite corregir incidentes más rápido y crear una mejor experiencia de usuario.