Slurm DevOps - yon pi bon fonksyonman tit nan 3 jou pase yon bèl teknik nan tan kap vini an byen lwen

Mwen renmen yon pwojè ki dire yon semèn e mwen entimide pa pwojè ki dire yon ane. Nan Agile, mwen reyèlman te renmen konsèp nan MVP ak enkreman, sa a se jis bagay mwen an: fè yon moso travayabl, aplike li epi kontinye.

An menm tan an, transfòmasyon DevOps nan fòm lan nan ki li se diskite nan liv ak nan konferans se jis yon pwojè ki dire lontan. Oswa nan ane.

Nou bati kou DevOps nou an nan paradigm "MVP DevOps nan yon sèl Sprint" ak "preparasyon pou ogmantasyon." Men, si nan tèm imen, Lè sa a, "pou patisipan an, lè li retounen, ka imedyatman aplike yon bagay lakay yo epi benefisye de li."

MVP DevOps: Kou a gen zouti pou pwosesis DevOps debaz yo. Nou pa t fikse travay pou nou revize ak konpare tout sistèm CI/CD oswa revele pwofondè apwòch Enfrastrikti kòm Kòd la. Nou bay yon sèl pile klè: Gitlab CI/CD, Ansible, Terraform ak Packer, Molecule, Prometheus, EFK. Ou ka soti nan kou yo, kolekte enfrastrikti pou yon pwojè pilòt nan materyèl fòmasyon ak travay nan li.

Slurm DevOps - yon pi bon fonksyonman tit nan 3 jou pase yon bèl teknik nan tan kap vini an byen lwen

Preparasyon pou ogmantasyon: nou bay chak eleman anpil pratik ak egzanp. Ou ka pran yon zouti epi kòmanse aplike li lè l sèvi avèk desen fòmasyon yo. Pou egzanp, ekri yon liv Ansible pou woule anviwònman dev oswa konekte yon bot epi administre sèvè a nan telefòn ou. Sa vle di, jwenn yon rezilta pratik konkrè nan yon semèn. Li ka enfiniman lwen transfòmasyon DevOps nan tout konpayi an, men li la, li isit la, li travay ak pote benefis.

Sijè Slurm DevOps

Sijè #1: Git meyè pratik - pale pou kont li.
Sijè #2: Travay ak aplikasyon an nan yon pwen de vi devlopman — yon enjenyè bezwen konpetans yon administratè ak yon pwomotè, kidonk nou di admin yo sou devlopman.

Sijè #3: Prensip Fondamantal CI/CD

  • Entwodiksyon nan automatisation CI/CD
  • Gitlab CI Basics
  • Pi bon pratik ak gitlab-runner
  • Bat, fè, zouti gradle kòm yon pati nan CI/CD ak plis ankò
  • Docker kòm yon fason pou rezoud pwoblèm CI

Sijè #4: Gitlab CI/CD nan pwodiksyon

  • Konpetisyon lè w kòmanse yon travay
  • Kontwòl egzekisyon ak restriksyon: sèlman, lè
  • Travay ak zafè
  • Modèl, enkli ak mikwosèvis: senplifye deplwaman

Nou prezante elèv yo konsèp debaz ak konsèp CI/CD ak zouti pou aplikasyon CI/CD. Kòm rezilta, elèv la ap kapab chwazi yon modèl konsepsyon CI/CD poukont li ak yon zouti aplikasyon apwopriye.

Lè sa a, nou montre aplikasyon CI/CD nan Gitlab epi mache nan konfigirasyon an, gade fason avanse yo sèvi ak Gitlab CI. Kòm yon rezilta, elèv la pral kapab poukont li configured Gitlab CI pou pwòp pwojè yo.

Konpare ak premye DevOps Slurm la, nou te retresi teyori a pa 2 fwa (yon èdtan pou chak sijè), nou te deplase lwen revize tout sistèm yo epi kite sèlman Gitlab CI. Nou te konsantre sou pratik e te ajoute yon anpil nan pi bon pratik.

Sijè #5: Enfrastrikti kòm Kòd

  • IaC: Apwoche Enfrastrikti kòm Kòd
  • Founisè Cloud kòm founisè enfrastrikti
  • Zouti inisyalizasyon sistèm, bilding imaj (packer)
  • IaC itilize Terraform kòm yon egzanp
  • Depo konfigirasyon, kolaborasyon, automatisation aplikasyon
  • Pratike pou kreye liv jwèt Ansible
  • Enpotans, deklarasyon
  • IaC itilize Ansible kòm yon egzanp

Nou te redwi pati teyorik sou UI ak openstack cli epi konsantre sou pratik.
Ann gade de apwòch IaC ki itilize menm aplikasyon an, ki montre avantaj ak dezavantaj chak apwòch. Kòm rezilta, elèv la pral konprann ki apwòch pou itilize kote, epi yo pral kapab travay ak Terraform ak Ansible.

Nan sijè a sou Terraform, nou pral gade nan travay ann ekip ak estoke eta nan yon baz done an pratik. Lè w ap travay ak modil, elèv la pral ekri ak konfigirasyon modil la tèt li, aprann kijan pou travay avèk li: reutilize li, vèsyon li. Ann ajoute travay ak Consul, montre nan ki ka li nesesè ak kijan pou itilize li kòrèkteman.

Sijè #6: Tès enfrastrikti

  • Ann chèche konnen poukisa yo pa ekri tès yo?
  • Ki tès ki genyen nan IaC?
  • Analizè estatik, èske yo vrèman initil?
  • Tès inite IaC lè l sèvi avèk ansible + molekil kòm yon egzanp
  • Tès kòm yon pati nan ci
  • Tès sou estewoyid oswa ki jan yo pa rete tann 5 èdtan pou tès IaC fini

Nou te redwi pati teyorik la, mwens istwa sou Vagrant/Molecule, plis pratik ak tès dirèk, ak yon konsantre sou linters ak travay avèk yo. Gade nan li nan yon pwen de vi CI
ki jan fè tès la pi vit. Nan pratik pral genyen:

  • yon linter pwòp tèt ou-ekri ki tcheke pou prezans nan varyab obligatwa pou lame a depann sou wòl la;
  • Nou ajoute nan tès CI sèlman wòl sa yo ki te chanje, ki ka siyifikativman redwi tan ekzekisyon tès la;
  • ajoute tès senaryo. Nou deplwaye aplikasyon an antye kòm yon tès entegrasyon.

Sijè #7: Siveyans enfrastrikti ak Prometheus

  • Ki jan yo bati yon sistèm siveyans ki an sante
  • Siveyans kòm yon zouti pou analiz, efikasite devlopman ak estabilite kòd, menm anvan vann
  • Mete kanpe prometheus + alertmanager + grafana
  • Deplase soti nan siveyans resous nan siveyans aplikasyon

Nou pral pale anpil sou siveyans mikwosèvis: demann id, zouti siveyans api. Pral gen anpil meyè pratik ak anpil travay endepandan.

Ann ekri pwòp ekspòtatè nou an. Nou pral mete siveyans pa sèlman enfrastrikti pwodiksyon ak aplikasyon, men tou asanble nan Gitlab. Ann gade estatistik yo sou tès echwe yo. Ann wè nan pratik ki sa siveyans pral sanble san HealthCheck ak li.

Sijè No 8. Anrejistre yon aplikasyon ak ELK

  • Apèsi sou Elastic ak zouti li yo
  • ELK/Elastic Stack/x-pack - ki sa ki ak ki diferans ki genyen?
  • Ki pwoblèm yo ka rezoud lè l sèvi avèk ElasticSearch (rechèch, depo, karakteristik dekale, fleksibilite konfigirasyon)
  • Siveyans enfrastrikti (x-pack)
  • Veso ak jounal aplikasyon yo (x-pack)
  • Logging itilize aplikasyon nou an kòm yon egzanp
  • Pratik travay ak Kibana
  • Louvri Distro pou Elasticsearch soti nan Amazon

Sijè a te konplètman reamenaje, li se akomode pa Eduard Medvedev, anpil te wè l 'nan webinar a sou DevOps ak SRE. Li pral di epi demontre pi bon pratik pou travay ak EFK lè l sèvi avèk egzanp yon aplikasyon edikasyon. Pral gen pratik ak Kibana.

Sijè #9: Otomatik enfrastrikti ak ChatOps

  • DevOps ak ChatOps
  • ChatOps: Fòs
  • Slack ak altènativ
  • Bots pou ChatOps
  • Hubot ak altènativ yo
  • Безопасность
  • Tès
  • Pi bon ak pi move pratik

ChatOps te ajoute pratik otantifikasyon ak separasyon dwa, konfimasyon aksyon yon lòt itilizatè, teyori ak pratik yon altènativ a Slack nan fòm Mattermost, teyori inite ak tès entegrasyon pou bot la.

Slurm DevOps kòmanse 30 janvye. Pri - 30.
Pou moun ki te fini lekti, gen yon rabè 15% sou kou DevOps lè l sèvi avèk kòd pwomosyon habrapost la.

Enskripsyon isit la

Mwen pral kontan wè ou nan Slurms!

Sous: www.habr.com

Add nouvo kòmantè