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í.

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
Budu rád, když vás uvidím na Slörmech!
Zdroj: habr.com
