Ես սիրում եմ մեկշաբաթյա նախագիծ և ինձ վախեցնում են մեկ տարվա նախագծերը: Agile-ում ինձ շատ դուր եկավ MVP-ի և ավելացման հայեցակարգը, սա միայն իմ բանն է՝ պատրաստել գործունակ կտոր, իրականացնել այն և առաջ գնալ:
Միևնույն ժամանակ, DevOps-ի վերափոխումն այն ձևով, որով այն քննարկվում է գրքերում և կոնֆերանսներում, ընդամենը մեկ տարվա նախագիծ է: Կամ տարիների ընթացքում:
Մենք կառուցել ենք մեր DevOps դասընթացը «MVP DevOps-ը մեկ սպրինտում» և «հաճախումների պատրաստակամություն» պարադիգմով: Իսկ եթե մարդկային առումով, ապա «որպեսզի մասնակիցը վերադառնալուն պես կարողանա անմիջապես ինչ-որ բան իրագործել տանը և դրանից օգուտ քաղել»։
MVP DevOps. Դասընթացը պարունակում է գործիքներ հիմնական DevOps գործընթացների համար: Մենք մեր առաջ խնդիր չենք դրել վերանայել և համեմատել բոլոր CI/CD համակարգերը կամ բացահայտել Ենթակառուցվածքի խորքերը՝ որպես օրենսգրքի մոտեցում: Մենք տրամադրում ենք մեկ հստակ փաթեթ՝ Gitlab CI/CD, Ansible, Terraform and Packer, Molecule, Prometheus, EFK: Դուք կարող եք գալ դասընթացներից, հավաքել ենթակառուցվածքը փորձնական ծրագրի համար ուսումնական նյութերից և աշխատել դրանում:
Պատրաստակամություն ավելացումների համար. մենք յուրաքանչյուր տարրի տրամադրում ենք բազմաթիվ պրակտիկա և օրինակներ: Դուք կարող եք վերցնել մեկ գործիք և սկսել այն իրականացնել՝ օգտագործելով ուսումնական գծագրերը: Օրինակ՝ գրեք 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