Slurm DevOps: unha teta que funciona mellor en 3 días que unha fermosa grúa nun futuro distante

Encántame un proxecto dunha semana e estou intimidado polos proxectos dun ano. En Agile, gustoume moito o concepto de MVP e incremento, isto é só o meu: facer unha peza viable, implementala e seguir adiante.

Ao mesmo tempo, a transformación de DevOps na forma na que se comenta nos libros e nas conferencias é só un proxecto dun ano. Ou en anos.

Creamos o noso curso DevOps no paradigma de "MVP DevOps nun sprint" e "preparación para incrementos". E se en termos humanos, entón "para que o participante, ao regresar, poida implementar inmediatamente algo na casa e beneficiarse diso".

MVP DevOps: o curso contén ferramentas para os procesos básicos de DevOps. Non nos propuxemos a tarefa de revisar e comparar todos os sistemas CI/CD nin revelar as profundidades do enfoque de Infraestrutura como Código. Ofrecemos unha pila clara: Gitlab CI/CD, Ansible, Terraform e Packer, Molecule, Prometheus, EFK. Podes vir dos cursos, recoller a infraestrutura para un proxecto piloto de materiais formativos e traballar nel.

Slurm DevOps: unha teta que funciona mellor en 3 días que unha fermosa grúa nun futuro distante

Preparación para incrementos: proporcionamos a cada elemento moita práctica e exemplos. Podes tomar unha ferramenta e comezar a implementala usando os debuxos de formación. Por exemplo, escribe un manual de xogos de Ansible para implementar ambientes de desenvolvemento ou conecta un bot e administra o servidor desde o teu teléfono. É dicir, obter un resultado práctico concreto nunha semana. Pode estar infinitamente lonxe da transformación DevOps de toda a empresa, pero está aí, está aquí, funciona e trae beneficios.

Temas de Slurm DevOps

Tema #1: Mellores prácticas de Git - fala por si só.
Tema #2: Traballar coa aplicación dende o punto de vista do desenvolvemento — un enxeñeiro necesita as competencias dun administrador e dun programador, polo que lles informamos aos administradores sobre o desenvolvemento.

Tema #3: Conceptos básicos de CI/CD

  • Introdución á automatización CI/CD
  • Fundamentos de Gitlab CI
  • Mellores prácticas con gitlab-runner
  • Ferramentas Bash, make, gradle como parte de CI/CD e moito máis
  • Docker como unha forma de resolver problemas de CI

Tema #4: Gitlab CI/CD en produción

  • Competencia ao comezar un traballo
  • Control de execución e restricións: só, cando
  • Traballando con artefactos
  • Modelos, inclusións e microservizos: simplificando a implantación

Introducimos aos estudantes nos conceptos e conceptos básicos de CI/CD e ferramentas para a implementación de CI/CD. Como resultado, o alumno poderá escoller de forma independente un patrón de deseño CI/CD e unha ferramenta de implementación adecuada.

Despois mostramos a implementación de CI/CD en Gitlab e percorremos a configuración, mirando formas avanzadas de usar Gitlab CI. Como resultado, o alumno poderá configurar de forma independente Gitlab CI para os seus propios proxectos.

En comparación co primeiro DevOps Slurm, reducimos a teoría 2 veces (unha hora por tema), evitamos revisar todos os sistemas e deixamos só Gitlab CI. Centrámonos na práctica e engadimos moitas mellores prácticas.

Tema #5: Infraestrutura como Código

  • IaC: Aproximación á infraestrutura como código
  • Provedores de nube como provedores de infraestrutura
  • Ferramentas de inicialización do sistema, creación de imaxes (empaquetadora)
  • IaC usando Terraform como exemplo
  • Almacenamento da configuración, colaboración, automatización de aplicacións
  • Práctica de creación de Ansible playbooks
  • Idempotencia, declaratividade
  • IaC usando Ansible como exemplo

Reducimos a parte teórica sobre UI e openstack cli e centrámonos na práctica.
Vexamos dous enfoques de IaC usando a mesma aplicación, mostrando os pros e os contras de cada enfoque. Como resultado, o alumno entenderá que enfoque usar onde, e poderá traballar tanto con Terraform como con Ansible.

No tema sobre Terraform, analizaremos o traballo en equipo e o estado de almacenamento nunha base de datos na práctica. Ao traballar con módulos, o alumno escribirá e configurará el mesmo o módulo, aprenderá a traballar con el: reutilizalo, versionalo. Engadimos traballo con Consul, mostramos en que casos é necesario e como usalo correctamente.

Tema #6: Probas de infraestruturas

  • Imos descubrir por que non escriben probas?
  • Que probas hai en IaC?
  • Analizadores estáticos, son realmente tan inútiles?
  • Proba unitaria de IaC usando ansible + molécula como exemplo
  • Proba como parte de ci
  • Probas con esteroides ou como non esperar 5 horas para que rematen as probas de IaC

Reducimos a parte teórica, menos historias sobre Vagrant/Molecule, máis práctica e probas directas, con foco nos linters e traballando con elas. Mirándoo dende o punto de vista da CI
como facer as probas máis rápidas. Na práctica haberá:

  • un linter escrito por si mesmo que verifica a presenza de variables obrigatorias para o anfitrión en función do rol;
  • Engadimos ás probas de CI só aqueles roles que cambiaron, o que pode reducir significativamente o tempo de execución das probas;
  • engadindo probas de escenarios. Implementamos toda a aplicación como unha proba de integración.

Tema #7: Seguimento da infraestrutura con Prometheus

  • Como construír un sistema de vixilancia saudable
  • Monitorización como ferramenta de análise, eficiencia do desenvolvemento e estabilidade do código, mesmo antes da venda
  • Configurando prometheus + alertmanager + grafana
  • Pasando da supervisión de recursos á supervisión de aplicacións

Falaremos moito sobre o seguimento dos microservizos: ids de solicitude, ferramenta de monitorización da API. Haberá moitas mellores prácticas e moito traballo independente.

Escribamos o noso propio exportador. Configuraremos o seguimento non só da infraestrutura de produción e das aplicacións, senón tamén das montaxes en Gitlab. Vexamos as estatísticas das probas fallidas. Vexamos na práctica como será o seguimento sen HealthCheck e con el.

Tema no 8. Rexistro dunha aplicación con ELK

  • Visión xeral de Elastic e as súas ferramentas
  • ELK/Elastic Stack/x-pack: que é e cal é a diferenza?
  • Que problemas se poden resolver usando ElasticSearch (busca, almacenamento, funcións de escalado, flexibilidade de configuración)
  • Monitorización de infraestruturas (x-pack)
  • Rexistros de contedores e aplicacións (x-pack)
  • Rexistro usando a nosa aplicación como exemplo
  • Prácticas de traballo con Kibana
  • Abre Distro para Elasticsearch de Amazon

O tema foi completamente redeseñado, está organizado por Eduard Medvedev, moitos vírono no seminario web sobre DevOps e SRE. Contará e demostrará as mellores prácticas para traballar con EFK usando o exemplo dunha aplicación educativa. Haberá práctica con Kibana.

Tema #9: Automatización de infraestruturas con ChatOps

  • DevOps e ChatOps
  • ChatOps: Fortalezas
  • Folga e alternativas
  • Bots para ChatOps
  • Hubot e alternativas
  • Безопасность
  • Probas
  • Mellores e peores prácticas

ChatOps engadiu a práctica da autenticación con separación de dereitos, a confirmación de accións por outro usuario, a teoría e práctica dunha alternativa a Slack en forma de Mattermost, a teoría das probas unitarias e de integración para o bot.

O slurm de DevOps comeza o 30 de xaneiro. Prezo - 30.
Para os que rematen de ler, hai un desconto do 15% no curso DevOps mediante o código promocional habrapost.

inscrición aquí

Estarei encantado de verte en Slurms!

Fonte: www.habr.com

Engadir un comentario