Slurm DevOps - ավելի լավ գործող ծիտ 3 օրում, քան գեղեցիկ կռունկը հեռավոր ապագայում

Ես սիրում եմ մեկշաբաթյա նախագիծ և ինձ վախեցնում են մեկ տարվա նախագծերը: Agile-ում ինձ շատ դուր եկավ MVP-ի և ավելացման հայեցակարգը, սա միայն իմ բանն է՝ պատրաստել գործունակ կտոր, իրականացնել այն և առաջ գնալ:

Միևնույն ժամանակ, DevOps-ի վերափոխումն այն ձևով, որով այն քննարկվում է գրքերում և կոնֆերանսներում, ընդամենը մեկ տարվա նախագիծ է: Կամ տարիների ընթացքում:

Մենք կառուցել ենք մեր DevOps դասընթացը «MVP DevOps-ը մեկ սպրինտում» և «հաճախումների պատրաստակամություն» պարադիգմով: Իսկ եթե մարդկային առումով, ապա «որպեսզի մասնակիցը վերադառնալուն պես կարողանա անմիջապես ինչ-որ բան իրագործել տանը և դրանից օգուտ քաղել»։

MVP DevOps. Դասընթացը պարունակում է գործիքներ հիմնական DevOps գործընթացների համար: Մենք մեր առաջ խնդիր չենք դրել վերանայել և համեմատել բոլոր CI/CD համակարգերը կամ բացահայտել Ենթակառուցվածքի խորքերը՝ որպես օրենսգրքի մոտեցում: Մենք տրամադրում ենք մեկ հստակ փաթեթ՝ Gitlab CI/CD, Ansible, Terraform and Packer, Molecule, Prometheus, EFK: Դուք կարող եք գալ դասընթացներից, հավաքել ենթակառուցվածքը փորձնական ծրագրի համար ուսումնական նյութերից և աշխատել դրանում:

Slurm DevOps - ավելի լավ գործող ծիտ 3 օրում, քան գեղեցիկ կռունկը հեռավոր ապագայում

Պատրաստակամություն ավելացումների համար. մենք յուրաքանչյուր տարրի տրամադրում ենք բազմաթիվ պրակտիկա և օրինակներ: Դուք կարող եք վերցնել մեկ գործիք և սկսել այն իրականացնել՝ օգտագործելով ուսումնական գծագրերը: Օրինակ՝ գրեք Ansible գրքույկ՝ մշակող միջավայրերը բացելու համար կամ միացրեք բոտ և կառավարեք սերվերը ձեր հեռախոսից: Այսինքն՝ մեկ շաբաթում ստանալ կոնկրետ գործնական արդյունք։ Այն կարող է անսահմանորեն հեռու լինել ամբողջ ընկերության DevOps-ի փոխակերպումից, բայց այն կա, այստեղ է, այն աշխատում է և օգուտներ է բերում:

Slum DevOps թեմաները

Թեմա թիվ 1. Git-ի լավագույն փորձը - խոսում է ինքնին:
Թեմա #2. Ծրագրի հետ աշխատելը զարգացման տեսանկյունից — ինժեներին անհրաժեշտ են ադմինիստրատորի և մշակողի իրավասությունները, ուստի մենք ադմիններին պատմում ենք զարգացման մասին:

Թեմա #3. CI/CD հիմունքներ

  • CI/CD ավտոմատացման ներածություն
  • Gitlab CI հիմունքներ
  • Լավագույն փորձը gitlab-runner-ի հետ
  • Bash, make, gradle գործիքները որպես CI/CD-ի մաս և այլն
  • Դոկերը որպես CI խնդիրների լուծման միջոց

Թեմա #4. Gitlab CI/CD-ն արտադրության մեջ

  • Մրցակցություն աշխատանք սկսելիս
  • Կատարման հսկողություն և սահմանափակումներ. միայն, երբ
  • Աշխատեք արտեֆակտների հետ
  • Կաղապարներ, ներառում և միկրոծառայություններ. տեղակայման պարզեցում

Մենք ուսանողներին ծանոթացնում ենք CI/CD-ի և CI/CD-ի իրականացման գործիքների հիմնական հասկացություններին և հասկացություններին: Արդյունքում ուսանողը կկարողանա ինքնուրույն ընտրել CI/CD դիզայնի օրինակ և համապատասխան իրականացման գործիք:

Այնուհետև մենք ցույց ենք տալիս CI/CD-ի ներդրումը Gitlab-ում և անցնում կարգավորումների միջով` դիտելով Gitlab CI-ի օգտագործման առաջադեմ ուղիները: Արդյունքում ուսանողը կկարողանա ինքնուրույն կարգավորել Gitlab CI-ն սեփական նախագծերի համար:

Համեմատած առաջին DevOps Slurm-ի հետ՝ մենք կրճատեցինք տեսությունը 2 անգամ (մեկ ժամ մեկ թեմայում), հեռացանք բոլոր համակարգերի վերանայումից և թողեցինք միայն Gitlab CI-ն: Մենք կենտրոնացանք պրակտիկայի վրա և ավելացրեցինք շատ լավագույն փորձը:

Թեմա #5. Ենթակառուցվածքը որպես օրենսգիրք

  • IaC. Մոտեցում ենթակառուցվածքին որպես կոդ
  • Ամպային մատակարարները որպես ենթակառուցվածքի մատակարարներ
  • Համակարգի սկզբնավորման գործիքներ, պատկերների կառուցում (փաթեթավորող)
  • IaC օգտագործելով Terraform-ը որպես օրինակ
  • Կազմաձևման պահեստավորում, համագործակցություն, հավելվածների ավտոմատացում
  • Ansible խաղային գրքերի ստեղծման պրակտիկա
  • Անզորություն, դեկլարատիվություն
  • IaC օգտագործելով Ansible որպես օրինակ

Մենք կրճատել ենք UI-ի և openstack cli-ի տեսական մասը և կենտրոնացել ենք պրակտիկայի վրա:
Դիտարկենք երկու IaC մոտեցումներ՝ օգտագործելով նույն հավելվածը՝ ցույց տալով յուրաքանչյուր մոտեցման դրական և բացասական կողմերը: Արդյունքում ուսանողը կհասկանա, թե որ մոտեցումը որտեղ օգտագործել, և կկարողանա աշխատել ինչպես Terraform-ի, այնպես էլ Ansible-ի հետ:

Terraform-ի թեմայում մենք գործնականում կանդրադառնանք թիմային աշխատանքին և տվյալների բազայում պահելու վիճակին: Մոդուլների հետ աշխատելիս ուսանողն ինքը կգրի և կկազմաձևի մոդուլը, կսովորի աշխատել դրա հետ՝ նորից օգտագործել, տարբերակել: Ավելացնենք աշխատանքը հյուպատոսի հետ, ցույց տանք, թե որ դեպքերում է դա անհրաժեշտ և ինչպես ճիշտ օգտագործել։

Թեմա #6. Ենթակառուցվածքի փորձարկում

  • Եկեք հասկանանք, թե ինչու նրանք թեստեր չեն գրում:
  • Ի՞նչ թեստեր կան IaC-ում:
  • Ստատիկ անալիզատորներ, իսկապե՞ս դրանք այդքան անօգուտ են:
  • IaC-ի միավորային փորձարկում՝ օգտագործելով ansible + մոլեկուլը որպես օրինակ
  • Փորձարկումը որպես ci
  • Ստերոիդների թեստեր կամ ինչպես չսպասել 5 ժամ, մինչև IaC թեստերն ավարտվեն

Մենք կրճատել ենք տեսական մասը, ավելի քիչ պատմություններ Vagrant/Molecule-ի մասին, ավելի շատ պրակտիկա և ուղղակի թեստավորում՝ կենտրոնանալով լինտերների և դրանց հետ աշխատելու վրա: Նայելով դրան CI-ի տեսանկյունից
ինչպես արագացնել թեստը: Գործնականում կլինեն.

  • ինքնուրույն գրված լինտեր, որը ստուգում է հյուրընկալողի համար պարտադիր փոփոխականների առկայությունը՝ կախված դերից.
  • Մենք ավելացնում ենք CI թեստավորման միայն այն դերերը, որոնք փոխվել են, ինչը կարող է զգալիորեն նվազեցնել թեստի կատարման ժամանակը.
  • ավելացնելով սցենարի թեստավորում: Մենք տեղադրում ենք ամբողջ հավելվածը որպես ինտեգրման թեստ:

Թեմա #7. Ենթակառուցվածքների մոնիտորինգ Պրոմեթևսի հետ

  • Ինչպես կառուցել առողջ մոնիտորինգի համակարգ
  • Մոնիտորինգը որպես գործիք վերլուծության, զարգացման արդյունավետության և կոդի կայունության համար, նույնիսկ մինչև վաճառքը
  • Prometheus + alertmanager + grafana կարգավորումը
  • Անցում ռեսուրսների մոնիտորինգից դեպի հավելվածների մոնիտորինգ

Մենք շատ կխոսենք միկրոծառայությունների մոնիտորինգի մասին՝ հարցումների ids, api մոնիտորինգի գործիք: Կլինեն բազմաթիվ լավագույն փորձեր և շատ անկախ աշխատանք:

Գրենք մեր սեփական արտահանողը։ Մենք կստեղծենք ոչ միայն արտադրական ենթակառուցվածքների և հավելվածների, այլ նաև հավաքների մոնիտորինգ Gitlab-ում: Դիտարկենք անհաջող թեստերի վիճակագրությունը: Տեսնենք գործնականում, թե ինչպիսին կլինի մոնիտորինգն առանց healthCheck-ի և դրա հետ միասին։

Թեմա թիվ 8. Հայտի գրանցում ELK-ով

  • Elastic-ի և դրա գործիքների ակնարկ
  • ELK/Elastic Stack/x-pack - ինչն է և ո՞րն է տարբերությունը:
  • Ինչ խնդիրներ կարող են լուծվել ElasticSearch-ի միջոցով (որոնում, պահեստավորում, մասշտաբավորման առանձնահատկություններ, կազմաձևման ճկունություն)
  • Ենթակառուցվածքի մոնիտորինգ (x-pack)
  • Բեռնարկղերի և կիրառական տեղեկամատյաններ (x-pack)
  • Մուտքագրում, օգտագործելով մեր հավելվածը որպես օրինակ
  • Կիբանայի հետ աշխատելու պրակտիկա
  • Բացեք Distro-ն Elasticsearch-ի համար Amazon-ից

Թեման ամբողջությամբ վերափոխված է, այն վարում է Էդուարդ Մեդվեդևը, շատերը նրան տեսել են DevOps-ի և SRE-ի վեբինարում։ Նա կպատմի և կցուցադրի EFK-ի հետ աշխատելու լավագույն փորձը՝ օգտագործելով կրթական հավելվածի օրինակը: Կիբանայի հետ պրակտիկա կլինի.

Թեմա #9. Ենթակառուցվածքի ավտոմատացում ChatOps-ի միջոցով

  • DevOps և ChatOps
  • ChatOps. ուժեղ կողմերը
  • Թուլություն և այլընտրանքներ
  • Բոտեր ChatOps-ի համար
  • Hubot և այլընտրանքներ
  • Безопасность
  • Փորձարկում
  • Լավագույն և վատագույն փորձը

ChatOps-ն ավելացրել է նույնականացման պրակտիկա՝ իրավունքների տարանջատմամբ, մեկ այլ օգտատիրոջ գործողությունների հաստատում, Slack-ի այլընտրանքի տեսություն և պրակտիկա՝ Mattermost-ի տեսքով, միավորի տեսություն և բոտի ինտեգրման թեստեր։

DevOps slurm-ը սկսվում է հունվարի 30-ին: Գինը՝ 30.
Նրանց համար, ովքեր ավարտել են կարդալը, կա 15% զեղչ DevOps դասընթացի վրա՝ օգտագործելով habrapost-ի գովազդային կոդը:

գրանցում այստեղ

Ես ուրախ կլինեմ տեսնել ձեզ Slurms-ում:

Source: www.habr.com

Добавить комментарий