Cum să devii inginer DevOps în șase luni sau chiar mai repede. Partea 1. Introducere

Publicul țintă

Ești un dezvoltator care vrea să își îndrepte cariera către un model DevOps mai avansat? Ești un inginer Ops clasic și ai vrea să înțelegi ce înseamnă DevOps? Sau poate nu ești nici una, nici alta și, după ce ai petrecut ceva timp lucrând în domeniul tehnologiilor IT, vrei să îți schimbi locul de muncă, fără să știi de unde să începi?
Dacă da, continuă să citești pentru a afla cum poți deveni inginer DevOps de nivel mediu în șase luni! În cele din urmă, dacă ai experiență în DevOps de mulți ani, cu siguranță vei învăța multe lucruri utile din acest ciclu de articole și vei descoperi unde se află în prezent industria integrării și automatizării, precum și direcțiile în care aceasta se dezvoltă.

Cum să devii inginer DevOps în șase luni sau chiar mai repede. Partea 1. Introducere

Ce este, de fapt?

În primul rând, ce este DevOps? Poți căuta definiții și să te agăți de toată această terminologie, dar trebuie să știi că majoritatea definițiilor sunt doar o amalgamare de cuvinte frumos împachetate. Așadar, îți voi oferi o sinteză a acestor definiții: DevOps este un mod de livrare a software-ului în care durerea și responsabilitatea sunt împărtășite între toți cei implicați. Asta e tot.

Bine, dar ce înseamnă de fapt această abreviere? Înseamnă că, în mod tradițional, dezvoltatorii (persoanele care creează software) au fost ghidați în munca lor de stimulente care diferă semnificativ de cele ale operațiunilor (persoanele care gestionează software-ul). De exemplu, ca dezvoltator, vreau să creez cât mai repede posibil cât mai multe funcționalități noi. În cele din urmă, aceasta este munca mea și exact asta cer clienții! Totuși, dacă sunt un om Ops, atunci îmi doresc cât mai puține funcționalități noi, deoarece fiecare funcționalitate nouă reprezintă o modificare, iar orice modificare poate cauza probleme. Ca urmare a acestui dezacord al stimulentelor a apărut DevOps.

DevOps încearcă să reunească dezvoltarea și operațiunile (integrarea și automatizarea) într-un singur grup. Ideea este că acum un singur grup va împărtăși atât durerea, cât și responsabilitatea (și, probabil, recompensa) pentru crearea, desfășurarea și generarea de venituri din software-ul orientat spre client.

Puristii vă vor spune că nu există o asemenea idee ca „inginer DevOps”. „DevOps este o cultură, nu un rol”, vă vor spune ei. Desigur, din punct de vedere tehnic au dreptate, dar, așa cum se întâmplă adesea, acest termen a depășit semnificația sa inițială. Așadar, inginerul DevOps este ceva de genul „inginer sistem 2.0”. Cu alte cuvinte, este cineva care înțelege ciclul de viață al dezvoltării software-ului și creează instrumente și procese pentru a rezolva problemele operaționale clasice.

Cum să devii inginer DevOps în șase luni sau chiar mai repede. Partea 1. Introducere

DevOps înseamnă, în esență, crearea unor canale digitale care preiau codul de pe laptopul dezvoltatorului și îl transformă în venit din utilizarea produsului finit, acesta este tot ceea ce contează. Observați că alegerea unei cariere în DevOps este destul de bine compensată financiar, aproape fiecare companie „practică DevOps” sau pretinde că face acest lucru. Indiferent de locul în care se află aceste companii, oportunitățile de angajare în calitate de DevOps sunt destul de mari și implică o ocupare „plăcută” și semnificativă pentru mulți ani înainte.

Dar fiți atenți la companiile care angajează o „echipă DevOps” sau un „departament DevOps”. Strict vorbind, astfel de lucruri nu ar trebui să existe, pentru că, până la urmă, DevOps este totuși o cultură și o modalitate de livrare a software-ului, nu completarea unei echipe noi sau înființarea unui departament cu un nume la modă.

Declinarea responsabilității

Și acum, haideți să lăsăm o clipă deoparte un pahar „Cool-Aid” și să ne gândim la următoarea chestiune. Ați auzit vechea zicală „nu există ingineri DevOps juniori”? Dacă nu, să știți că este un trop popular pe Reddit și StackOverflow. Dar ce înseamnă?

În termeni simpli, această frază înseamnă că este nevoie de mulți ani de experiență însoțită de o înțelegere solidă a instrumentelor pentru a deveni cu adevărat un practician eficient Senior DevOps. Și, din păcate, nu există un scurtcircuit pentru a ajunge la acest obiectiv. Așadar, nu este o încercare de a înșela sistemul — nu cred că este posibil să te pretinzi a fi senior DevOps având doar câteva luni de experiență în domeniu. Atingerea unei înțelegeri clare a instrumentelor și metodologiilor în continuă schimbare necesită experiență de lungă durată, și de asta nu poți scăpa. Totuși, există un meniu aproape convenit (la modă, dacă vrei) de instrumente și concepte folosite de majoritatea companiilor, iar despre asta vom discuta.

Din nou, instrumentele sunt diferite de abilități, așa că, în timp ce înveți instrumentele, asigură-te că nu îți neglijezi abilitățile (sondaje, construire de rețele, comunicare scrisă, depanare etc.). Cel mai important este să nu pierzi din vedere ceea ce vrem să găsim – o modalitate de a crea un canal digital complet automatizat, care transformă ideile în fragmente de cod care generează venituri. Acesta este singurul și cel mai important mesaj din întreaga această articol!

Ajunge cu vorbăria, când pot începe?

Mai jos este o foaie de parcurs «Cunoștințe fundamentale DevOps». Odată ce ai stăpânit tot ceea ce este prezentat acolo, poți cu încredere și cinste să te numești inginer DevOps! Sau inginer pe cloud, dacă nu îți place denumirea «DevOps»,

Cum să devii inginer DevOps în șase luni sau chiar mai repede. Partea 1. Introducere

Această hartă reflectă viziunea mea (și probabil a majorității oamenilor care lucrează în acest domeniu) despre ce ar trebui să știe un inginer DevOps competent. Totuși, aceasta este doar o părere și, desigur, va exista și voci contrare. Este în regulă! Nu căutăm perfecțiunea aici, ci o bază solidă pe care se poate construi.

Trebuie să urmezi acest drum treptat, strat cu strat. Trebuie să începi (și să continui!) cu fundamentele, învățând mai întâi elementele marcate în albastru — Linux, Python și AWS. Apoi, dacă timpul sau cererea de pe piața muncii permite,ază ocupă-te de lucrurile violet — Golang și Google Cloud.

Să fim sinceri, stratul de bază este ceva ce va trebui să învățați fără sfârșit. Sistemul de operare Linux este foarte complex și stăpânirea lui necesită ani de zile. Python necesită practică constantă pentru a rămâne la curent. AWS se dezvoltă atât de repede încât ceea ce știți astăzi va fi doar o parte din portofoliul general de cunoștințe peste un an. Odată ce ați învățat bazele, treceți la setul real de abilități. Rețineți că există 6 coloane albastre (Configurare, Versiune, Pachetare, Implementare, Lansare, Monitorizare), câte una pentru fiecare lună de studiu.

Cum să devii inginer DevOps în șase luni sau chiar mai repede. Partea 1. Introducere

Desigur, ați observat absența unei etape importante în conveierul nostru de șase luni – testarea. L-am exclus intenționat din foaia de parcurs, deoarece scrierea modulului, integrarea și testele de acceptare sunt dificile și, de obicei, sunt responsabilitatea dezvoltatorilor. Absența etapei de „testare” se explică prin faptul că scopul acestei foi de parcurs este de a stăpâni cât mai repede abilitățile și instrumentele de bază. Lipsa experienței în testare este, în opinia autorului, doar un obstacol minor pentru utilizarea corectă a DevOps.

În plus, amintiți-vă că nu studiem aici o mulțime de tehnologie dezorganizată, ci ne concentrăm pe înțelegerea instrumentelor care, împreună, creează o poveste clară. Această poveste este o automatizare de-a lungul întregului proces – un conveier digital care mută datele ca o linie de asamblare. Nu doriți să învățați o mulțime de instrumente și să vă opriți constant! Instrumentele DevOps se schimbă rapid, iar conceptele – mult mai rar. Prin urmare, ar trebui să vă străduiți să folosiți instrumentele ca proxy educațional pentru concepte de nivel superior.

Bine, să săpăm puțin mai adânc!

Cunoștințe fundamentale

Sub scala superioară cu inscripția Foundation, vedeți abilitățile pe care fiecare inginer DevOps trebuie să le stăpânească. Aceste abilități sunt gestionarea eficientă a celor trei „stâlpi” ai industriei, care sunt: sistemul de operare, limbajul de programare și cloud-ul public. Aceste lucruri nu sunt ceva ce poți învăța rapid și apoi să treci mai departe. Aceste abilități trebuie perfecționate constant și măiestria în utilizarea lor trebuie rafinată, pentru a rămâne în avangarda industriei și pentru a actualiza mediul profesional în care te înconjori. Să le analizăm pe rând.

Linux este locul unde totul funcționează. Poți fi un practician DevOps uimitor, rămânând complet în ecosistemul Microsoft? Desigur, poți! Nu există o lege care să stipuleze că trebuie să folosești doar Linux. Totuși, reține - deși poți face lucruri cu Linux și în Windows, acolo se întâmplă mult mai greu și cu funcționalități mai limitate. În acest moment, se poate spune cu încredere că fără cunoștințe de Linux nu poți deveni un profesionist adevărat în DevOps, așa că Linux este ceea ce trebuie să studiezi și să studiezi.

Sincer, cea mai bună modalitate de a face asta este pur și simplu să instalezi Linux (Fedora sau Ubuntu) acasă și să-l folosești cât mai mult posibil. Desigur, vei distruge o grămadă de lucruri, vei rămâne blocat în fluxuri de lucru, va trebui să repari totul, dar astfel vei învăța Linux!

Cum să devii inginer DevOps în șase luni sau chiar mai repede. Partea 1. Introducere

Apropo, în America de Nord sunt mai populare variantele RedHat, așa că are sens să începi cu Fedora sau CentOS. Dacă te întrebi dacă ar trebui să achiziționezi varianta KDE sau Gnome, alege KDE. Acesta este ceea ce folosește însuși Linus Torvalds.

Python este în zilele noastre limbajul dominant de back-end. Este ușor de început, utilizat pe scară largă. Python este foarte răspândit în domeniul inteligenței artificiale și al învățării automate, așa că, dacă vrei vreodată să treci într-un alt domeniu înfloritor, vei fi complet pregătit pentru asta.

Cum să devii inginer DevOps în șase luni sau chiar mai repede. Partea 1. Introducere

Amazon Web Services: din nou, nu este posibil să devii un profesionist DevOps experimentat fără o înțelegere solidă a modului în care funcționează cloud-ul public. Și dacă vrei să afli cât mai multe despre acest subiect, studiază Amazon Web Services. Este un jucător de frunte în acest domeniu de servicii, oferind cele mai bogate seturi de instrumente de lucru.

Este posibil să începem cu Google Cloud sau Azure în loc de aceasta? Desigur, se poate! Însă, având în vedere ultimul criză financiară, trebuie să ținem cont că AWS este cea mai sigură opțiune, cel puțin în 2018, deoarece permite înregistrarea gratuită a unui cont și începerea explorării serviciilor cloud. În plus, consola AWS oferă utilizatorului un meniu simplu și clar pentru selecție. Veștile bune sunt că nu trebuie să știți toate tehnologiile Amazon pentru a face acest lucru.

Cum să devii inginer DevOps în șase luni sau chiar mai repede. Partea 1. Introducere

Începeți cu următoarele: VPC, EC2, IAM, S3, CloudWatch, ELB (Elastic Load Balancing prin EC2) și Security Group. Acestea sunt suficiente pentru a începe lucrul, iar fiecare antrepriză cloud modernă folosește aceste instrumente într-un mod activ. Site-ul de învățare AWS este un loc excelent pentru a face primii pași.

Vă recomand să dedicați zilnic 20-30 de minute studiului și practicii cu limbajul Python, sistemul de operare Linux și serviciul cloud AWS, pe lângă alte lucruri pe care va trebui să le învățați. În general, cred că a investi o oră pe zi de cinci ori pe săptămână este suficient pentru a înțelege procesele din industria DevOps în decurs de 6 luni sau chiar mai puțin. Există în total 6 componente principale, fiecare corespunzătoare unei luni de învățare. Acestea sunt tot ce aveți nevoie pentru a dobândi cunoștințe de bază.
În articolele următoare, vom explora nivelul următor de complexitate: cum să automatizăm complet configurarea, versiunea, împachetarea, desfășurarea, rularea și monitorizarea software-ului.

Continuarea va veni foarte curând…

Puțin publicitate 🙂

Mulțumim că rămâneți cu noi. Vă plac articolele noastre? Doriți să vedeți mai multe materiale interesante? Susțineți-ne, efectuând o comandă sau recomandându-ne prietenilor, VPS cloud pentru dezvoltatori de la 4,99 $, un echivalent unic pentru serverele entry-level, care a fost creat de noi pentru voi: Toată adevărul despre VPS (KVM) E5-2697 v3 (6 nuclee) 10GB DDR4 480GB SSD 1Gbps de la 19 $ sau cum să împărțiți corect un server? (sunt disponibile opțiuni cu RAID1 și RAID10, până la 24 nuclee și până la 40GB DDR4).

Dell R730xd la jumătate de preț în centrul de date Equinix Tier IV din Amsterdam? Numai la noi 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TB de la 199 $ în Olanda! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — de la 99 $! Citiți despre Cum să construiți o infrastructură de clasă enterprise folosind servere Dell R730xd E5-2650 v4 la prețuri foarte mici de 9000 €?

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster