Descripción:
DevOps es un acrónimo inglés de development (desarrollo) y operations (operaciones), que se refiere a una cultura o movimiento que se centra en la comunicación, colaboración e integración entre desarrolladores de software y los profesionales de operaciones en las tecnologías de la información (IT). DevOps es una respuesta a la interdependencia del desarrollo de software y las operaciones IT. Su objetivo es ayudar a una organización a producir productos y servicios software rápidamente.. El Curso de DevOps 2.0: Entornos de Desarrollo de Alta Productividad toca las diferentes técnicas que ayudan a crear una mejor y eficiente arquitectura de software con microservicios como contenedores inmutables, probados y desplegados de forma continua a los servidores que están aprovisionados de forma automática con las herramientas de gestión de configuración. Desarrollos rápidos, fiables y con cero tiempo de inactividad y la capacidad para retroceder. Se trata de escalar a cualquier número de servidores, diseñar sistemas de auto-sostenibles capaces de recuperación de fallos de hardware y software.
Objetivo:
El alumno comprenderá y tendrá las habilidades, estando inmerso en en el ciclo de vida de desarrollo con microservicios y el uso de algunas de los últimas y mejores prácticas y herramientas. Aprenderá a utilizar acoplable, Kubernetes, Ansible, Ubuntu, acoplable Swarm y acoplable Componer, Cónsul, ETCD, Registrator, confd, etc. de manera práctica.
Temario:
Parte 1. DevOps Ideal
La integración continua, entrega y despliegue | La luz al final de la implementación
Parte 2. La brecha de implementación
Integración continua | Entrega continua y despliegue | Microservicios | Contenedores | Los tres mosqueteros: sinergia de despliegue continuo, microservicios, y Contenedores
Parte 3. Arquitectura de Sistema
Las aplicaciones monolíticas | Servicios divide horizontalmente | Microservicios | Comparación entre las aplicaciones monolíticas y microservicios | Estrategias de despliegue | Microservicios, Buenas Prácticas
Parte 4. Configuración del entorno de desarrollo con Vagrant y Docker
Combinando Arquitectura de Microservicios y Tecnología de Contenedores | Vagrant y Docker | Configuración del entorno de desarrollo
Parte 5. Aplicación de la implementación: etapas iniciales
Girando la implementación continua en máquinas virtuales | Pasos de implementación | Checklist
Parte 6. Configuración de la gestión en el Mundo Docker
CFengine | Puppet | Chef | Ansible | Configuración del entorno de producción | Configuración de Ansible Playbook
Parte 7. Aplicación de la implementación: etapas intermedias
La implementación de contenedores para el servidor de producción | Dockerui | Checklist
Parte 8. Descubrimiento de Servicio: La Clave de Servicios Distribuidos
Service Registry | Registro de servicios | Descubrimiento de servicio | Herramientas de descubrimiento de servicios | Configuración manual | Zookeeper | ETCD | Consul | Comparación de herramientas de descubrimiento de servicios
Parte 9. Servicios de proxy
Reverse Service Proxy | ¿Cómo puede servicio proxy ayudar a nuestro proyecto? | nginx | HAProxy | Comparación de herramientas de proxy
Parte 10. Aplicación de la implementación: etapas avanzadas
Iniciando Contenedores | La integración del Servicio | Ejecución de las pruebas posteriores a la implementación | Contenedor de pruebas para el Registro | Checklist
Parte 11. Automatizando la implementación
Pasos de implementación de tuberías | Tareas previas a la implementación | Tareas de distribución | Tareas posteriores a la implementación | La ejecución de la implementación automatizada
Parte 12. La integración continua (CI), entrega y despliegue (CD) Herramientas
Herramientas CI / CD Comparado | La breve historia de IC / Herramientas de CD | Jenkins
Parte 13. Blue-Green Deployment
El proceso de distribución en Blue-Green | Ejecución manual de implementación Blue-Green | Automatizar el despliegue Blue-Green con Jenkins flujo de trabajo
Parte 14. Agrupación de servicios y escalado
Escalabilidad | Eje de escala | Clústering | Comparación de herramientas Docker Clustering: Kubernetes vs Docker Swarm vs Mesos | Docker Swarm | La ampliación de servicios con Docker Swarm | Programación de contenedores dependiendo de CPU y memoria | Automatización de la implementación con acoplable Swarm y Docker
Parte 15. Sistemas Self-Healing
Niveles y tipos de auto-reparación | Arquitectura Self-Healing | Self-Healing con Dockerl y Jenkins | Combinando On-Premise con la Cloud Nodes
Parte 16. El registro centralizado y Monitoreo
La necesidad de un registro centralizado | Envío de entradas de registro de Elasticsearch | Analizar las entradas del Registro | Envío de entradas de registro a una instancia central LogStash | Envío de Docker Entradas del registro a una instancia central LogStash | Self-Healing Sobre la base de datos de software | Estado del registro de hardware | Self-Healing Sobre la base de datos del equipo