Kā kļūt par DevOps inženieri seÅ”os mēneÅ”os vai pat ātrāk. 1. daļa. Ievads

Š¦ŠµŠ»ŠµŠ²Š°Ń Š°ŃƒŠ“ŠøтŠ¾Ń€Šøя

Vai esat izstrādātājs, kurÅ” vēlas virzÄ«t savu karjeru uz progresÄ«vāku DevOps modeli? Vai esat klasisks Ops inženieris un vēlaties iegÅ«t priekÅ”statu par to, ko nozÄ«mē DevOps? Vai arÄ« jÅ«s neesat ne viens, ne otrs un pēc tam, kad esat pavadÄ«jis kādu laiku strādājot IT jomā, vēlaties mainÄ«t karjeru un nezināt, ar ko sākt?
Ja jā, tad lasiet tālāk, lai uzzinātu, kā seÅ”os mēneÅ”os varat kļūt par vidēja lÄ«meņa DevOps inženieri! Visbeidzot, ja esat bijis iesaistÄ«ts DevOps daudzus gadus, jÅ«s joprojām iegÅ«sit daudz no Ŕīs rakstu sērijas, lai uzzinātu, kur paÅ”laik atrodas integrācijas un automatizācijas nozare un kur tā virzās.

Kā kļūt par DevOps inženieri seÅ”os mēneÅ”os vai pat ātrāk. 1. daļa. Ievads

Kas tas vispār ir?

Pirmkārt, kas ir DevOps? JÅ«s varat Google definÄ«cijas un brist cauri visiem vārdiem, taču ziniet, ka lielākā daļa definÄ«ciju ir tikai vārdu juceklis, kas ietÄ«ts racionalizētā formā. Tāpēc es jums sniegÅ”u visu Å”o definÄ«ciju kopsavilkumu: DevOps ir programmatÅ«ras piegādes metode, kurā galvassāpes un atbildÄ«ba tiek dalÄ«ta starp visiem iesaistÄ«tajiem. Tas ir viss.

Labi, bet ko nozÄ«mē Å”is saÄ«sinājums? Tas nozÄ«mē, ka tradicionāli izstrādātājus (personas, kas veido programmatÅ«ru) motivē veikt savu darbu stimuli, kas bÅ«tiski atŔķiras no operāciju (personas, kas pārvalda programmatÅ«ru) stimuliem. Piemēram, kā izstrādātājs es vēlos pēc iespējas ātrāk izveidot pēc iespējas vairāk jaunu funkciju. Galu galā tas ir mans darbs un tas ir tas, ko klienti pieprasa! Tomēr, ja esmu Ops cilvēks, man ir nepiecieÅ”ams pēc iespējas mazāk jaunu funkciju, jo katra jauna funkcija ir izmaiņas, un jebkuras izmaiņas ir saistÄ«tas ar problēmām. Å Ä«s stimulu neatbilstÄ«bas rezultātā radās DevOps.

DevOps mēģina apvienot izstrādi un operācijas (integrāciju un automatizāciju) vienā grupā. Ideja ir tāda, ka viena grupa tagad sadalÄ«s gan sāpes, gan atbildÄ«bu (un iespējamo atlÄ«dzÄ«bu) par klientiem paredzētas programmatÅ«ras izveidi, izvietoÅ”anu un ieņēmumu gÅ«Å”anu.

PÅ«risti jums pateiks, ka nav tādas lietas kā ā€œDevOps inženierisā€. Viņi jums pateiks: ā€œDevOps ir kultÅ«ra, nevis loma. Protams, no tehniskā viedokļa viņiem ir taisnÄ«ba, bet kā ir Bieži vien termins ir izgājis no rokām. Papildus tā sākotnējai nozÄ«mei DevOps inženieris ir kaut kas lÄ«dzÄ«gs "sistēmu inženierim 2.0". Citiem vārdiem sakot, viņŔ ir persona, kas izprot programmatÅ«ras izstrādes dzÄ«ves ciklu un rada programmatÅ«ras izstrādes rÄ«kus un procesus. lai atrisinātu klasiskās darbÄ«bas problēmas.

Kā kļūt par DevOps inženieri seÅ”os mēneÅ”os vai pat ātrāk. 1. daļa. Ievads

DevOps galu galā nozÄ«mē izveidot digitālus cauruļvadus, kas ņem kodu no izstrādātāja klēpjdatora un pārvērÅ” to ieņēmumos no galaprodukta izmantoÅ”anas. Tas ir viss. Ņemiet vērā, ka DevOps karjeras izvēli diezgan augstu kompensē finansiālas priekÅ”rocÄ«bas, un gandrÄ«z katrs uzņēmums ā€œveic DevOpsā€ vai apgalvo, ka tāds ir. NeatkarÄ«gi no Å”o uzņēmumu atraÅ”anās vietas, DevOps darba iespējas ir diezgan augstas un piedāvā "jauku" un jēgpilnu darbu daudzus gadus uz priekÅ”u.

Tomēr esiet piesardzÄ«gs attiecÄ«bā uz uzņēmumiem, kas pieņem darbā ā€œDevOps komanduā€ vai ā€œDevOps nodaļuā€. Stingri sakot, Ŕādām lietām nevajadzētu pastāvēt, jo galu galā DevOps joprojām ir programmatÅ«ras piegādes kultÅ«ra un veids, nevis jaunas komandas komplektÄ“Å”ana vai nodaļas izveide. izdomāts vārds.

NoliegŔana atbildības

Tagad uz brÄ«di noliksim malā Kool-Aid glāzi un padomāsim par tālāko. Vai esat dzirdējuÅ”i veco sakāmvārdu "nav jaunāko DevOps inženieru?" Ja nē, tad ziniet, ka tas ir populārs paņēmiens Reddit un StackOverflow. Bet ko tas nozÄ«mē?

VienkārÅ”i sakot, Ŕī frāze nozÄ«mē, ka ir nepiecieÅ”ama daudzu gadu pieredze apvienojumā ar labu izpratni par rÄ«kiem, lai galu galā kļūtu par patiesi efektÄ«vu vecāko DevOps praktizētāju. Un diemžēl nav Ä«sceļa uz mērÄ·a sasniegÅ”anu. Tātad Å”is nav mēģinājums izspēlēt sistēmu ā€” es domāju, ka patiesÄ«bā nav iespējams izlikties par vecāko DevOps inženieri ar dažu mēneÅ”u pieredzi Å”ajā nozarē. Lai iegÅ«tu stabilu izpratni par strauji mainÄ«gajiem rÄ«kiem un metodoloÄ£ijām, ir nepiecieÅ”ama gadu pieredze, un to nevar apiet. Tomēr ir gandrÄ«z konsekventa (moderna, ja vēlaties) rÄ«ku un koncepciju izvēlne, ko izmanto lielākā daļa uzņēmumu, un par to mēs arÄ« runāsim.

Atkal, rÄ«ki atŔķiras no prasmēm, tāpēc, apgÅ«stot rÄ«kus, pārliecinieties, ka nepametat novārtā savas prasmes (aptaujas, tÄ«klu veidoÅ”ana, rakstiska saziņa, problēmu novērÅ”ana utt.). Pats galvenais, neaizmirstiet par to, ko mēs vēlamies atrast ā€” veidu, kā izveidot pilnÄ«bā automatizētu digitālo konveijeru, kas ņem idejas un pārvērÅ” tās ieņēmumus Ä£enerējoŔās koda daļās. Å is ir vienÄ«gais vissvarÄ«gākais secinājums no visa Ŕī raksta!

Pietiek pļāpāt, kad es varu sākt?

Zemāk ir DevOps fundamentālo zināŔanu ceļvedis. ApgÅ«stot visu, kas tur attēlots, varat droÅ”i un godÄ«gi saukt sevi par DevOps inženieri! Vai arÄ« mākoņa inženieris, ja jums nepatÄ«k nosaukums "DevOps".

Kā kļūt par DevOps inženieri seÅ”os mēneÅ”os vai pat ātrāk. 1. daļa. Ievads

Å Ä« karte atspoguļo manu (un, iespējams, vairumu cilvēku, kas strādā Å”ajā telpā) priekÅ”statu par to, kas bÅ«tu jāzina kompetentam DevOps inženierim. Tomēr tas ir tikai viedoklis, un, protams, bÅ«s arÄ« tādi, kas tam nepiekritÄ«s. Tas ir labi! Mēs Å”eit netiecamies uz pilnÄ«bu, mēs tiecamies pēc stingra pamata, uz kura mēs faktiski varam bÅ«vēt.

Å is ceļŔ jums jāiet pakāpeniski, slāni pa slānim. Sāksim (un turpināsim!) ar pamatiem, vispirms apgÅ«stot elementus zilā krāsā ā€” Linux, Python un AWS. Pēc tam, ja laiks vai darba tirgus pieprasÄ«jums atļauj, veiciet purpursarkanās lietas ā€” Golang un Google Cloud.

GodÄ«gi sakot, galvenais augŔējais slānis ir kaut kas, kas jums bÅ«s jāmācās mūžīgi. OS Linux ir ļoti sarežģīta, un tās apguve prasa vairākus gadus. Python nepiecieÅ”ama pastāvÄ«ga prakse, lai paliktu aktuāla. AWS attÄ«stās tik ātri, ka tas, ko jÅ«s zināt Å”odien, bÅ«s daļa no jÅ«su vispārējā zināŔanu portfeļa tikai pēc gada. Kad esat apguvis pamatus, pārejiet uz faktisko prasmju kopumu. LÅ«dzu, ņemiet vērā, ka kopā ir 6 zilas kolonnas (Konfigurācija, Versija, Iepakojums, IzvietoÅ”ana, PalaiÅ”ana, UzraudzÄ«ba), viena katrā pētÄ«juma mēnesÄ«.

Kā kļūt par DevOps inženieri seÅ”os mēneÅ”os vai pat ātrāk. 1. daļa. Ievads

JÅ«s, protams, pamanÄ«jāt, ka mÅ«su seÅ”u mēneÅ”u laikā nav noticis svarÄ«gs posms - testÄ“Å”ana. Es to apzināti neiekļāvu ceļvedÄ«, jo moduļa rakstÄ«Å”ana, integrācijas un akcepttesti nav viegli un tradicionāli gulstas uz izstrādātāju pleciem. Un ā€œtestÄ“Å”anasā€ posma izlaiÅ”ana ir izskaidrojama ar to, ka Ŕī ceļveža mērÄ·is ir pēc iespējas ātrāk apgÅ«t pamatprasmes un rÄ«kus. Pēc autora domām, testÄ“Å”anas pieredzes trÅ«kums ir tikai neliels Ŕķērslis pareizai DevOps lietoÅ”anai.

Tāpat atcerieties, ka mēs Å”eit neapgÅ«stam veselu virkni nesaistÄ«tu tehnisko pļāpāŔanu, bet gan izpratni par rÄ«kiem, kas kopā veido skaidru stāstu. Å is stāsts ir par pilnÄ«gu procesa automatizāciju ā€” digitālo montāžas lÄ«niju, kas pārvieto bitus kā montāžas lÄ«niju. JÅ«s nevēlaties apgÅ«t virkni rÄ«ku un turpināt apstāties! DevOps rÄ«ki mainās ātri, bet koncepcijas mainās daudz retāk. Tāpēc jums jācenÅ”as izmantot rÄ«kus kā mācÄ«Å”anas starpniekus augstāka lÄ«meņa jēdzieniem.

Labi, iedziļināsimies mazliet dziļāk!

Fundamentālās zināŔanas

Zem augŔējā posma ar uzrakstu Foundation, varat redzēt prasmes, kas jāapgÅ«st katram DevOps inženierim. Å Ä«s prasmes ir pārliecināta par trÄ«s nozares pÄ«lāriem, kas ir: operētājsistēma, programmÄ“Å”anas valoda un publiskais mākonis. Å Ä«s lietas nevar ātri iemācÄ«ties un virzÄ«ties tālāk. Å Ä«s prasmes ir nepārtraukti jāpilnveido un jāapgÅ«st, lai bÅ«tu nozares priekÅ”galā un atbilstu profesionālajai videi ap sevi. Iziesim tiem cauri pa vienam.

Linux ir vieta, kur viss darbojas. Vai jÅ«s varat bÅ«t lielisks DevOps praktiÄ·is, vienlaikus pilnÄ«bā paliekot Microsoft ekosistēmā? Protams, tu vari! Nav likuma, kas nosaka, ka jums jāizmanto tikai Linux. Tomēr paturiet prātā, ka, neskatoties uz to, ka visas Linux lietas var izdarÄ«t operētājsistēmā Windows, tur tas notiek daudz sāpÄ«gāk un ar mazāku funkcionalitāti. Å obrÄ«d var droÅ”i pieņemt, ka, nezinot Linux, nav iespējams kļūt par Ä«stu DevOps profesionāli, tāpēc Linux ir kaut kas, kas jums jāmācās un jāapgÅ«st.

GodÄ«gi sakot, labākais veids, kā to izdarÄ«t, ir vienkārÅ”i instalēt Linux (Fedora vai Ubuntu) mājās un izmantot to pēc iespējas vairāk. Protams, tu daudz ko salauzÄ«si, iestrēgsi darba procesos, bÅ«s viss jālabo, bet Linux iemācÄ«sies!

Kā kļūt par DevOps inženieri seÅ”os mēneÅ”os vai pat ātrāk. 1. daļa. Ievads

Starp citu, RedHat varianti ir biežāk sastopami Ziemeļamerikā, tāpēc ir jēga sākt ar Fedora vai CentOS. Ja domājat, vai jums vajadzētu iegādāties KDE vai Gnome izdevumu, izvēlieties KDE. To izmanto pats Linuss Torvalds.

Python mÅ«sdienās ir dominējoŔā aizmugurvaloda. To ir viegli sākt, un tas tiek plaÅ”i izmantots. Python ir ļoti izplatÄ«ts mākslÄ«gā intelekta un maŔīnmācÄ«Å”anās jomā, tāpēc, ja kādreiz vēlēsities pārcelties uz citu karstu jomu, bÅ«siet pilnÄ«bā gatavs.

Kā kļūt par DevOps inženieri seÅ”os mēneÅ”os vai pat ātrāk. 1. daļa. Ievads

Amazon Web Services: Atkal nav iespējams kļūt par pieredzējuÅ”u DevOps profesionāli, ja nav skaidras izpratnes par to, kā darbojas publiskais mākonis. Un, ja vēlaties uzzināt vairāk par to, skatiet Amazon Web Services. Tas ir vadoÅ”ais spēlētājs Å”ajā pakalpojumu jomā un piedāvā visbagātÄ«gāko darba rÄ«ku komplektu.

Vai ir iespējams sākt ar Google Cloud vai Azure? Protams tu vari! Taču, atceroties pēdējo finanÅ”u krÄ«zi, jāatzÄ«mē, ka AWS ir droŔākais variants, vismaz 2018. gadā, jo tas ļauj bez maksas reÄ£istrēt kontu un sākt pētÄ«t mākoņpakalpojumu iespējas. Turklāt AWS konsole nodroÅ”ina lietotājam vienkārÅ”u un skaidru izvēlni, no kuras izvēlēties. Labā ziņa ir tā, ka, lai to izdarÄ«tu, jums nav jāzina visas Amazon tehnoloÄ£ijas.

Kā kļūt par DevOps inženieri seÅ”os mēneÅ”os vai pat ātrāk. 1. daļa. Ievads

Sāciet ar sekojoÅ”o: VPC, EC2, IAM, S3, CloudWatch, ELB (elastÄ«gā slodzes lÄ«dzsvaroÅ”ana zem EC2 jumta) un droŔības grupa. Ar Ŕīm lietām pietiek, lai jÅ«s sāktu, un katrs moderns, mākoņdatoÅ”anas uzņēmums Å”os rÄ«kus izmanto diezgan aktÄ«vi. AWS apmācÄ«bas vietne ir laba vieta, kur sākt.

Es iesaku jums katru dienu veltÄ«t 20ā€“30 minÅ«tes, mācoties un praktizējot Python valodu, Linux operētājsistēmu un AWS mākoņpakalpojumu papildus citām lietām, kas jums jāapgÅ«st. Kopumā es uzskatu, ka pietiek ar stundu dienā piecas reizes nedēļā, lai izprastu DevOps nozari 6 mēneÅ”os vai mazāk. Kopumā ir 6 galvenās sastāvdaļas, no kurām katra atbilst apmācÄ«bas mēnesim. Tas ir viss, kas jums nepiecieÅ”ams, lai iegÅ«tu pamatzināŔanas.
Nākamajos rakstos mēs apskatÄ«sim nākamo sarežģītÄ«bas lÄ«meni: kā pilnÄ«bā automatizēt programmatÅ«ras konfigurāciju, versiju veidoÅ”anu, iepakoÅ”anu, izvietoÅ”anu, darbÄ«bu un uzraudzÄ«bu.

Turpinājums jau pavisam drīz...

Dažas reklāmas šŸ™‚

Paldies, ka palikāt kopā ar mums. Vai jums patīk mūsu raksti? Vai vēlaties redzēt interesantāku saturu? Atbalsti mūs, pasūtot vai iesakot draugiem, mākoņa VPS izstrādātājiem no 4.99 USD, unikāls sākuma līmeņa serveru analogs, ko mēs jums izgudrojām: Visa patiesība par VPS (KVM) E5-2697 v3 (6 kodoli) 10GB DDR4 480GB SSD 1Gbps no 19$ vai kā koplietot serveri? (pieejams ar RAID1 un RAID10, līdz 24 kodoliem un līdz 40 GB DDR4).

Dell R730xd 2x lētāk Equinix Tier IV datu centrā Amsterdamā? Tikai Å”eit 2x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV no 199$ NÄ«derlandē! Dell R420 ā€” 2x E5-2430 2.2 GHz 6C 128 GB DDR3 2x960 GB SSD 1 Gbps 100 TB ā€” no 99 USD! LasÄ«t par Kā izveidot infrastruktÅ«ras uzņēmumu klase ar Dell R730xd E5-2650 v4 serveru izmantoÅ”anu 9000 eiro par santÄ«mu?

Avots: www.habr.com

Pievieno komentāru