Kev tso npe rau Slurm DevOps hauv Moscow qhib

TL; DR

Slurm DevOps yuav muaj nyob rau hauv Moscow thaum Lub Ib Hlis 30 - Lub Ob Hlis 1.

Ib zaug ntxiv peb yuav txheeb xyuas DevOps cov cuab yeej hauv kev xyaum.
Paub meej thiab qhov kev pab cuam hauv qab txiav.
SRE raug tshem tawm ntawm qhov kev zov me nyuam vim tias ua ke nrog Ivan Kruglov peb tab tom npaj ib qho Slurm SRE cais. Kev tshaj tawm yuav los tom qab.
Ua tsaug rau Selectel, peb cov neeg txhawb nqa txij li thawj Slurm!

Kev tso npe rau Slurm DevOps hauv Moscow qhib

Hais txog kev xav, kev tsis ntseeg thiab kev vam meej

Kuv tau mus kawm DevOpsConf hauv Moscow thaum kawg lub Cuaj Hli.
Summary ntawm qhov kuv hnov:
- DevOps xav tau los ntawm feem ntau cov haujlwm ntawm txhua qhov loj;
- DevOps yog kab lis kev cai, zoo li txhua kab lis kev cai, nws yuav tsum los ntawm hauv tuam txhab. Koj tsis tuaj yeem ntiav DevOps engineer thiab npau suav tias nws yuav txhim kho cov txheej txheem.
- Thaum kawg ntawm cov npe ntawm qhov xav tau rau DevOps kev hloov pauv los ntawm thev naus laus zis, uas yog, cov cuab yeej DevOps uas peb qhia.

Kuv pom tau hais tias peb tsis raug suav nrog DevOps lub tswv yim thiab kab lis kev cai hauv chav kawm, vim hais tias qhov no tsis tuaj yeem qhia tau zoo. Leej twg xav tau nws yuav nyeem hauv phau ntawv. Los yog nws yuav nrhiav tau tus kws qhia zoo tshaj plaws uas yuav txhawb txhua tus nrog nws txoj kev nyiam thiab txoj cai.

Tus kheej, kuv ib txwm yog tus txhawb nqa ntawm "kev txav los ntawm hauv qab", kev siv guerrilla ntawm kab lis kev cai los ntawm cov cuab yeej. Ib yam li ib qho tau piav qhia hauv Phoenix Project. Yog tias peb muaj kev sib koom tes nrog Git teeb tsa kom raug, peb tuaj yeem maj mam ntxiv nws nrog cov cai, thiab tom qab ntawd nws yuav muaj txiaj ntsig.

Thiab txhua yam zoo ib yam, thaum peb tab tom npaj DevOps Slurm, qhov chaw uas peb tab tom tham tshwj xeeb txog cov cuab yeej, Kuv ntshai tsam cov neeg koom nrog: β€œKoj hais tej yam zoo. Nws yog kev khuv leej, kuv yuav tsis muaj peev xwm ua tau lawv. " Muaj kev tsis ntseeg ntau heev uas peb tau tso tseg tam sim ntawd kom rov ua qhov program.

Txawm li cas los xij, feem ntau ntawm cov neeg koom tau teb rau hauv daim ntawv ntsuam xyuas tias cov kev paub tau txais yog siv tau rau hauv kev xyaum, thiab tias lawv yuav siv qee yam hauv lawv lub teb chaws yav tom ntej. Tib lub sijhawm, txhua yam uas peb tau piav qhia tau suav nrog hauv cov npe ntawm cov khoom muaj txiaj ntsig: Git, Ansible, CI / CD, thiab SRE.

Nws yuav tsim nyog nco ntsoov tias thaum pib lawv kuj tau hais txog Slurm Kubernetes tias nws tsis tuaj yeem piav qhia k3s hauv 8 hnub.

Nrog Ivan Kruglov, uas yog tus thawj coj ntawm SRE lub ntsiab lus, peb pom zoo rau ib qho kev pab cuam. Peb tab tom tham txog cov ntsiab lus tam sim no, kuv yuav tshaj tawm sai sai.

Dab tsi yuav tshwm sim ntawm Slurm DevOps?

Qhov kev pab cuam

Ntsiab lus # 1: Pab neeg ua haujlwm nrog Git

  • Basic commands git init, cog lus, ntxiv, diff, cav, xwm txheej, rub, thawb
  • Git ntws, ceg thiab cov cim npe, sib koom ua ke cov tswv yim
  • Ua haujlwm nrog ntau cov chaw taws teeb chaw taws teeb
  • GitHub flow
  • Fork, tej thaj chaw deb, rub thov
  • Kev tsis sib haum xeeb, kev tshaj tawm, ib zaug ntxiv txog Gitflow thiab lwm yam ntws hauv kev cuam tshuam nrog pab pawg

Lub ntsiab lus # 2: Ua haujlwm nrog daim ntawv thov los ntawm kev txhim kho qhov pom

  • Sau microservice hauv Python
  • Environment Variables
  • Kev sib xyaw ua ke thiab ntsuas ntsuas ntsuas
  • Siv docker-compose hauv kev txhim kho

Ntsiab lus #3: CI/CD: taw qhia rau automation

  • Taw qhia rau Automation
  • Cov cuab yeej (bash, ua, gradle)
  • Siv git-hooks rau automate cov txheej txheem
  • Lub Hoobkas sib dhos kab thiab lawv daim ntawv thov hauv IT
  • Ib qho piv txwv ntawm kev tsim cov kav dej "general".
  • Niaj hnub nimno software rau CI / CD: Drone CI, BitBucket Pipelines, Travis, thiab lwm yam.

Ntsiab lus #4: CI/CD: Ua haujlwm nrog Gitlab

  • Gitlab CI
  • Gitlab Runner, lawv hom thiab daim ntawv thov
  • Gitlab CI, configuration nta, kev coj ua zoo tshaj
  • Gitlab CI Stages
  • Gitlab CI Variables
  • Tsim, sim, deploy
  • Kev tswj hwm thiab kev txwv: tsuas yog, thaum twg
  • Ua haujlwm nrog cov khoom qub
  • Templates hauv .gitlab-ci.yml, rov siv cov yeeb yam hauv ntau qhov chaw ntawm cov kav dej
  • suav nrog - ntu
  • Centralized tswj ntawm gitlab-ci.yml (ib cov ntaub ntawv thiab tsis siv neeg thawb mus rau lwm qhov chaw cia khoom)

Ntsiab lus #5: Infrastructure li Code

  • IaC: Mus cuag Infrastructure li Code
  • Huab muab kev pabcuam raws li cov chaw muab kev pabcuam
  • Cov cuab yeej pib qhov system, duab tsev (packer)
  • IaC siv Terraform ua piv txwv
  • Configuration cia, kev sib koom tes, daim ntawv thov automation
  • Xyaum tsim Ansible playbooks
  • Idempotency, kev tshaj tawm
  • IaC siv Ansible ua piv txwv

Ntsiab lus #6: Infrastructure testing

  • Kev sim thiab txuas txuas ntxiv nrog Molecule thiab Gitlab CI
  • Siv Vagrant

Ntsiab lus #7: Infrastructure saib xyuas nrog Prometheus

  • Vim li cas thiaj xav tau kev saib xyuas?
  • Hom kev saib xyuas
  • Cov ntawv ceeb toom hauv kev saib xyuas
  • Yuav Ua Li Cas Txhim Kho Kev Saib Xyuas Kev Noj Qab Haus Huv
  • Cov ntawv ceeb toom uas tib neeg nyeem tau, rau txhua tus
  • Kev kuaj mob: yam koj yuav tsum tau saib xyuas
  • Automation raws li kev soj ntsuam cov ntaub ntawv

Ntsiab lus #8: Sau daim ntawv thov nrog ELK

  • Qhov zoo tshaj plaws kev txiav txim siab
  • ELK pawg

Ntsiab lus #9: Infrastructure Automation nrog ChatOps

  • DevOps thiab ChatOps
  • ChatOps: Muaj zog
  • Slack thiab lwm txoj kev
  • Bots rau ChatOps
  • Hubot thiab lwm yam
  • Kev ruaj ntseg
  • Cov kev coj ua zoo tshaj plaws thiab phem tshaj plaws

Qhov chaw: Moscow, chav sib tham ntawm lub tsev so Sevastopol.

Cov Hnub: txij Lub Ib Hlis 30 txog Lub Ob Hlis 1, 3 hnub ua haujlwm hnyav.

sau npe

Tau qhov twg los: www.hab.com

Ntxiv ib saib