Slurm DevOps - lepšie vrabec na 3 dni, ako krásny čajka v ďalekej budúcnosti

Mám rád projekty, které trvají týden, a projekty trvající rok mě děsí. V Agile se mi velmi líbila koncepce MVP a inkrementace, to je přesně to, co mi vyhovuje: vytvořit funkční kus, implementovat ho a posunout se dál.

Transformace DevOps, jak je diskutována v knihách a na konferencích, je totiž projekt trvající rok. Nebo roky.

Sestavili jsme náš kurz o DevOps v paradigmatismu „MVP DevOps za jeden sprint“ a „připravenost na inkrementy“. A pokud bych to měl říct lidmi, tak „aby se účastník po návratu mohl okamžitě něco implementovat a získat prospěch“.

MVP DevOps: v kurzu jsou nástroje pro základní DevOps procesy. Nesnažili jsme se zkoumat a porovnat všechny systémy CI/CD, ani hlouběji odhalit přístup Infrastructure as Code. Dáváme jeden srozumitelný stack: Gitlab CI/CD, Ansible, Terraform a Packer, Molecule, Prometheus, EFK. Je možné přijít z kurzů, sestavit z učebních materiálů infrastrukturu pro pilotní projekt a pracovat v ní.

Slurm DevOps - lepšie vrabec na 3 dni, ako krásny čajka v ďalekej budúcnosti

Připravenost na inkrementy: každý prvek poskytujeme s velkým množstvím praxe a příkladů. Můžete vzít jeden nástroj a podle učebních plánů se věnovat jeho implementaci. Například napsat Ansible playbook pro rozdělení dev prostření nebo připojit bota a spravovat server přes telefon. To znamená, že za týden získáte konkrétní praktický výsledek. Ačkoliv je tento výsledek nekonečně vzdálen od kompletní transformace DevOps celé firmy, přesto existuje, je tady, funguje a přináší prospěch.

Témata Slörma DevOps

Téma č. 1: Nejlepší praktiky Git — hovoří sama za sebe.
Téma č. 2: Práce s aplikací z pohledu vývoje — inženýrovi potřebné kompetence administrátora a vývojáře, proto vysvětlujeme administrátorům vývoj.

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

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

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

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

Seznamujeme studenty se základními pojmy a koncepcemi CI/CD a s nástroji pro implementaci CI/CD. Výsledkem je, že se student bude schopen samostatně rozhodnout pro správný designový vzor CI/CD a vhodný implementační nástroj.

Potom ukážeme implementáciu CI/CD v Gitlabe a preberieme nastavenie, pričom sa zameriame na pokročilé používanie Gitlab CI. Výsledkom bude, že študent si bude schopný samostatne nastaviť Gitlab CI pre vlastné projekty.

V porovnaní s prvým Slörmom DevOps sme teóriu skrátili na polovicu (po hodine na tému), vzdali sme sa prehľadu všetkých systémov a zostali sme len pri Gitlab CI. Zamerali sme sa na prax a pridali množstvo najlepších praktík.

Téma č. 5: Infrastruktúra ako kód

  • IaC: prístup k infraštruktúre ako kódu
  • Cloudoví poskytovatelia ako dodávatelia infraštruktúry
  • Nástroje na inicializáciu systémov, zostavenie obrazov (packer)
  • IaC na príklade Terraform
  • Ukladanie konfigurácií, spolupráca, automatizácia aplikácií
  • Praxa vytvárania Ansible playbookov
  • Idempotentnosť, deklaratívnosť
  • IaC na príklade Ansible

Skrátili sme teoretickú časť o UI a openstack cli a sústredili sme sa na prax.
Preberieme dva prístupy IaC, používajúc tú istú aplikáciu, a ukážeme výhody a nevýhody každého prístupu. Výsledkom bude, že študent pochopí, ktorý prístup kde aplikovať, a bude vedieť pracovať ako s Terraformom, tak s Ansible.

V téme o Teraforme na praktických príkladoch preberieme tímovú prácu a ukladanie stavu do databázy. Pri práci s modulmi si študent sám napíše a nastaví modul, naučí sa s ním pracovať: opätovne používať, verzionovať. Pridáme prácu s Consulom, ukážeme, v ktorých prípadoch je potrebný a ako ho správne používať.

Téma č. 6: Testovanie infraštruktúry

  • Zisťujeme, prečo sa nepíšu testy?
  • Aké typy testov existujú v IaC?
  • Statické analyzátory, sú skutočne také zbytočné?
  • Jednotkové testovanie IaC na príklade ansible + molecule
  • Testovanie ako súčasť ci
  • Testy na steroidoch alebo ako nečakať 5 hodín na skončenie testov pre IaC

Skrátili sme teoretickú časť, menej rozprávania o Vagrant/Molecule, viac praxe a priamo testovania, s dôrazom na lintery a prácu s nimi. Pozrieme sa z hľadiska CI
ako urýchliť testovanie. V praxi uvidíme:

  • vlastný linter, ktorý kontroluje prítomnosť povinných premenných pre hostiteľa v závislosti od role;
  • pridávame do CI testovanie len tých rolí, ktoré sa zmenili, čo umožňuje podstatne skrátiť čas vykonávania testov;
  • pridávame testovanie scenárov. Nasadzujeme aplikáciu celú, ako integračný test.

Téma č. 7: Monitoring infraštruktúry s Prometheusom

  • Ako vybudovať zdravý monitorovací systém
  • Monitoring ako nástroj na analýzu, efektívnosť vývoja a stabilitu kódu ešte pred uvedením do produkcie
  • Nastavenie prometheus + alertmanager + grafana
  • Prechádzame od monitorovania zdrojov k monitorovaniu aplikácií

Budeme sa veľa rozprávať o monitorovaní mikroservisov: ID požiadaviek, nástroj na monitorovanie API. Bude veľa osvedčených postupov a veľa samostatnej práce.

Napíšeme svoj vlastný exporter. Nastavíme monitoring nielen produkčnej infraštruktúry a aplikácie, ale aj buildov v Gitlabe. Pozrieme sa na štatistiky o neúspešných testoch. Ukážeme si v praxi, ako bude vyzerať monitoring bez healthchecku a s ním.

Téma č. 8. Logovanie aplikácie pomocou ELK

  • Prehľad Elastic a jeho nástrojov
  • ELK/Elastic Stack/x-pack — čo je čo a aký je rozdiel?
  • Aké úlohy je možné riešiť pomocou ElasticSearch (vyhľadávanie, úložisko, špecifiká škálovania, flexibilita nastavenia)
  • Monitoring infraštruktúry (x-pack)
  • Logy kontajnerov a aplikácií (x-pack)
  • Logovanie na príklade našej aplikácie
  • Osvedčené postupy práce s Kibana
  • Open Distro for Elasticsearch od Amazonu

Téma bola úplne prepracovaná, vedie ju Eduard Medvedev, mnohí ho videli na webinári o DevOps a SRE. Povie a ukáže osvedčené postupy práce s EFK na príklade výučbovej aplikácie. Bude praktická práca s Kibana.

Téma č. 9: Automatizácia infraštruktúry s ChatOps

  • DevOps a ChatOps
  • ChatOps: silné stránky
  • Slack a alternatívy
  • Boti pre ChatOps
  • Hubot a alternatívy
  • Bezpečnosť
  • Testovanie
  • Najlepšie a najhoršie praktiky

V ChatOps sme pridali prax autentifikácie s deliteľnými právami, potvrdenie akcií iným používateľom, teóriu a prax alternatívy Slack v podobe Mattermost, teóriu jednotkových a integračných testov pre bota.

Slǿrm DevOps začína 30. januára. Cena — 30 000.
Pre tých, ktorí dočítali, zľava 15% na kurz o DevOps s promo kódom habrapost.

Registrácia tu

Budem rád, ak vás uvidím na Slǿrmach!

Zdroj: habr.com

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster