Volim projekat koji traje nedelju dana i plaše me projekti koji traju godinu dana. U Agile-u mi se jako dopao koncept MVP-a i inkrementa, ovo je samo moja stvar: napravi izvodljiv komad, implementiraj ga i nastavi dalje.
Istovremeno, DevOps transformacija u formi u kojoj se o njoj govori u knjigama i na konferencijama je samo jednogodišnji projekat. Ili u godinama.
Naš DevOps kurs smo izgradili u paradigmi „MVP DevOps u jednom sprintu“ i „spremnosti za inkremente“. I ako ljudski, onda „tako da učesnik, po povratku, može odmah nešto implementirati kod kuće i imati koristi od toga“.
MVP DevOps: Kurs sadrži alate za osnovne DevOps procese. Nismo si postavili zadatak da pregledamo i uporedimo sve CI/CD sisteme ili da otkrijemo dubine pristupa Infrastruktura kao kod. Nudimo jedan jasan stack: Gitlab CI/CD, Ansible, Terraform i Packer, Molecule, Prometheus, EFK. Možete doći sa kurseva, prikupiti infrastrukturu za pilot projekat iz materijala za obuku i raditi u njemu.
Spremnost za povećanje: svakom elementu pružamo puno prakse i primjera. Možete uzeti jedan alat i početi ga implementirati koristeći crteže za obuku. Na primjer, napišite Ansible playbook za uvođenje dev okruženja ili povežite bota i administrirajte server sa svog telefona. Odnosno, dobiti konkretan praktičan rezultat za nedelju dana. Možda je beskonačno daleko od DevOps transformacije cijele kompanije, ali on je tu, tu je, radi i donosi prednosti.
Slurm DevOps teme
Tema #1: Git najbolje prakse - govori za sebe.
Tema #2: Rad sa aplikacijom sa razvojne tačke gledišta — inženjeru su potrebne kompetencije administratora i programera, pa mi govorimo administratorima o razvoju.
Tema #3: CI/CD osnove
- Uvod u CI/CD automatizaciju
- Gitlab CI Osnove
- Najbolje prakse sa gitlab-runnerom
- Bash, make, gradle alati kao dio CI/CD-a i još mnogo toga
- Docker kao način rješavanja CI problema
Tema #4: Gitlab CI/CD u produkciji
- Konkurencija pri započinjanju posla
- Kontrola izvršenja i ograničenja: samo, kada
- Rad sa artefaktima
- Predlošci, uključuje i mikrousluge: pojednostavljivanje implementacije
Studente upoznajemo sa osnovnim konceptima i konceptima CI/CD i alatima za implementaciju CI/CD. Kao rezultat, student će biti u mogućnosti da samostalno odabere CI/CD dizajn obrazac i odgovarajući alat za implementaciju.
Zatim prikazujemo implementaciju CI/CD-a u Gitlabu i prolazimo kroz postavku, gledajući napredne načine korištenja Gitlab CI-a. Kao rezultat, student će moći samostalno konfigurirati Gitlab CI za svoje projekte.
U poređenju sa prvim DevOps Slurmom, smanjili smo teoriju za 2 puta (sat po temi), udaljili se od pregleda svih sistema i ostavili samo Gitlab CI. Fokusirali smo se na praksu i dodali mnogo najboljih praksi.
Tema #5: Infrastruktura kao kod
- IaC: Približavanje infrastrukturi kao kodu
- Provajderi u oblaku kao provajderi infrastrukture
- Alati za inicijalizaciju sistema, izgradnja imidža (paker)
- IaC koristeći Terraform kao primjer
- Skladištenje konfiguracija, saradnja, automatizacija aplikacija
- Praksa kreiranja Ansible playbooks-a
- Idempotencija, deklarativnost
- IaC koristeći Ansible kao primjer
Smanjili smo teoretski dio na UI i openstack cli i fokusirali se na praksu.
Pogledajmo dva IaC pristupa koji koriste istu aplikaciju, pokazujući prednosti i nedostatke svakog pristupa. Kao rezultat, učenik će razumjeti koji pristup gdje koristiti i moći će raditi i sa Terraformom i Ansibleom.
U temi o Terraformu ćemo se osvrnuti na timski rad i pohranjivanje stanja u bazu podataka u praksi. Kada radi sa modulima, student će sam napisati i konfigurisati modul, naučiti kako da radi sa njim: ponovo ga koristi, verziju. Dodajmo rad sa Consulom, pokažimo u kojim slučajevima je to potrebno i kako ga pravilno koristiti.
Tema #6: Infrastrukturno testiranje
- Hajde da shvatimo zašto ne pišu testove?
- Koji testovi postoje u IaC-u?
- Statički analizatori, jesu li zaista toliko beskorisni?
- Jedinično testiranje IaC-a koristeći ansible + molekul kao primjer
- Testiranje u sklopu ci
- Testovi na steroidima ili kako ne čekati 5 sati da se IaC testovi završe
Smanjili smo teoretski dio, manje priča o Vagrantu/Molecule, više prakse i direktnog testiranja, s fokusom na lintere i rad s njima. Gledajući to sa CI tačke gledišta
kako ubrzati testiranje. U praksi će biti:
- samopisani linter koji provjerava prisustvo obaveznih varijabli za host ovisno o ulozi;
- U CI testiranje dodajemo samo one uloge koje su se promijenile, što može značajno smanjiti vrijeme izvršenja testa;
- dodavanje testiranja scenarija. Cijelu aplikaciju implementiramo kao integracijski test.
Tema #7: Nadgledanje infrastrukture sa Prometheusom
- Kako izgraditi zdrav sistem praćenja
- Monitoring kao alat za analizu, efikasnost razvoja i stabilnost koda, čak i prije prodaje
- Postavljanje prometheusa + alertmanager + grafana
- Prelazak sa nadgledanja resursa na praćenje aplikacija
Mnogo ćemo pričati o nadgledanju mikroservisa: ID-ovima zahtjeva, alatu za praćenje API-ja. Biće puno najboljih praksi i puno samostalnog rada.
Hajde da napišemo naš vlastiti izvoznik. Postavićemo praćenje ne samo proizvodne infrastrukture i aplikacija, već i sklopova u Gitlabu. Pogledajmo statistiku neuspjelih testova. Pogledajmo u praksi kako će nadzor izgledati bez HealthChecka i sa njim.
Tema br. 8. Evidentiranje aplikacije pomoću ELK-a
- Pregled Elastic-a i njegovih alata
- ELK/Elastic Stack/x-pack - šta je šta i koja je razlika?
- Koji problemi se mogu riješiti korištenjem ElasticSearch-a (pretraga, pohrana, mogućnosti skaliranja, fleksibilnost konfiguracije)
- Nadgledanje infrastrukture (x-pack)
- Dnevnici kontejnera i aplikacija (x-pack)
- Logiranje koristeći našu aplikaciju kao primjer
- Praksa rada sa Kibanom
- Otvorite Distro za Elasticsearch sa Amazona
Tema je potpuno redizajnirana, vodi je Eduard Medvedev, mnogi su ga vidjeli na webinaru o DevOps-u i SRE-u. On će na primjeru obrazovne aplikacije ispričati i demonstrirati najbolje prakse za rad sa EFK-om. Biće treninga sa Kibanom.
Tema #9: Automatizacija infrastrukture sa ChatOps-om
- DevOps i ChatOps
- ChatOps: Prednosti
- Slack i alternative
- Botovi za ChatOps
- Hubot i alternative
- Sigurnost
- Testiranje
- Najbolje i najgore prakse
ChatOps je dodao praksu autentifikacije sa razdvajanjem prava, potvrđivanje akcija od strane drugog korisnika, teoriju i praksu alternative Slacku u vidu Mattermosta, teoriju jedinice i integracijske testove za bot.
DevOps slurm počinje 30. januara. Cijena - 30.
Za one koji su završili čitanje, postoji 15% popusta na DevOps kurs uz korištenje promotivnog koda habrapost.
Registrirajte se
Biće mi drago da te vidim u Slurmsu!
izvor: www.habr.com