Objetivos
Este curso cubre las prácticas más habituales en los entornos DevOps, proporcionando al alumno una visión general tanto de los aspectos técnicos como de los aspectos metodológicos y organizativos.
A quien va dirigido
Dado su carácter eminentemente práctico, este curso va dirigido a los miembros de los equipos de sistemas y desarrollo que deseen adquirir los conceptos generales de prácticas como Continuous Integration o Continuous Delivery.
Requisitos
Las prácticas se llevan a cabo en un entorno especialmente diseñado para este curso y basado en Ubuntu, por lo que es necesario disponer de conocimientos básicos de usuario de terminal y de edición de archivos de configuración con editores en modo texto como nano o vi.
Descripción
Este curso consta de cinco horas de teoría y 15 de práctica dirigido especialmente al equipo técnico (tanto de Desarrollo como de Sistemas u Operaciones ). En este curso las horas de teoría explican los patrones y antipatrones presentes en las prácticas DevOps, el por qué las cosas se hacen así y las líneas teóricas que dirigen estas prácticas. La parte práctica permite al alumno comenzar con un desarrollo simple (el foco no es el desarrollo ni las prácticas de desarrollo) e ir implementando en cada sesión los automatismos para cada paso, de forma que el último día habremos completado un ciclo completo de desarrollo en el que hemos automatizado:
- El control de versiones
- El Build
- Las pruebas unitarias
- La conexión con el repositorio de binarios
- La gestión de la configuración
- Las pruebas de integración
- Las pruebas de carga
- El despliegue al entorno de producción
- La monitorización de los sistemas
- La monitorización de la aplicación
- La representación en el dashboard y la correlación con los despliegues
Los talleres prácticos se componen de las herramientas más comunes en entornos de sistemas y desarrollo:
- git / GitHub
- puppet
- Jenkins / go-cd
- jUnit
- Apache jMeter
- Carbon / Graphite / Grafana /statsd
Temario
- Dia 1: Introducción a Devops + Taller git
- Dia 2: La Gestión de Configuraciones + Taller puppet
- Dia 3: La integración continua + Taller Jenkins
- Dia 4: Testing y Continuous Delivery + Taller jMeter e integración Jenkins
- Dia 5: Monitorización + taller Grafana