Jak se stát DevOps inženýrem za půl roku nebo ještě rychleji. Část 1. Úvod

Cílová skupina

Jste vývojář, který chce nasměrovat svou kariéru k pokročilejší modelu DevOps? Jste klasický Ops inženýr, který by chtěl získat představu o tom, co DevOps znamená? Nebo jste nic z toho a po nějakém čase stráveném v oblasti IT technologií chcete změnit zaměstnání, ale nemáte ponětí, jak začít?
Pokud ano, čtěte dál, abyste se dozvěděli, jak se stát středně pokročilým inženýrem DevOps za šest měsíců! A pokud se už léta věnujete DevOps, i tak si z tohoto cyklu článků odnesete spoustu užitečných informací a dozvíte se, kde se momentálně nachází odvětví integrace a automatizace a jakým směrem se vyvíjí.

Jak se stát DevOps inženýrem za půl roku nebo ještě rychleji. Část 1. Úvod

Co to vlastně je?

Nejprve, co je to DevOps? Můžete si vygooglit definice a procházet touto slovní vatu, ale vězte, že většina těchto definic je prostě směsicí slov, zabalenou do hladké formy. Proto vám poskytnu shrnutí všech těchto definic: DevOps je způsob doručení softwaru, při kterém se bolest a odpovědnost dělí mezi všechny zúčastněné. A to je vše.

Dobře, ale co vlastně toto zkratka znamená? Znamená to, že tradičně vývojáři (lidé, kteří vytvářejí software) v své práci byli motivováni podněty, které se významně lišily od podnětů operací (nebo lidí, kteří spravují software). Například jako vývojář chci co nejrychleji vytvořit co nejvíce nových funkcí. Nakonec, to je má práce a to klienti požadují! Na druhou stranu, pokud jsem člověk z Ops, potřebuji co nejméně nových funkcí, protože každá nová funkce znamená změnu, a každá změna s sebou přináší riziko problémů. Výsledkem tohoto rozporu v motivaci se zrodil DevOps.

DevOps se snaží sloučit vývoj a operace (integraci a automatizaci) do jedné skupiny. Myšlenka spočívá v tom, že nyní jedna skupina ponese jak bolest, tak odpovědnost (a pravděpodobně i odměnu) za vytváření, nasazení a generování příjmů ze softwaru zaměřeného na zákazníka.

Puristé vám řeknou, že neexistuje nic jako "DevOps inženýr". "DevOps je kultura, nikoli role," řeknou vám. Samozřejmě, že mají technicky pravdu, ale jak to často bývá, tento termín překročil svůj původní význam. Takže DevOps inženýr je něco jako "systémový inženýr 2.0". Jinými slovy, je to ten, kdo rozumí životnímu cyklu vývoje softwaru a vytváří nástroje a procesy vývoje softwaru k řešení klasických operačních úloh.

Jak se stát DevOps inženýrem za půl roku nebo ještě rychleji. Část 1. Úvod

DevOps v konečném důsledku znamená vytváření digitálních kanálů, které vezmou kód z notebooku vývojáře a přetvoří ho na příjmy z používání finálního produktu, o to jde. Všimněte si, že kariéra v DevOps je dostatečně dobře ohodnocena finančními odměnami, přičemž téměř každá firma buď "dělá DevOps", nebo se na to herce. Bez ohledu na to, kde se tyto firmy nacházejí, obecné možnosti zaměstnání jako DevOps jsou poměrně vysoké a znamenají "zábavnou" a důležitou práci na dlouhé roky dopředu.

Ale buďte opatrní na firmy, které najímají "DevOps tým" nebo "DevOps oddělení". Přísně vzato, takové věci by neměly existovat, protože nakonec DevOps je přece jen kultura a způsob dodání softwaru, nikoli vytvoření nového týmu nebo oddělení s módním názvem.

Zřeknutí se odpovědnosti

A teď na chvíli odložme sklenici "Cool-Aid" a zamysleme se nad následujícím. Slyšeli jste staré přísloví "neexistují žádní mladší inženýři DevOps"? Pokud ne, vězte, že to je populární trop na Redditu a StackOverflow. Ale co to vlastně znamená?

Jednoduše řečeno, tato fráze znamená, že je potřeba mnoho let zkušeností v kombinaci se silným porozuměním nástrojům, abyste se nakonec stali opravdu efektivním praktikem Senior DevOps. A bohužel, zde neexistuje žádná zkratka k dosažení cíle. Takže to není pokus o obelstění systému - nemyslím si, že je skutečně možné předstírat, že jste starší inženýr DevOps s několika měsíci zkušeností v tomto oboru. Dosažení jasného porozumění rychle se měnícím nástrojům a metodologiím vyžaduje mnoho let zkušeností, a tomu se nikdo nevyhne. Existuje však téměř shodný (moderní, pokud chcete) seznam nástrojů a konceptů, které používá většina firem, a o tom bude tato diskuse.

Znovu připomínám, že nástroje se liší od dovedností, takže zatímco se učíte nástroje, ujistěte se, že nezanedbáváte své dovednosti (dotazování, vytváření sítí, písemná komunikace, odstraňování problémů atd.). Hlavní je, abyste nezapomněli na to, co chceme najít - způsob, jak vytvořit plně automatizovaný digitální kanál, který bere nápady a přetváří je na výdělečné fragmenty kódu. To je jediný a nejdůležitější závěr z celého tohoto článku!

Dost řečí, kdy mohu začít?

Níže je uvedena mapa „Základní znalosti DevOps“. Když zvládnete vše, co je tam znázorněno, můžete s klidným svědomím a oprávněně nazývat sebe inženýrem DevOps! Nebo cloudovým inženýrem, pokud se vám název „DevOps“ nelíbí.

Jak se stát DevOps inženýrem za půl roku nebo ještě rychleji. Část 1. Úvod

Tato mapa zobrazuje mé (a pravděpodobně i názory většiny lidí pracujících v tomto prostoru) představy o tom, co by měl kompetentní inženýr DevOps znát. Nicméně, to je jen názor, a samozřejmě se najdou i nesouhlasící. To je v pořádku! Neusilujeme zde o dokonalost, usilujeme o pevný základ, na kterém lze skutečně stavět.

Musíte jít touto cestou postupně, vrstvu po vrstvě. Začněte (a pokračujte!) s základními základy tím, že se nejprve naučíte prvky, které jsou označeny modře - Linux, Python a AWS. Poté, pokud to čas nebo poptávka na pracovním trhu dovolí, se zaměřte na fialové věci - Golang a Google Cloud.

Upřímně řečeno, základní vrstva je to, co budete muset studovat nekonečně. OS Linux je velmi složitý a jeho osvojování trvá roky. Python vyžaduje neustálou praxi, abyste byli v obraze. AWS se vyvíjí tak rychle, že to, co dnes víte, bude za rok pouze částí celkového portfolia znalostí. Jakmile zvládnete základy, přejděte k souboru skutečných dovedností. Všimněte si, že existuje pouze 6 modrých sloupců (Konfigurace, Verze, Balení, Nasazení, Spuštění, Monitorování), každý na měsíc studia.

Jak se stát DevOps inženýrem za půl roku nebo ještě rychleji. Část 1. Úvod

Samozřejmě jste si všimli nepřítomnosti důležité fáze – testování – v našem šestiměsíčním plánu. Úmyslně jsem ji nezahrnul do road-map, protože psaní modulu, integrace a akceptační testy jsou složité a tradičně leží na bedrech vývojářů. A vynechání fáze „testování“ je dáno tím, že cílem této roadmapy je co nejrychleji osvojení základních dovedností a nástrojů. Nedostatek zkušenosti s testováním je podle autora pouze drobnou překážkou pro správné využití DevOps.

Kromě toho pamatujte, že se zde neučíme celou řadu nesouvisejících technických nesmyslů, ale usilujeme o pochopení nástrojů, které ve vzájemné kombinaci vytvářejí srozumitelný příběh. Tento příběh představuje end-to-end automatizaci procesu – digitální linku, která pohybuje bity podobně jako výroba. Nechcete přece studovat spoustu nástrojů a neustále se zastavovat! DevOps nástroje se rychle mění, zatímco koncepty mnohem méně. Proto byste měli usilovat o používání nástrojů jako výukových proxy pro koncepty vyšší úrovně.

Dobře, pojďme se trochu hlouběji podívat!

Základní znalosti

Pod horním schodem s nápisem Foundation vidíte dovednosti, kterými by měl ovládat každý inženýr DevOps. Tyto dovednosti zahrnují odborné ovládání tří „pilířů“ odvětví, a to: operační systém, programovací jazyk a veřejný cloud. Tyto věci nejsou něco, s čím se dá rychle seznámit a jít dál. Tyto dovednosti je třeba neustále zdokonalovat a vylepšovat mistrovství v jejich používání, abyste byli v čele oboru a udržovali svou profesionální prostředí aktuální. Pojďme si je projít postupně.

Linux je to, kde všechno funguje. Můžete být fantastickým praktikem DevOps a přitom zůstat zcela v rámci ekosystému Microsoft? Samozřejmě, že můžete! Neexistuje žádný zákon, který by předepisoval používat pouze Linux. Mějte však na paměti – i když je možné udělat vše, co v Linuxu, i ve Windows, dělá se to tam mnohem hůře a s omezenějšími funkčními možnostmi. V tuto chvíli lze s jistotou předpokládat, že bez znalosti Linuxu se nelze stát skutečným profesionálem DevOps, proto je Linux to, co byste se měli učit a studovat.

Upřímně řečeno, nejlepší způsob, jak to udělat, je jednoduše nainstalovat Linux (Fedora nebo Ubuntu) doma a co nejvíce ho používat. Samozřejmě, že se rozbije spousta věcí, uvíznete v pracovních postupech a budete muset všechno opravit, ale naučíte se Linux!

Jak se stát DevOps inženýrem za půl roku nebo ještě rychleji. Část 1. Úvod

Mimochodem, v Severní Americe jsou populárnější varianty RedHat, takže má smysl začít s Fedorem nebo CentOS. Pokud se ptáte, zda si pořídit verzi KDE nebo Gnome, vyberte KDE. To je to, co používá sám Linus Torvalds.

Python je v dnešní době dominujícím backendovým jazykem. Je snadné se s ním začít, je široce používán. Python je velmi populární v oblasti umělé inteligence a strojového učení, takže pokud se někdy rozhodnete přejít do další žhavé oblasti, budete na to dokonale připraveni.

Jak se stát DevOps inženýrem za půl roku nebo ještě rychleji. Část 1. Úvod

Amazon Web Services: opět, nelze se stát zkušeným profesionálem DevOps bez pevného porozumění tomu, jak funguje veřejný cloud. A pokud se chcete dozvědět co nejvíce, naučte se Amazon Web Services. Je to přední hráč v této oblasti služeb, který nabízí nejbohatší sadu pracovních nástrojů.

Můžete místo toho začít s Google Cloud nebo Azure? Samozřejmě, že můžete! Ale vzpomeňte si na poslední finanční krizi, měli byste mít na paměti, že AWS je nejbezpečnější volba, minimálně v roce 2018, protože umožňuje zdarma zaregistrovat účet a začít objevovat možnosti cloudových služeb. Kromě toho AWS konzole poskytuje uživateli jednoduché a srozumitelné menu pro výběr. Dobrou zprávou je, že pro to nemusíte znát všechny technologie Amazon.

Jak se stát DevOps inženýrem za půl roku nebo ještě rychleji. Část 1. Úvod

Začněte s následujícími: VPC, EC2, IAM, S3, CloudWatch, ELB (Elastic Load Balancing skrytý pod EC2) a Security Group. Těchto pár věcí stačí k začátku práce, a každé moderní cloudové podnikání tyto nástroje dost aktivně využívá. Vlastní výukový web AWS je dobré místo, kde začít.

Doporučuji vám věnovat každý den 20-30 minut učení a praxi s jazykem Python, operačním systémem Linux a cloudovou službou AWS, vedle dalších věcí, které se musíte naučit. Celkově si myslím, že trávit hodinu denně pětkrát týdně je dostatečné na to, abyste pochopili, co se v oboru DevOps děje, během 6 měsíců nebo dokonce méně. Existují celkem 4 hlavní složky, přičemž každá odpovídá měsíci vzdělávání. To je vše, co potřebujete k získání základních znalostí.
V následujících článcích prozkoumáme další úroveň složitosti: jak plně automatizovat nastavení, verzi, balení, nasazení, spuštění a monitorování softwaru.

Pokračování bude brzy…

Malá reklama 🙂

Děkujeme, že s námi zůstáváte. Líbí se vám naše články? Chcete vidět více zajímavých materiálů? Podpořte nás objednávkou nebo doporučením známým, cloudové VPS pro vývojáře od 4,99 $, unikátní alternativa entry-level serverů, kterou jsme pro vás vymysleli: Všechny pravdy o VPS (KVM) E5-2697 v3 (6 jader) 10GB DDR4 480GB SSD 1Gbps od 19 $ nebo jak správně rozdělit server? (k dispozici varianty s RAID1 a RAID10, až 24 jader a až 40GB DDR4).

Dell R730xd je dvakrát levnější v datovém centru Equinix Tier IV v Amsterdamu? Jen u nás 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TB od 199 $ v Nizozemsku! Dell R420 — 2x E5-2430 2.2GHz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — od 99 $! Čtěte o tom Jak postavit infrastrukturu podnikové třídy s použitím serverů Dell R730xd E5-2650 v4 v hodnotě 9000 eur za pakatel?

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster