Mulle meeldib nĂ€dalane projekt, kuid pikemad, aastased projektid teevad mind Ă€revaks. Aja jooksul avastasin, et MVP ja inkrementide mĂ”isted agiilsuses on just need, mis mulle meeldivad: luua toimiv tĂŒkk, rakendada see ja edasi liikuda.
Siiski, DevOps-i transformatsioon, nagu seda kÀsitletakse raamatutes ja konverentsidel, on justkui aastane vÔi isegi mitmeaastane projekt.
Me ehitasime oma DevOps kursuse 'MVP DevOps ĂŒhe sprindi jooksul' ja 'valmidus inkremente teostama' paradigma alusel. Lihtsamalt öeldes, âet osalejal oleks vĂ”imalik naastes kohe midagi rakendada ja kasu saadaâ.
MVP DevOps: kursuses on tööriistad peamiste DevOps protsesside jaoks. Me ei seadnud eesmĂ€rgiks uurida ja vĂ”rrelda kĂ”iki CI/CD sĂŒsteeme vĂ”i sĂŒveneda Infrastructure as Code lĂ€henemisviisi sĂŒgavustesse. Anname ĂŒhe selge tehnoloogia: Gitlab CI/CD, Ansible, Terraform, Packer, Molecule, Prometheus, EFK. Kursuse lĂ€binud saavad ĂŒles ehitada pilootprojekti infrastruktuuri ja töötada selle kallal.

Valmidus inkremente teostama: iga elemendi juures on rohkelt praktikat ja nĂ€iteid. VĂ”id vĂ”tta ĂŒhe tööriista ja Ă”ppematerjalide jĂ€rgi sellele rakendamisega tegelema. NĂ€iteks kirjutada Ansibleâi mĂ€nguplaane dev-ĂŒmbritsemise levitamiseks vĂ”i ĂŒhendada bot ja haldada server telefoni kaudu. See tĂ€hendab, et nĂ€dalaga saavutad konkreetse praktilise tulemuse. Kuigi see vĂ”ib tunduda kaugel DevOps-i transformatsioonist kogu ettevĂ”ttes, eksisteerib see siin, töötab ja toob kasu.
SlĂžgma DevOps teemad
Teema nr 1: Git parimad praktikad â rÀÀgib iseenesest.
Teema nr 2: Rakenduse arenduse vaatenurgast â insenerile on vajalikud nii administraatori kui ka arendaja oskused, mistĂ”ttu rÀÀgime administreerijatele arendusest.
Teema nr 3: CI/CD alused
- Sissejuhatus CI/CD automatiseerimisse
- Gitlab CI aluste tööpÔhimÔtted
- Parimad praktikad gitlab-runneriga
- Bashi, makeâi, gradleâi tööriistad CI/CD osana ja muul eesmĂ€rgil
- Docker kui lahendus CI probleemide lahendamiseks
Teema nr 4: Gitlab CI/CD tootmises
- Konkurents job'i kÀivitamisel
- Teostuse kontroll ja piirangud: only, when
- Töö artefaktidega
- Mallid, kaasamised ja mikroteenused: lihtsustame juurutamist
Tutvustame ĂŒliĂ”pilastele CI/CD aluspĂ”himĂ”tteid ja -konsepte ning tööriistu CI/CD rakendamiseks. Tulemuseks suudab ĂŒliĂ”pilane iseseisvalt valida sobiva CI/CD disainimalli ja rakendustööriista.
See, kuidas me rakendame CI/CD Gitlabis ja analĂŒĂŒsime seadistust, uurides edasijĂ”udnud kasutusvĂ”imalusi Gitlab CI. Selle tulemusena suudab ĂŒliĂ”pilane iseseisvalt seadistada Gitlab CI enda projektide jaoks.
VĂ”rreldes esimese DevOpsi SlĂ«rmiga vĂ€hendasime teooriat kahe tunni vĂ”rra (tunni teemaga), jĂ€tame kĂ”rvale kĂ”ik sĂŒsteemide ĂŒlevaated ja keskendume ainult Gitlab CI-le. Keskendusime praktikale, lisades palju parimaid praktikaid.
Teema nr 5: Infrastruktuur kui kood
- IaC: lÀhenemine infrastruktuurile kui koodile
- Pilveteenuse pakkujad kui infrastruktuuri tarnijad
- SĂŒsteemide algatustööriistad, piltide koostamine (packer)
- IaC Terraformi nÀitel
- Konfiguratsioonide salvestamine, koostöö, rakenduste automatiseerimine
- Ansible'i mÀngukavade loomise praktika
- Idempotentsus, deklaratiivsuse
- IaC Ansible'i nÀitel
VĂ€hendasime teoreetilist osa UI ja OpenStack CLI kohta ja keskendusime praktikale.
Vaadatakse kahte IaC lĂ€henemist, kasutades sama rakendust, tuues esile iga lĂ€henemise plusse ja miinuseid. Selle tulemusena mĂ”istab ĂŒliĂ”pilane, millist lĂ€henemist kus kasutada ja saab töötada nii Terraformi kui ka Ansible'iga.
Terraformi teemal vaatame praktikas meeskonnatööd ja olekuteabe hoidmist andmebaasis. Modulaarsuse töös kirjutab ĂŒliĂ”pilane ise ja seadistab mooduli ning Ă”pib, kuidas seda kasutada: taaskasutamine, versioonimine. Lisame töö Consuliga, nĂ€idates, millistel juhtudel see on vajalik ja kuidas seda Ă”igesti kasutada.
Teema nr 6: Infrastruktuuri testimine
- Uurime, miks testide kirjutamine ei toimi?
- Milliseid teste on IaC-s olemas?
- Kas staatilised analĂŒsaatorid on tĂ”epoolest kasutu?
- Ăhikute testimine IaC nĂ€itel ansible + molecule
- Testimine kui osa CI-st
- Testid steroididel vÔi kuidas mitte oodata 5 tundi, et testid IaC jaoks lÔpetataks
VÀhendasime teoreetilist osa, vÀhem juttu Vagrantist/Molecule'ist, rohkem praktikat ja otse testimist, keskendudes lintritele ja nende tööle. Vaadatakse CI vaatenurgast.
kuidas testimist kiiremaks muuta. Praktikas on:
- Kohandatud linter, mis kontrollib, kas kohustuvad muutujad on hostis olemas sÔltuvalt rollist;
- lisame CI-sse testimise ainult nendele rollidele, mis on muutunud, mis vÔimaldab oluliselt vÀhendada testimise aega;
- lisame stsenaariumide testimise. Rakenduse tÀielik seadistamine nagu integratsioonitest.
Teema nr 7: Infrastruktuuri jÀlgimine Prometheusega
- Kuidas luua tervislik jĂ€lgimissĂŒsteem
- JĂ€lgimine kui tööriist arendamise ja koodi stabiilsuse analĂŒĂŒsiks juba enne tootmist
- Prometheus + alertmanager + grafana seadistamine
- Liigume ressursside jÀlgimiselt rakenduste jÀlgimisele
RÀÀgime palju mikroteenuste jÀlgimisest: pÀringute ID, api jÀlgimise tööriist. Tuleb palju parimaid praktikaid ja palju iseseisvat tööd.
Kirjutame oma eksportija. Seame ĂŒles jĂ€lgimise mitte ainult tootmisinfrastruktuuri ja rakenduste jaoks, vaid ka Gitlab'i ehituste jaoks. Vaatame statistikat ebaĂ”nnestunud testide kohta. Vaata praktikas, milline jĂ€lgimine nĂ€eb vĂ€lja ilma healthCheck'ita ja koos sellega.
Teema nr 8. Rakenduse logimine ELK-iga
- Ălevaade Elasticust ja selle tööriistadest
- ELK/Elastic Stack/x-pack â mis on mis ja mis on erinevus?
- Milliseid ĂŒlesandeid saab lahendada ElasticSearchi abil (otsing, salvestus, skaleerimise omadused, seadistamise paindlikkus)
- Infrastruktuuri jÀlgimine (x-pack)
- Konteinerite ja rakenduste logid (x-pack)
- Logimine meie rakenduse nÀitel
- Kibana kasutamise praktikad
- Amazonist pÀrit Open Distro for Elasticsearch
Teema on tĂ€ielikult ĂŒmber töötatud, seda juhendab Eduard Medvedev, paljud on teda nĂ€inud DevOpsi ja SRE veebinaril. Ta selgitab ja nĂ€itab parimaid praktikaid EFK kasutamiseks Ă”ppe rakenduse nĂ€itel. Ootab praktika Kibana'ga.
Teema nr 9: Infrastruktuuri automatiseerimine ChatOpsi abil
- DevOps ja ChatOps
- ChatOps: tugevused
- Slack ja alternatiivid
- Robotid ChatOpsi jaoks
- Hubot ja alternatiivid
- Turvalisus
- Testimine
- Parimad ja halvemat praktikat
ChatOps on lisatud autendimise praktika Ă”iguste jagamisega, toimingute kinnitamine teise kasutaja poolt, teooria ja praktika Slacki alternatiivina Mattermostina, teooria ĂŒksuste ja integratsioonitestide jaoks robotile.
Slörm DevOps algab 30. jaanuaril. Hind â 30 000.
Neile, kes on lÔpetanud lugemise, 15% allahindlus DevOpsi kursusele sooduskoodiga habrapost.
Registreerimine
Ootan teid Slörmides!
Allikas: habr.com
