Hur man blir en DevOps-ingenjör på sex månader eller ännu snabbare. Del 1. Introduktion

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

Är du en utvecklare som vill vända din karriär mot en mer avancerad DevOps-modell? Är du en klassisk Ops-ingenjör och skulle vilja få en uppfattning om vad DevOps betyder? Eller vill du byta karriär och har ingen aning om var du ska börja, efter att ha arbetat lite inom IT?
Om ja, läs sedan vidare för att ta reda på hur du kan bli en DevOps-ingenjör på mellannivå på sex månader! Slutligen, om du har varit involverad i DevOps i många år, kommer du fortfarande att få ut mycket av den här artikelserien för att lära dig var integrations- och automationsbranschen är för närvarande och vart den är på väg.

Hur man blir en DevOps-ingenjör på sex månader eller ännu snabbare. Del 1. Introduktion

Vad är det här i alla fall?

För det första, vad är DevOps? Du kan Google definitioner och vada igenom alla ord, men vet att de flesta av definitionerna bara är ett virrvarr av ord insvept i en strömlinjeformad form. Därför kommer jag att ge dig en sammanfattning av alla dessa definitioner: DevOps är en metod för att leverera programvara där huvudvärken och ansvaret delas mellan alla inblandade. Det är allt.

Okej, men vad betyder den här förkortningen? Det betyder att utvecklare (människor som skapar mjukvara) traditionellt har motiverats att utföra sitt arbete av incitament som skiljer sig väsentligt från Operations (de personer som hanterar programvaran). Som utvecklare vill jag till exempel skapa så många nya funktioner så snabbt som möjligt. Det här är trots allt mitt jobb och det är vad kunderna efterfrågar! Men om jag är en Ops-person behöver jag så få nya funktioner som möjligt, eftersom varje ny funktion är en förändring, och varje förändring är full av problem. Som ett resultat av denna felaktiga inriktning av incitament föddes DevOps.

DevOps försöker kombinera utveckling och drift (integration och automation) till en grupp. Tanken är att en grupp nu ska dela både smärtan och ansvaret (och sannolika belöningar) av att bygga, implementera och generera intäkter från kundnära mjukvara.

Purister kommer att berätta för dig att det inte finns något sådant som en "DevOps-ingenjör." "DevOps är en kultur, inte en roll", kommer de att berätta för dig. Naturligtvis har de rätt ur teknisk synvinkel, men som det är ofta har termen gått över styr. Utöver dess ursprungliga innebörd är en DevOps-ingenjör något i stil med en "systemingenjör 2.0." Med andra ord är han någon som förstår mjukvaruutvecklingens livscykel och skapar verktyg och processer för mjukvaruutveckling för att lösa klassiska driftsproblem.

Hur man blir en DevOps-ingenjör på sex månader eller ännu snabbare. Del 1. Introduktion

DevOps innebär i slutändan att skapa digitala pipelines som tar kod från en utvecklares bärbara dator och omvandlar den till intäkter från användningen av slutprodukten, det är vad det handlar om. Observera att att välja en DevOps-karriär kompenseras ganska högt av ekonomiska belöningar, med nästan alla företag som antingen "gör DevOps" eller påstår sig vara det. Oavsett var dessa företag är belägna är de övergripande jobbmöjligheterna som DevOps ganska höga och erbjuder "rolig" och meningsfull anställning under många år framöver.

Var dock försiktig med att företag anställer ett ”DevOps-team” eller ”DevOps-avdelning” Strängt taget borde sådana saker inte existera, för i slutändan är DevOps fortfarande en kultur och ett sätt att leverera mjukvara, inte bemanna ett nytt team eller skapa avdelning med ett fint namn.

disclaimer

Låt oss nu lägga glaset Kool-Aid åt sidan för en stund och fundera på följande. Har du hört det gamla ordspråket "det finns inga yngre DevOps-ingenjörer?" Om inte, vet då att detta är en populär trope på Reddit och StackOverflow. Men vad betyder det?

Enkelt uttryckt betyder den här frasen att det krävs många års erfarenhet kombinerat med en gedigen förståelse för verktygen för att i slutändan bli en verkligt effektiv Senior DevOps-utövare. Och tyvärr finns det ingen genväg för att nå målet. Så det här är inte ett försök att spela systemet – jag tror inte att det faktiskt är möjligt att låtsas vara en senior DevOps-ingenjör med några månaders erfarenhet i branschen. Att uppnå en gedigen förståelse för snabbt föränderliga verktyg och metoder kräver många års erfarenhet, och det går inte att komma runt det. Det finns dock en nästan konsekvent (fashionabel, om man så vill) meny med verktyg och koncept som de flesta företag använder, och det är vad vi kommer att prata om.

Återigen, verktyg skiljer sig från färdigheter, så medan du lär dig verktygen, se till att du inte försummar dina färdigheter (undersökningar, nätverk, skriftlig kommunikation, felsökning, etc.). Viktigast av allt, glöm inte bort det vi vill hitta – ett sätt att skapa en helt automatiserad digital pipeline som tar idéer och omvandlar dem till intäktsgenererande kodbitar. Detta är den enskilt viktigaste slutsatsen från hela denna artikel!

Nog prat, när kan jag börja?

Nedan finns färdplanen för DevOps Fundamental Knowledge. Efter att ha bemästrat allt som avbildas där kan du säkert och ärligt kalla dig DevOps-ingenjör! Eller en molningenjör om du inte gillar namnet "DevOps".

Hur man blir en DevOps-ingenjör på sex månader eller ännu snabbare. Del 1. Introduktion

Den här kartan representerar min (och förmodligen de flesta som arbetar i detta utrymme) idé om vad en kompetent DevOps-ingenjör bör veta. Detta är dock bara en åsikt, och självklart kommer det att finnas de som inte håller med om den. Det här är okej! Vi strävar inte efter perfektion här, vi strävar efter en solid grund som vi faktiskt kan bygga på.

Du måste gå igenom denna väg gradvis, lager för lager. Låt oss börja (och fortsätta!) med grunderna genom att först lära oss om elementen i blått—Linux, Python och AWS. Sedan, om tiden eller efterfrågan på arbetsmarknaden tillåter, gör de lila sakerna - Golang och Google Cloud.

Ärligt talat, det grundläggande översta lagret är något du kommer att behöva studera för alltid. OS Linux är mycket komplext och tar år att bemästra. Python kräver konstant övning för att hålla sig aktuell. AWS utvecklas så snabbt att det du vet idag bara kommer att vara en del av din övergripande kunskapsportfölj om ett år. När du har lärt dig grunderna, gå vidare till den faktiska färdighetsuppsättningen. Observera att det finns totalt 6 blå kolumner (konfiguration, version, paketering, distribution, lansering, övervakning), en per månad av studien.

Hur man blir en DevOps-ingenjör på sex månader eller ännu snabbare. Del 1. Introduktion

Du märkte naturligtvis avsaknaden av ett viktigt steg i vår sexmånaders pipeline - testning. Jag tog medvetet inte med det i färdplanen eftersom det inte är lätt att skriva en modul, integrations- och acceptanstest och traditionellt faller på utvecklarnas axlar. Och att hoppa över "testningsstadiet" förklaras av det faktum att målet med denna färdplan är att bemästra grundläggande färdigheter och verktyg så snabbt som möjligt. Brist på testerfarenhet, enligt författaren, är bara ett mindre hinder för korrekt användning av DevOps.

Kom också ihåg att vi inte lär oss en hel massa orelaterade tekniska babbel här, utan snarare en förståelse för de verktyg som går samman för att skapa en tydlig berättelse. Den här historien handlar om end-to-end processautomation – en digital monteringslinje som rör sig bitar som ett löpande band. Du vill inte lära dig en massa verktyg och stanna upp! DevOps-verktyg förändras snabbt, men koncept ändras mycket mer sällan. Därför bör du sträva efter att använda verktyg som undervisningsproxy för begrepp på högre nivå.

Okej, låt oss gräva lite djupare!

Grundläggande kunskap

Under det översta steget som säger Foundation kan du se de färdigheter som varje DevOps-ingenjör bör behärska. Dessa färdigheter är säker hantering av de tre pelarna i branschen, som är: operativsystemet, programmeringsspråket och det offentliga molnet. Dessa saker är inget man snabbt kan lära sig och gå vidare. Dessa färdigheter behöver ständigt förbättras och bemästras för att vara i framkant av branschen och relevanta för den professionella miljön omkring dig. Låt oss gå igenom dem en efter en.

Linux är där allt fungerar. Kan du vara en fantastisk DevOps-utövare samtidigt som du förblir helt inom Microsofts ekosystem? Så klart du kan! Det finns ingen lag som säger att du bara använder Linux. Tänk dock på att trots att alla Linux-saker kan göras i Windows, där händer det mycket mer smärtsamt och med mindre funktionalitet. Vid det här laget är det säkert att anta att utan att känna till Linux är det omöjligt att bli en riktig DevOps-proffs, så Linux är något som du bör studera och lära dig.

Ärligt talat, det bästa sättet att göra detta är att helt enkelt installera Linux (Fedora eller Ubuntu) hemma och använda det så mycket som möjligt. Naturligtvis kommer du att bryta en massa saker, du kommer att fastna i arbetsprocesser, du kommer att behöva fixa allt, men du kommer att lära dig Linux!

Hur man blir en DevOps-ingenjör på sex månader eller ännu snabbare. Del 1. Introduktion

Förresten, RedHat-varianter är vanligare i Nordamerika, så det är vettigt att börja med Fedora eller CentOS. Om du undrar om du ska köpa KDE eller Gnome-utgåvan, välj KDE. Det här använder Linus Torvalds själv.

Python är det dominerande backend-språket nu för tiden. Det är lätt att komma igång med och används flitigt. Python är väldigt vanligt inom området artificiell intelligens och maskininlärning, så om du någon gång vill flytta in i ett annat hett område kommer du att vara fullt förberedd.

Hur man blir en DevOps-ingenjör på sex månader eller ännu snabbare. Del 1. Introduktion

Amazon Web Services: Återigen, det är omöjligt att bli en erfaren DevOps-proffs utan en solid förståelse för hur det offentliga molnet fungerar. Och om du vill lära dig mer om det, titta på Amazon Web Services. Det är en ledande aktör inom detta tjänsteområde och erbjuder den rikaste uppsättningen av arbetsverktyg.

Går det att börja med Google Cloud eller Azure istället? Såklart du kan! Men med tanke på den senaste finanskrisen bör det noteras att AWS är det säkraste alternativet, åtminstone under 2018, eftersom det låter dig registrera ett konto gratis och börja utforska möjligheterna med molntjänster. Dessutom ger AWS-konsolen användaren en enkel och tydlig meny att välja mellan. Den goda nyheten är att du inte behöver känna till alla Amazons teknologier för att göra detta.

Hur man blir en DevOps-ingenjör på sex månader eller ännu snabbare. Del 1. Introduktion

Börja med följande: VPC, EC2, IAM, S3, CloudWatch, ELB (Elastic Load Balancing under EC2-paraplyet) och Security Group. Dessa saker räcker för att du ska komma igång, och alla moderna, molnbaserade företag använder dessa verktyg ganska aktivt. AWS egen utbildningssajt är ett bra ställe att komma igång på.

Jag rekommenderar att du lägger 20-30 minuter varje dag på att lära dig och öva med Python-språket, operativsystemet Linux och AWS molntjänst utöver andra saker du måste lära dig. Sammantaget tror jag att det räcker att spendera en timme om dagen, fem gånger i veckan för att förstå DevOps-branschen på 6 månader eller mindre. Det finns totalt 6 huvudkomponenter som var och en motsvarar en månads träning. Det är allt du behöver för att få grundläggande kunskaper.
I efterföljande artiklar kommer vi att titta på nästa nivå av komplexitet: hur man helt automatiserar konfiguration, versionshantering, paketering, distribution, körning och övervakning av programvara.

Fortsättning snart...

Några annonser 🙂

Tack för att du stannar hos oss. Gillar du våra artiklar? Vill du se mer intressant innehåll? Stöd oss ​​genom att lägga en beställning eller rekommendera till vänner, moln VPS för utvecklare från $4.99, en unik analog av ingångsservrar, som uppfanns av oss för dig: Hela sanningen om VPS (KVM) E5-2697 v3 (6 kärnor) 10GB DDR4 480GB SSD 1Gbps från $19 eller hur delar man en server? (tillgänglig med RAID1 och RAID10, upp till 24 kärnor och upp till 40 GB DDR4).

Dell R730xd 2 gånger billigare i Equinix Tier IV datacenter i Amsterdam? Bara här 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV från $199 i Nederländerna! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - från $99! Läs om Hur man bygger infrastructure corp. klass med användning av Dell R730xd E5-2650 v4-servrar värda 9000 XNUMX euro för en slant?

Källa: will.com

Lägg en kommentar