Ako sa stať inžinierom DevOps za šesť mesiacov alebo ešte rýchlejšie. Časť 1. Úvod

Целевая аудитория

Ste vývojár, ktorý chce nasmerovať svoju kariéru na pokročilejší model DevOps? Ste klasický Ops inžinier a chceli by ste získať predstavu o tom, čo DevOps znamená? Alebo nie ste ani jedným a po nejakom čase strávenom prácou v IT chcete zmeniť kariéru a neviete, kde začať?
Ak áno, čítajte ďalej a zistite, ako sa môžete za šesť mesiacov stať inžinierom DevOps strednej úrovne! A nakoniec, ak sa venujete DevOps už mnoho rokov, z tejto série článkov stále získate veľa, aby ste sa dozvedeli, kde sa v súčasnosti priemysel integrácie a automatizácie nachádza a kam smeruje.

Ako sa stať inžinierom DevOps za šesť mesiacov alebo ešte rýchlejšie. Časť 1. Úvod

Čo to vôbec je?

Po prvé, čo je DevOps? Môžete si vygoogliť definície a prehrýzť sa všetku slovesnosť, ale vedzte, že väčšina definícií je len spleť slov zabalených v zjednodušenej forme. Preto vám poskytnem súhrn všetkých týchto definícií: DevOps je metóda dodávania softvéru, pri ktorej bolesť hlavy a zodpovednosť zdieľajú všetci zainteresovaní. To je všetko.

Dobre, ale čo znamená táto skratka? Znamená to, že vývojári (ľudia, ktorí vytvárajú softvér) boli tradične motivovaní robiť svoju prácu stimulmi, ktoré sú výrazne odlišné od stimulov Operations (ľudí, ktorí riadia softvér). Napríklad ako vývojár chcem čo najrýchlejšie vytvoriť čo najviac nových funkcií. Toto je predsa moja práca a toto požadujú klienti! Ak som však Ops človek, potrebujem čo najmenej nových funkcií, pretože každá nová funkcia je zmenou a každá zmena je plná problémov. V dôsledku tohto nesúladu stimulov sa zrodil DevOps.

DevOps sa pokúša spojiť vývoj a operácie (integrácia a automatizácia) do jednej skupiny. Myšlienkou je, že jedna skupina bude teraz zdieľať bolesť aj zodpovednosť (a pravdepodobne aj odmeny) budovania, nasadzovania a generovania príjmov zo softvéru určeného zákazníkom.

Puristi vám povedia, že neexistuje nič také ako „devOps inžinier.“ „DevOps je kultúra, nie rola,“ povedia vám. Samozrejme, z technického hľadiska majú pravdu, ale ako je často sa tento termín vymkol kontrole Okrem pôvodného významu je inžinier DevOps niečo ako „systémový inžinier 2.0.“ Inými slovami, je to niekto, kto rozumie životnému cyklu vývoja softvéru a vytvára nástroje a procesy vývoja softvéru. na riešenie klasických prevádzkových problémov.

Ako sa stať inžinierom DevOps za šesť mesiacov alebo ešte rýchlejšie. Časť 1. Úvod

DevOps v konečnom dôsledku znamená vytváranie digitálnych kanálov, ktoré berú kód z vývojárskeho notebooku a premieňajú ho na výnosy z používania finálneho produktu, o tom to celé je. Všimnite si, že výber kariéry DevOps je pomerne vysoko kompenzovaný finančnými odmenami, pričom takmer každá spoločnosť buď „robí DevOps“, alebo o sebe tvrdí. Bez ohľadu na to, kde sa tieto spoločnosti nachádzajú, celkové pracovné príležitosti ako DevOps sú pomerne vysoké a ponúkajú „zábavné“ a zmysluplné zamestnanie na mnoho ďalších rokov.

Dávajte si však pozor na spoločnosti, ktoré si najímajú „tím DevOps“ alebo „Oddelenie DevOps“. Presne povedané, takéto veci by nemali existovať, pretože v konečnom dôsledku je DevOps stále kultúrou a spôsobom dodávania softvéru, nie obsadzovaním nových zamestnancov alebo vytváraním oddelenia vymyslené meno.

dementi

Teraz odložme na chvíľu pohár Kool-Aid a zamyslime sa nad nasledujúcim. Počuli ste staré príslovie „neexistujú žiadni mladší inžinieri DevOps? Ak nie, tak vedzte, že ide o populárny trope na Reddite a StackOverflow. Ale čo to znamená?

Jednoducho povedané, táto fráza znamená, že na to, aby ste sa nakoniec stali skutočne efektívnym seniorom DevOps praktikom, sú potrebné dlhoročné skúsenosti spojené so solídnym pochopením nástrojov. A, bohužiaľ, neexistuje žiadna skratka k dosiahnutiu cieľa. Takže toto nie je pokus o hru so systémom – nemyslím si, že je v skutočnosti možné predstierať, že som senior DevOps inžinier s niekoľkomesačnými skúsenosťami v tomto odvetví. Dosiahnutie solídneho pochopenia rýchlo sa meniacich nástrojov a metodológií si vyžaduje dlhoročné skúsenosti, ktoré sa nedajú obísť. Existuje však takmer konzistentná (módna, ak chcete) ponuka nástrojov a konceptov, ktoré používa väčšina spoločností, a to je to, o čom sa budeme baviť.

Opäť platí, že nástroje sa líšia od zručností, takže keď sa učíte nástroje, uistite sa, že nezanedbáte svoje zručnosti (prieskumy, vytváranie sietí, písomná komunikácia, riešenie problémov atď.). A čo je najdôležitejšie, nestrácajte zo zreteľa to, čo chceme nájsť – spôsob, ako vytvoriť plne automatizovaný digitálny kanál, ktorý preberá nápady a mení ich na časti kódu generujúce príjmy. Toto je najdôležitejší záver z celého tohto článku!

Dosť bolo klebetenia, kedy môžem začať?

Nižšie je uvedený plán DevOps Fundamental Knowledge. Po zvládnutí všetkého, čo je tam zobrazené, sa môžete bezpečne a úprimne nazývať inžinierom DevOps! Alebo cloudový inžinier, ak sa vám nepáči názov „DevOps“.

Ako sa stať inžinierom DevOps za šesť mesiacov alebo ešte rýchlejšie. Časť 1. Úvod

Táto mapa predstavuje moju (a pravdepodobne väčšinu ľudí pracujúcich v tomto priestore) predstavu o tom, čo by mal vedieť kompetentný inžinier DevOps. Je to však len názor a samozrejme sa nájdu aj takí, ktorí s ním nesúhlasia. Toto je fajn! Nesnažíme sa tu o dokonalosť, snažíme sa o pevný základ, na ktorom môžeme skutočne stavať.

Túto cestu musíte prejsť postupne, vrstvu po vrstve. Začnime (a pokračujme!) so základmi tým, že sa najprv dozvieme o prvkoch v modrej farbe – Linux, Python a AWS. Potom, ak to čas alebo dopyt na trhu práce dovolí, urobte fialové veci – Golang a Google Cloud.

Úprimne povedané, základná vrchná vrstva je niečo, čo budete musieť študovať navždy. OS Linux je veľmi zložitý a jeho zvládnutie trvá roky. Python vyžaduje neustálu prax, aby zostal aktuálny. AWS sa vyvíja tak rýchlo, že to, čo dnes viete, bude o rok už len súčasťou vášho celkového portfólia vedomostí. Keď sa naučíte základy, prejdite na skutočný súbor zručností. Upozorňujeme, že celkovo je tu 6 modrých stĺpcov (Konfigurácia, Verzia, Balenie, Nasadenie, Spustenie, Monitorovanie), jeden za mesiac štúdia.

Ako sa stať inžinierom DevOps za šesť mesiacov alebo ešte rýchlejšie. Časť 1. Úvod

Samozrejme ste si všimli absenciu dôležitej etapy v našom šesťmesačnom pláne – testovania. Zámerne som to nezaradil do roadmapy, pretože napísať modul, integračné a akceptačné testy nie je jednoduché a tradične padá na plecia vývojárov. A preskočenie fázy „testovania“ sa vysvetľuje skutočnosťou, že cieľom tohto plánu je čo najrýchlejšie zvládnuť základné zručnosti a nástroje. Nedostatok skúseností s testovaním je podľa autora len menšou prekážkou správneho používania DevOps.

Pamätajte tiež, že sa tu nenaučíme veľa nesúvisiacich technických blábolov, ale skôr pochopenie nástrojov, ktoré sa spájajú, aby vytvorili jasný príbeh. Tento príbeh je o komplexnej automatizácii procesov – digitálnej montážnej linke, ktorá presúva časti ako montážna linka. Nechcete sa naučiť veľa nástrojov a zastavovať sa! Nástroje DevOps sa menia rýchlo, ale koncepty sa menia oveľa menej často. Preto by ste sa mali snažiť používať nástroje ako učebné proxy pre koncepty vyššej úrovne.

Dobre, poďme kopať trochu hlbšie!

Základné znalosti

Pod horným krokom, ktorý hovorí Foundation, môžete vidieť zručnosti, ktoré by mal ovládať každý inžinier DevOps. Tieto zručnosti sú sebavedomým ovládaním troch pilierov odvetvia, ktorými sú: operačný systém, programovací jazyk a verejný cloud. Tieto veci nie sú niečo, čo sa môžete rýchlo naučiť a ísť ďalej. Tieto zručnosti je potrebné neustále zlepšovať a osvojovať si, aby ste boli v popredí odvetvia a boli relevantné pre profesionálne prostredie okolo vás. Poďme si ich prejsť jeden po druhom.

Linux je miesto, kde všetko funguje. Môžete byť úžasným praktikom DevOps a zároveň zostať úplne v ekosystéme Microsoftu? Určite môžeš! Neexistuje žiadny zákon, ktorý by nariaďoval, aby ste používali iba Linux. Majte však na pamäti, že napriek tomu, že všetky linuxové veci sa dajú robiť vo Windowse, deje sa to tam oveľa bolestivejšie a s menšou funkčnosťou. V tomto bode je bezpečné predpokladať, že bez znalosti Linuxu nie je možné stať sa skutočným profesionálom DevOps, takže Linux je niečo, čo by ste mali študovať a učiť sa.

Úprimne povedané, najlepší spôsob, ako to urobiť, je jednoducho nainštalovať Linux (Fedora alebo Ubuntu) doma a používať ho čo najviac. Samozrejme, veľa vecí pokazíte, zaseknete sa v pracovných procesoch, budete musieť všetko opravovať, ale Linux sa naučíte!

Ako sa stať inžinierom DevOps za šesť mesiacov alebo ešte rýchlejšie. Časť 1. Úvod

Mimochodom, varianty RedHat sú bežnejšie v Severnej Amerike, takže má zmysel začať s Fedora alebo CentOS. Ak sa pýtate, či by ste si mali kúpiť KDE alebo Gnome edition, zvoľte KDE. To je to, čo používa sám Linus Torvalds.

Python je v súčasnosti dominantným back-endovým jazykom. Je ľahké s ním začať a je široko používaný. Python je veľmi rozšírený v oblasti umelej inteligencie a strojového učenia, takže ak sa niekedy budete chcieť posunúť do inej horúcej oblasti, budete plne pripravení.

Ako sa stať inžinierom DevOps za šesť mesiacov alebo ešte rýchlejšie. Časť 1. Úvod

Amazon Web Services: Opäť je nemožné stať sa skúseným profesionálom DevOps bez dôkladného pochopenia toho, ako funguje verejný cloud. A ak sa o tom chcete dozvedieť viac, pozrite sa na Amazon Web Services. Je popredným hráčom v tejto oblasti služieb a ponúka najbohatšiu sadu pracovných nástrojov.

Je možné namiesto toho začať s Google Cloud alebo Azure? Samozrejme môžete! Keď si však spomenieme na poslednú finančnú krízu, treba poznamenať, že AWS je minimálne v roku 2018 najbezpečnejšou možnosťou, pretože vám umožňuje bezplatne si zaregistrovať účet a začať objavovať možnosti cloudových služieb. Okrem toho konzola AWS poskytuje používateľovi na výber jednoduché a jasné menu. Dobrou správou je, že na to nepotrebujete poznať všetky technológie Amazonu.

Ako sa stať inžinierom DevOps za šesť mesiacov alebo ešte rýchlejšie. Časť 1. Úvod

Začnite s týmito: VPC, EC2, IAM, S3, CloudWatch, ELB (Elastic Load Balancing pod záštitou EC2) a Security Group. Tieto veci stačia na to, aby ste mohli začať, a každý moderný podnik založený na cloude používa tieto nástroje pomerne aktívne. Vlastná školiaca stránka AWS je dobrým miestom, kde začať.

Odporúčam vám, aby ste každý deň strávili 20-30 minút učením sa a precvičovaním jazyka Python, operačného systému Linux a cloudovej služby AWS okrem iných vecí, ktoré sa budete musieť naučiť. Celkovo som presvedčený, že stráviť hodinu denne, päťkrát týždenne, stačí na pochopenie odvetvia DevOps za 6 mesiacov alebo menej. Existuje celkovo 6 hlavných zložiek, z ktorých každá zodpovedá mesiacu tréningu. To je všetko, čo potrebujete na získanie základných vedomostí.
V nasledujúcich článkoch sa pozrieme na ďalšiu úroveň zložitosti: ako plne automatizovať konfiguráciu, verzovanie, balenie, nasadenie, beh a monitorovanie softvéru.

Pokračovanie už čoskoro...

Nejaké inzeráty 🙂

Ďakujeme, že ste zostali s nami. Páčia sa vám naše články? Chcete vidieť viac zaujímavého obsahu? Podporte nás zadaním objednávky alebo odporučením priateľom, cloud VPS pre vývojárov od 4.99 USD, jedinečný analóg serverov základnej úrovne, ktorý sme pre vás vymysleli: Celá pravda o VPS (KVM) E5-2697 v3 (6 jadier) 10GB DDR4 480GB SSD 1Gbps od 19 USD alebo ako zdieľať server? (k dispozícii s RAID1 a RAID10, až 24 jadier a až 40 GB DDR4).

Dell R730xd 2 krát lacnejší v dátovom centre Equinix Tier IV v Amsterdame? Len tu 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6 GHz 14C 64 GB DDR4 4 x 960 GB SSD 1 Gbps 100 TV od 199 USD v Holandsku! Dell R420 – 2x E5-2430 2.2 GHz 6C 128 GB DDR3 2 x 960 GB SSD 1 Gb/s 100 TB – od 99 USD! Čítať o Ako vybudovať infraštruktúru spol. triedy s využitím serverov Dell R730xd E5-2650 v4 v hodnote 9000 XNUMX eur za cent?

Zdroj: hab.com

Pridať komentár