Kas ir DevOps metodoloģija un kam tā ir vajadzīga

Noskaidrosim, kāda ir metodikas būtība un kam tā var būt noderīga.

Parunāsim arī par DevOps speciālistiem: viņu uzdevumiem, algām un prasmēm.

Kas ir DevOps metodoloģija un kam tā ir vajadzīga
foto Mets MÅ«rs /Flickr/CC BY-SA

Kas ir DevOps

DevOps ir programmatÅ«ras izstrādes metodoloÄ£ija, kuras uzdevums ir izveidot mijiedarbÄ«bu starp programmētājiem un sistēmu administratoriem uzņēmumā. Ja IT speciālisti no dažādām nodaļām nesaprot viens otra uzdevumus, aizkavējas jaunu aplikāciju un to atjauninājumu izlaiÅ”ana.

DevOps izveido "nevainojamu" izstrādes ciklu, tādējādi palÄ«dzot paātrināt programmatÅ«ras produkta izlaiÅ”anu. Paātrinājums tiek panākts, ievieÅ”ot automatizācijas sistēmas. Turklāt programmētāji sāk piedalÄ«ties serveru iestatÄ«Å”anā un kļūdu atraÅ”anā, piemēram, viņi var rakstÄ«t automatizētus testus.

Tas uzlabo sadarbību starp departamentiem. Darbinieki sāk labāk saprast, kādus posmus programmatūras produkts iziet, pirms tas nonāk lietotāja rokās.

Kad izstrādātājs saprot, ar ko saskaras administrators, uzstādot serveri, viņŔ mēģinās izlÄ«dzināt iespējamos koda ā€œasos stÅ«rusā€. Tas samazina kļūdu skaitu, izvietojot lietojumprogrammu - saskaņā ar statistiku, tas samazinās apmēram piecas reizes.

Kam vajag un kam nevajag metodiku

Daudzi IT eksperti uzskataka DevOps gÅ«s labumu jebkurai organizācijai, kas izstrādā programmatÅ«ru. Tā ir arÄ« tad, ja uzņēmums ir vienkārÅ”s IT pakalpojumu patērētājs un pats neizstrādā lietojumprogrammas. Å ajā gadÄ«jumā DevOps kultÅ«ras ievieÅ”ana palÄ«dzēs jums koncentrēties uz jauninājumiem.

Izņēmums kontu startup, bet Å”eit viss ir atkarÄ«gs no projekta mēroga. Ja jÅ«su mērÄ·is ir palaist minimālu dzÄ«votspējÄ«gu produktu (MVP), lai pārbaudÄ«tu jaunu ideju, varat iztikt bez DevOps. Piemēram, Groupon dibinātājs sāka strādāt pie pakalpojuma manuāli izlikts visi piedāvājumi vietnē un apkopotie pasÅ«tÄ«jumi. ViņŔ neizmantoja nekādus automatizācijas rÄ«kus.

Ir jēga ieviest automatizācijas metodiku un rÄ«kus tikai tad, kad lietojumprogramma sāk iegÅ«t popularitāti. Tas palÄ«dzēs racionalizēt biznesa procesus un paātrināt atjauninājumu izlaiÅ”anu.

Kā ieviest DevOps

Tālāk ir sniegti daži ieteikumi pārejai uz jaunu metodiku.

Identificēt problēmas biznesa procesos. Pirms metodoloÄ£ijas ievieÅ”anas izceliet organizācijas mērÄ·us un problēmas. No tiem bÅ«s atkarÄ«ga stratēģija pārejai uz DevOps. Lai to izdarÄ«tu, izveidojiet jautājumu sarakstu, piemēram:

  • Kas aizņem visvairāk laika, atjauninot programmatÅ«ru?
  • Vai ir iespējams Å”o procesu automatizēt?
  • Vai organizācijas struktÅ«ra to ietekmē?

Uzziniet vairāk par problēmu identificÄ“Å”anu organizācijā var lasÄ«t grāmatās Ā«Projekts "Fēnikss""Un"DevOps rokasgrāmataĀ» no metodikas autoriem.

Mainiet kultÅ«ru uzņēmumā. Ir svarÄ«gi pārliecināt visus darbiniekus mainÄ«t ierastos darba veidus un paplaÅ”ināt savu kompetenču loku. Piemēram, Facebook visi programmētāji atbildi visam lietojumprogrammas dzÄ«ves ciklam: no kodÄ“Å”anas lÄ«dz ievieÅ”anai. Tāpat Facebook nav atseviŔķas testÄ“Å”anas nodaļas ā€“ testus raksta paÅ”i izstrādātāji.

Sāciet ar mazumiņu. Izvēlieties procesu, kas prasa visvairāk laika un pūļu, izlaižot atjauninājumus, un automatizējiet to. Å is varbÅ«t testÄ“Å”anas vai lietojumprogrammas izvietoÅ”anas process. Eksperti ieteikt Pirmais solis ir ieviest izplatÄ«tus versiju kontroles rÄ«kus. Tie atvieglo avotu pārvaldÄ«bu. Starp Ŕādiem risinājumiem slavenākie ir Git, Mercurial, Subversion (SVN) un CVS.

Ir arÄ« vērts pievērst uzmanÄ«bu nepārtrauktas integrācijas sistēmām, kas ir atbildÄ«gas par gala produkta montāžu un testÄ“Å”anu. Šādu rÄ«ku piemēri: Jenkins, TeamCity un Bamboo.

Novērtējiet uzlabojumus. Izstrādājiet ieviesto risinājumu veiktspējas rādÄ«tājus un izveidojiet kontrolsarakstu. Metrika var ietvert izlaiÅ”anas biežumu, laiku, kas pavadÄ«ts, strādājot pie programmatÅ«ras funkcijām, un kļūdu skaitu kodā. Pārrunājiet rezultātus ne tikai ar vadÄ«tājiem, bet arÄ« ar pārējo projektā iesaistÄ«to komandu. Jautājiet, kādi instrumenti trÅ«kst. Ņemiet vērā Å”os pieprasÄ«jumus, turpinot optimizēt procesus.

DevOps kritika

Lai gan metodoloÄ£ija palÄ«dz organizācijas var pieņemt ātrākus lēmumus par lietojumprogrammu izstrādi, izcirtņi kļūdu skaitu programmatÅ«rā un mudina darbiniekus apgÅ«t jaunas lietas, tai ir arÄ« kritiÄ·i.

Ir viedokliska programmētājiem nevajadzētu saprast sistēmas administratoru darba detaļas. DevOps it kā noved pie tā, ka attÄ«stÄ«bas vai administrÄ“Å”anas speciālistu vietā uzņēmumā strādā cilvēki, kas visu saprot, bet virspusēji.

Tiek arÄ« uzskatÄ«ts, ka DevOps nedarbojas ar sliktu vadÄ«bu. Ja izstrādes un adminu komandām nav kopÄ«gu mērÄ·u, tad vainÄ«gi ir vadÄ«tāji, kas nav organizējuÅ”i komunikāciju starp komandām. Lai atrisinātu Å”o problēmu, ir nepiecieÅ”ama nevis jauna metodika, bet gan vadÄ«tāju novērtÄ“Å”anas sistēma, kas balstÄ«ta uz padotajiem sniegtajām atsauksmēm. To var izlasÄ«t Å”eit, kādi jautājumi jāiekļauj darbinieku aptaujas veidlapās.

Kas ir DevOps metodoloģija un kam tā ir vajadzīga
foto Eds IvanuŔkins /Flickr/CC BY-SA

Kas ir DevOps inženieris

DevOps inženieris ievieÅ” DevOps metodoloÄ£iju. Tas sinhronizē visus programmatÅ«ras produkta izveides posmus: no koda rakstÄ«Å”anas lÄ«dz lietojumprogrammas testÄ“Å”anai un izlaiÅ”anai. Šāds speciālists kontrolē izstrādes un administrācijas nodaļas, kā arÄ« automatizē to uzdevumu izpildi, ievieÅ”ot dažādus programmatÅ«ras rÄ«kus.

DevOps inženiera viltÄ«ba ir tāda, ka viņŔ apvieno daudzas profesijas: administratoru, izstrādātāju, testētāju un vadÄ«tāju.

Džo Sančess, DevOps evaņģēlists VMware, virtualizācijas programmatÅ«ras uzņēmumā, izcelt vairākas prasmes, kurām jābÅ«t DevOps inženierim. Papildus acÄ«mredzamajām zināŔanām par DevOps metodoloÄ£iju Å”ai personai ir jābÅ«t pieredzei Windows un Linux operētājsistēmu administrÄ“Å”anā un pieredzei darbā ar tādiem automatizācijas rÄ«kiem kā Å efpavārsmarioneteIespējams. Viņam arÄ« jāspēj rakstÄ«t skriptus un kodu pāris valodās un saprast tÄ«kla tehnoloÄ£ijas.

DevOps inženieris ir atbildÄ«gs par jebkuru uzdevumu automatizāciju, kas saistÄ«ti ar lietojumprogrammu konfigurÄ“Å”anu un izvietoÅ”anu. Uz viņa pleciem gulstas arÄ« programmatÅ«ras uzraudzÄ«ba. Å o problēmu risināŔanai viņŔ izmanto dažādas konfigurācijas pārvaldÄ«bas sistēmas, virtualizācijas risinājumus un mākoņa rÄ«kus resursu balansÄ“Å”anai.

Kas pieņem darbā

DevOps inženieri var gÅ«t labumu jebkurai organizācijai, kas izstrādā lietojumprogrammas vai pārvalda lielu skaitu serveru. DevOps inženieri pieņem darbā IT giganti, piemēram, Amazon, Adobe un Facebook. Viņi strādā arÄ« Netflix, Walmart un Etsy.

Neņem darbā DevOps inženieri ir tikai jaunizveidotie uzņēmumi. Viņu uzdevums ir izlaist minimālu dzÄ«votspējÄ«gu produktu, lai pārbaudÄ«tu jaunu ideju. Vairumā gadÄ«jumu jaunizveidotie uzņēmumi var iztikt bez DevOps.

Cik maksā

DevOps inženieri nopelnÄ«t vairāk nekā jebkurÅ” cits Å”ajā nozarē. Šādu speciālistu vidējie ienākumi visā pasaulē svārstās no 100 lÄ«dz 125 tÅ«kstoÅ”iem dolāru gadā.

ASV viņi gÅ«t 90 tÅ«kstoÅ”i dolāru gadā (500 tÅ«kstoÅ”i rubļu mēnesÄ«). Kanādā viņi tiek apmaksāti 122 tÅ«kstoÅ”i dolāru gadā (670 tÅ«kstoÅ”i rubļu mēnesÄ«), bet Apvienotajā Karalistē - 67,5 tÅ«kstoÅ”i sterliņu mārciņu gadā (490 tÅ«kstoÅ”i rubļu mēnesÄ«).

Kas attiecas uz Krieviju, Maskavas uzņēmumiem gatavs maksāt DevOps speciālistiem no 100 lÄ«dz 200 tÅ«kstoÅ”iem rubļu mēnesÄ«. Sanktpēterburgā darba devēji ir nedaudz dāsnāki - piedāvā 160-360 tÅ«kstoÅ”us rubļu mēnesÄ«. ReÄ£ionos algas ir 100ā€“120 tÅ«kstoÅ”i rubļu mēnesÄ«.

Kā kļūt par DevOps speciālistu

DevOps ir salÄ«dzinoÅ”i jauns IT virziens, tāpēc DevOps inženieriem nav noteikts prasÄ«bu saraksts. Vakancēs starp prasÄ«bām Å”im amatam var atrast gan Debian un CentOS administrÄ“Å”anas prasmes, gan spēju strādāt ar diskdziņiem. RAID masÄ«vi.

Pamatojoties uz to, mēs varam secināt, ka, pirmkārt, DevOps inženierim ir jābūt ar labu tehnisko perspektīvu. Šādai personai ir svarīgi pastāvīgi apgūt jaunus rīkus un tehnoloģijas.

VienkārŔākais veids, kā kļūt par DevOps inženieri, bÅ«tu sistēmas administrators vai izstrādātājs. Viņiem jau ir vairākas prasmes, kuras tikai jāattÄ«sta. Galvenais uzdevums ir pilnveidot minimālo zināŔanu kopumu DevOps, saprast, kā strādāt ar automatizācijas rÄ«kiem un aizpildÄ«t nepilnÄ«bas administrÄ“Å”anas, programmÄ“Å”anas un virtualizācijas prasmēs.

Lai saprastu, kur vēl trÅ«kst zināŔanu, varat izmantot mini Wikipedia vietnē GitHub vai mentālā karte. Hacker News iedzÄ«votāji arÄ« Ieteikt LasÄ«t grāmatas "Projekts "Fēnikss""Un"DevOps rokasgrāmata"(kuru mēs minējām iepriekÅ”) un "DevOps filozofija. IT vadÄ«bas mākslaĀ» zem O'Reilly Media zÄ«moga.

Varat arÄ« abonēt Devops iknedēļas biļetens, lasiet aktuālus rakstus portāls DZone un sāciet sazināties ar DevOps inženieriem Viegla tērzÄ“Å”ana. Ir arÄ« vērts apskatÄ«t bezmaksas kursus Udacity vietnē vai EDX.

Ziņas no mūsu emuāra:



Avots: www.habr.com

Pievieno komentāru