Slurm DevOps — lépe fungující sýkorka za 3 dny, než krásný jeřáb v daleké budoucnosti

Mám rád projekty trvající týden a děsí mě projekty trvající rok. V agile se mi velmi líbila myšlenka MVP a inkrementu, to je zkrátka moje: vytvořit funkční část, implementovat ji a posunout se dál.

DevOps transformace, jak ji diskutují v knihách a na konferencích, je právě projekt na rok. Nebo na roky.

Sestavili jsme náš kurz pro DevOps v paradigmatu „MVP DevOps za jeden sprint“ a „připravenost na inkrementy“. Jinými slovy, „aby se účastník mohl po návratu okamžitě něco implementovat a získat prospěch“.

MVP DevOps: v kurzu jsou nástroje pro základní DevOps procesy. Nezaměřovali jsme se na to, abychom prozkoumali a porovnali všechny systémy CI/CD nebo odhalili hloubky přístupu Infrastructure as Code. Dáváme jeden srozumitelný stack: Gitlab CI/CD, Ansible, Terraform a Packer, Molecule, Prometheus, EFK. Účastníci mohou po absolvování kurzu shromáždit z výukových materiálů infrastrukturu pro pilotní projekt a pracovat na ní.

Slurm DevOps — lépe fungující sýkorka za 3 dny, než krásný jeřáb v daleké budoucnosti

Připravenost na inkrementy: každý prvek dáváme s velkým množstvím praktických příkladů. Lze vzít jeden nástroj a pracovat na jeho implementaci podle výukových plánů. Například napsat Ansible playbook pro nasazení dev-okolí nebo připojit bota a spravovat server z telefonu. To znamená, že za týden získáte konkrétní praktický výsledek. I když je nekonečně vzdálen od DevOps transformace celé firmy, je tu, funguje a přináší užitek.

Témata Slurm DevOps

Téma č. 1: Nejlepší praktiky Git — hovoří samo za sebe.
Téma č. 2: Práce s aplikací z pohledu vývoje — inženýrovi jsou potřeba dovednosti administrátora a vývojáře, proto mluvíme správcům o vývoji.

Téma č. 3: Základy CI/CD

  • Úvod do automatizace CI/CD
  • Základy práce s Gitlab CI
  • Nejlepší praktiky s gitlab-runnerem
  • Nástroje bash, make, gradle jako součást CI/CD a nejen to
  • Docker jako způsob řešení problémů CI

Téma č. 4: Gitlab CI/CD v produkci

  • Konkurence při spuštění job
  • Kontrola a omezení provádění: only, when
  • Práce s artefakty
  • Šablony, inkluze a microservices: zjednodušujeme nasazení

Seznamujeme studenty se základními pojmy a koncepty CI/CD a nástroji pro realizaci CI/CD. Díky tomu si student bude moci samostatně vybrat návrhový vzor CI/CD a vhodný nástroj realizace.

Poté ukazujeme realizaci CI/CD v Gitlabu a podrobně rozebíráme konfiguraci, přičemž se zaměřujeme na pokročilé používání Gitlab CI. Student si díky tomu bude schopen samostatně nastavit Gitlab CI pro své projekty.

Ve srovnání s prvním DevOps Slėrmem jsme teorií zkrátili na polovinu (jednu hodinu na téma), opustili jsme přehled všech systémů a zaměřili se pouze na Gitlab CI. Soustředili jsme se na praxi a přidali mnoho osvědčených postupů.

Téma č. 5: Infrastruktura jako kód

  • IaC: přístup k infrastruktuře jako kódu
  • Cloudoví poskytovatelé jako dodavatelé infrastruktury
  • Nástroje pro inicializaci systémů, sestavení obrazů (packer)
  • IaC na příkladu Terraformu
  • Ukládání konfigurací, spolupráce, automatizace aplikací
  • Praktika vytváření Ansible playbooků
  • Idempotentnost, deklarativnost
  • IaC na příkladu Ansible

Snížili jsme teoretickou část o UI a openstack cli a zaměřili jsme se na praxi.
Prozkoumáme dva přístupy IaC, přičemž použijeme stejnou aplikaci, abychom ukázali klady a zápory každého přístupu. Díky tomu student pochopí, jaký přístup kdy použít, a bude schopen pracovat jak s Terraformem, tak s Ansible.

V tématu o Terraformu se prakticky zaměříme na týmovou práci a ukládání stavu do databáze. Při práci s moduly student sám napíše a nastaví modul, naučí se s ním pracovat: znovu použít, verzovat. Přidáme práci s Consulem a ukážeme, v jakých případech je nezbytný a jak ho správně použít.

Téma č. 6: Testování infrastruktury

  • Zkoumáme, proč se nepíší testy?
  • Jaké testy existují v IaC?
  • Statické analyzátory, jsou opravdu zbytečné?
  • Jednotková testování IaC na příkladu ansible + molecule
  • Testování jako součást CI
  • Testy na steroidech nebo jak nečekat 5 hodin na dokončení testů pro IaC

Snížili jsme teoretickou část, méně vyprávění o Vagrant/Molecule, více praxe a přímého testování, se zaměřením na lintry a práci s nimi. Díváme se na to z pohledu CI.
jak urychlit testování. V praxi bude:

  • vlastní linter, který kontroluje přítomnost povinných proměnných pro hostitele v závislosti na roli;
  • do CI testování přidáváme pouze ty role, které se změnily, což výrazně zkracuje dobu provádění testů;
  • přidáváme testování scénářů. Nasadíme aplikaci jako celek, jako integrační test.

Téma č. 7: Monitoring infrastruktury s Prometheus

  • Jak postavit zdravý monitoringový systém
  • Monitoring jako nástroj pro analýzu, efektivitu vývoje a stabilitu kódu, ještě před uvedením do prodeje
  • Nastavení prometheus + alertmanager + grafana
  • Přejdeme od monitorování zdrojů k monitorování aplikací

Budeme hodně mluvit o monitorování mikroslužeb: ID požadavků, nástroj pro monitoring API. Bude spousta osvědčených postupů a hodně samostatné práce.

Napíšeme svůj exportér. Nastavíme monitoring nejen produkční infrastruktury a aplikací, ale i sestavení v Gitlabu. Podíváme se na statistiky selhaných testů. Podíváme se v praxi, jak bude vypadat monitoring bez healthCheck a s ním.

Téma č. 8: Logování aplikace s ELK

  • Přehled Elastic a jeho nástrojů
  • ELK/Elastic Stack/x-pack — co je co a jaký je v tom rozdíl?
  • Jaké úkoly lze řešit pomocí ElasticSearch (vyhledávání, úložiště, vlastnosti škálování, flexibilita nastavení)
  • Monitoring infrastruktury (x-pack)
  • Logy kontejnerů a aplikací (x-pack)
  • Logování na příkladu naší aplikace
  • Osvědčené postupy práce s Kibana
  • Open Distro for Elasticsearch od Amazonu

Téma bylo kompletně přepracováno, vede ho Eduard Medvěděv, mnozí ho viděli na webináři o DevOps a SRE. Představí a ukáže osvědčené postupy práce s EFK na příkladu školící aplikace. Bude praxe s Kibana.

Téma č. 9: Automatizace infrastruktury s ChatOps

  • DevOps a ChatOps
  • ChatOps: silné stránky
  • Slack a alternativy
  • Boti pro ChatOps
  • Hubot a alternativy
  • Bezpečnost
  • Testování
  • Nejlepší a nejhorší praktiky

V ChatOps byla přidána praxe autentizace s dělením práv, potvrzení činností jiným uživatelským, teorie a praxe alternativy Slack v podobě Mattermost, teorie unit a integračních testů pro bota.

Slörm DevOps začíná 30. ledna. Cena — 30 000.
Pro ty, kteří dočetli, sleva 15 % na kurz o DevOps s promo kódem habrapost.

Registrace zde

Budu rád, když vás uvidím na Slörmech!

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster