Целевая аудитория
Oletko kehittäjä, joka haluaa kääntää urasi kohti edistyneempää DevOps-mallia? Oletko klassinen Ops-insinööri ja haluat saada käsityksen siitä, mitä DevOps tarkoittaa? Vai etkö ole kumpikaan ja IT-alalla työskenneltyäsi haluat vaihtaa uraa etkä tiedä mistä aloittaa?
Jos kyllä, lue eteenpäin saadaksesi selville, kuinka sinusta voi tulla keskitason DevOps-insinööri kuudessa kuukaudessa! Lopuksi, jos olet ollut mukana DevOpsissa monta vuotta, saat silti paljon irti tästä artikkelisarjasta oppiaksesi, missä integraatio- ja automaatioteollisuus on tällä hetkellä ja mihin se on menossa.

Mistä on kyse?
Ensinnäkin mikä on DevOps? Voit googlettaa määritelmiä ja kahlata läpi kaikki sanamuodot, mutta tiedä, että useimmat määritelmät ovat vain sekamelskaa sanoja, jotka on kääritty virtaviivaiseen muotoon. Siksi annan sinulle yhteenvedon kaikista näistä määritelmistä: DevOps on menetelmä ohjelmistojen toimittamiseen, jossa päänsärky ja vastuu jaetaan kaikkien osapuolten kesken. Siinä kaikki.
Okei, mutta mitä tämä lyhenne tarkoittaa? Se tarkoittaa, että perinteisesti kehittäjät (henkilöt, jotka luovat ohjelmistoja) ovat motivoituneet tekemään työtään kannustimilla, jotka eroavat merkittävästi Operationsin (ohjelmistoa hallinnoivat ihmiset) kannustimista. Esimerkiksi kehittäjänä haluan luoda mahdollisimman paljon uusia ominaisuuksia mahdollisimman nopeasti. Loppujen lopuksi tämä on minun työni ja sitä asiakkaat vaativat! Kuitenkin, jos olen ops-ihminen, tarvitsen mahdollisimman vähän uusia ominaisuuksia, koska jokainen uusi ominaisuus on muutos ja kaikki muutokset ovat täynnä ongelmia. Tämän kannustimien vääristymisen seurauksena DevOps syntyi.
DevOps yrittää yhdistää kehityksen ja toiminnan (integraatio ja automaatio) yhdeksi ryhmäksi. Ajatuksena on, että yksi ryhmä jakaa nyt sekä kivun että vastuun (ja todennäköiset palkinnot) asiakaskohtaisten ohjelmistojen rakentamisesta, käyttöönotosta ja tulojen tuottamisesta.
Puristit kertovat sinulle, ettei ole olemassa sellaista asiaa kuin "DevOps-insinööri." "DevOps on kulttuuri, ei rooli", he kertovat. Teknisestä näkökulmasta he ovat tietysti oikeassa, mutta kuten on usein termi on riistäytynyt käsistä Alkuperäisen merkityksensä lisäksi DevOps-insinööri on jotain "järjestelmäsuunnittelija 2.0". Toisin sanoen hän on joku, joka ymmärtää ohjelmistokehityksen elinkaaren ja luo ohjelmistokehitystyökaluja ja -prosesseja. ratkaisemaan klassisia toimintaongelmia.

DevOps tarkoittaa viime kädessä digitaalisten putkien luomista, jotka ottavat koodia kehittäjän kannettavasta tietokoneesta ja muuttavat sen tuloiksi lopputuotteen käytöstä. Siitä tässä on kyse. Huomaa, että DevOps-uran valitseminen korvataan melko paljon taloudellisilla palkkioilla, ja melkein jokainen yritys joko "tekee DevOpsia" tai väittää olevansa sellainen. Riippumatta siitä, missä nämä yritykset sijaitsevat, yleiset työmahdollisuudet DevOpsina ovat melko korkeat ja tarjoavat "hauskoja" ja mielekkäitä työpaikkoja moniksi vuosiksi eteenpäin.
Varo kuitenkin yrityksiä, jotka palkkaavat "DevOps-tiimin" tai "DevOps-osaston". Tarkkaan ottaen tällaisia asioita ei pitäisi olla olemassa, koska viime kädessä DevOps on edelleen kulttuuri ja tapa toimittaa ohjelmistoja, ei henkilöstöä uutta tiimiä tai osastoa. hieno nimi.
Disclaimer
Laitetaan nyt Kool-Aid-lasi hetkeksi sivuun ja mietitään seuraavaa. Oletko kuullut vanhan sanonnan "ei ole nuorempia DevOps-insinöörejä?" Jos ei, niin tiedä, että tämä on suosittu trooppi Redditissä ja StackOverflowssa. Mutta mitä se tarkoittaa?
Yksinkertaisesti sanottuna tämä lause tarkoittaa, että vaaditaan monen vuoden kokemus yhdistettynä vankkaan työkalujen ymmärtämiseen, jotta sinusta lopulta tulee todella tehokas Senior DevOps -harjoittaja. Ja valitettavasti tavoitteen saavuttamiseen ei ole oikotietä. Joten tämä ei ole yritys pelata järjestelmää - en usko, että on todella mahdollista teeskennellä vanhempi DevOps-insinööri, jolla on muutaman kuukauden kokemus alalta. Nopeasti muuttuvien työkalujen ja menetelmien vankan ymmärtämisen saavuttaminen vaatii vuosien kokemusta, eikä sitä voi kiertää. On kuitenkin olemassa lähes johdonmukainen (muodikas, jos haluat) työkalujen ja konseptien valikko, jota useimmat yritykset käyttävät, ja siitä me puhumme.
Jälleen kerran, työkalut eroavat taidoista, joten kun opit työkaluja, varmista, että et laiminlyö taitojasi (kyselyt, verkostoituminen, kirjallinen viestintä, vianetsintä jne.). Mikä tärkeintä, älä unohda sitä, mitä haluamme löytää – tavan luoda täysin automatisoitu digitaalinen putkisto, joka ottaa ideoita vastaan ja muuttaa ne tuloja tuottaviksi koodinpätöiksi. Tämä on tärkein yksittäinen johtopäätös koko artikkelista!
Keskustelua riittää, milloin voin aloittaa?
Alla on DevOps Fundamental Knowledge -tiekartta. Kun olet oppinut kaiken, mitä siellä on kuvattu, voit turvallisesti ja rehellisesti kutsua itseäsi DevOps-insinööriksi! Tai pilvi-insinööri, jos et pidä nimestä "DevOps".

Tämä kartta edustaa minun (ja luultavasti useimpien tässä tilassa työskentelevien) käsitystäni siitä, mitä pätevän DevOps-insinöörin tulisi tietää. Tämä on kuitenkin vain mielipide, ja tietysti tulee olemaan niitä, jotka ovat eri mieltä. Tämä on hyvä! Emme pyri tässä täydellisyyteen, vaan pyrimme vahvaan perustaan, jolle voimme todella rakentaa.
Sinun on käytävä tämä prosessi läpi vähitellen, kerros kerrokselta. Sinun tulisi aloittaa (ja jatkaa!) perusasioista ja ensin tutkia sinisellä korostettuja elementtejä— Linux, Python ja AWS. Sitten, jos aika tai työmarkkinoiden kysyntä sallii, siirry violetteihin juttuihin – Golangiin ja Google Cloudiin.
Suoraan sanottuna, perustavanlaatuinen ylin kerros on jotain, mitä joudut opettelemaan ikuisesti. Linux Se on erittäin monimutkaista ja sen hallitseminen vie vuosia. Python vaatii jatkuvaa harjoittelua pysyäkseen ajan tasalla. AWS kehittyy niin nopeasti, että se, mitä osaat tänään, on vain murto-osa kokonaistietämyksestäsi vuodessa. Kun olet hallinnut perusteet, siirry varsinaisiin taitoihin. Huomaa, että sinisiä sarakkeita on kuusi (Konfiguraatio, Versio, Pakkaus, Käyttöönotto, Julkaisu, Valvonta), yksi kutakin opiskelukuukautta kohden.

Huomasit tietysti, että kuuden kuukauden prosessissamme ei ole tärkeää vaihetta - testausta. En sisällyttänyt sitä tietoisesti tiekarttaan, koska moduulin kirjoittaminen, integrointi- ja hyväksymistestit eivät ole helppoa ja jäävät perinteisesti kehittäjien harteille. Ja "testaus"-vaiheen ohittaminen selittyy sillä, että tämän tiekartan tavoitteena on hallita perustaidot ja työkalut mahdollisimman nopeasti. Testauskokemuksen puute on kirjoittajan mukaan vain pieni este DevOpsin oikealle käytölle.
Muista myös, että emme opi tässä kokonaista joukkoa asiaankuulumattomia teknisiä hölmöilyjä, vaan pikemminkin ymmärrystä työkaluista, jotka yhdessä luovat selkeän tarinan. Tämä tarina kertoo päästä päähän -prosessiautomaatiosta – digitaalisesta kokoonpanolinjasta, joka liikuttaa kappaleita kuin kokoonpanolinja. Et halua oppia joukkoa työkaluja ja pysähtyä! DevOps-työkalut muuttuvat nopeasti, mutta konseptit muuttuvat paljon harvemmin. Siksi sinun tulee pyrkiä käyttämään työkaluja korkeamman tason käsitteiden opetusapuvälineinä.
Okei, kaivetaan vähän syvemmälle!
Perustietoa
Ylävaiheen alla, jossa lukee Foundation, näet taidot, jotka jokaisen DevOps-insinöörin tulee hallita. Nämä taidot ovat alan kolmen pilarin, jotka ovat käyttöjärjestelmä, ohjelmointikieli ja julkinen pilvi, luottavainen käsittely. Näitä asioita ei voi nopeasti oppia ja jatkaa eteenpäin. Näitä taitoja on jatkuvasti kehitettävä ja hallittava, jotta voit olla alan eturintamassa ja merkityksellinen sinua ympäröivän ammatillisen ympäristön kannalta. Käydään ne läpi yksitellen.
Linux Tässä kaikki toimii. Voitko olla loistava DevOps-osaaja ja pysyä samalla täysin Microsoftin ekosysteemissä? Tietenkin voit! Mikään laki ei määrää käyttämään vain… LinuxHuomioithan kuitenkin, että kaikesta huolimatta Linux voit tehdä sen sisään Windows, se tapahtuu siellä paljon tuskallisemmin ja vähemmällä toiminnallisuudella. Tässä vaiheessa on turvallista olettaa, että ilman tietoa Linux On mahdotonta tulla todelliseksi DevOps-ammattilaiseksi, joten Linux Tämä on asia, joka sinun täytyy opiskella ja oppia.
Rehellisesti sanottuna paras tapa tehdä tämä on asentaa Linux (Fedora tai Ubuntu) kotona ja käytä sitä niin paljon kuin mahdollista. Tietenkin rikot paljon asioita, juutut työnkulkuihin ja joudut korjaamaan kaiken, mutta opit Linux!

Muuten, Pohjois-Amerikassa RedHat-variantit ovat yleisempiä, joten on järkevää aloittaa Fedorasta tai CentOSJos mietit, pitäisikö ostaa KDE- vai Gnome-versio, valitse KDE. Sitä Linus Torvalds itse käyttää.
Python on hallitseva taustakieli nykyään. Se on helppo aloittaa ja sitä käytetään laajasti. Python on erittäin yleinen tekoälyn ja koneoppimisen alalla, joten jos haluat joskus muuttaa toiselle kuumalle alalle, olet täysin valmistautunut.

Amazon Web Services: Jälleen on mahdotonta tulla kokeneeksi DevOps-ammattilaiseksi ilman vankkaa ymmärrystä julkisen pilven toiminnasta. Ja jos haluat lisätietoja siitä, tutustu Amazon Web Services -palveluun. Se on johtava toimija tällä palvelualalla ja tarjoaa monipuolisimmat työvälineet.
Onko mahdollista aloittaa sen sijaan Google Cloudilla tai Azurella? Voit tietysti! Mutta viimeistä finanssikriisiä muistettaessa on syytä huomata, että AWS on turvallisin vaihtoehto ainakin vuonna 2018, sillä sen avulla voit rekisteröidä tilin ilmaiseksi ja alkaa tutkia pilvipalvelujen mahdollisuuksia. Lisäksi AWS-konsoli tarjoaa käyttäjälle yksinkertaisen ja selkeän valikon, josta valita. Hyvä uutinen on, että sinun ei tarvitse tuntea kaikkia Amazonin teknologioita tehdäksesi tämän.

Aloita seuraavista: VPC, EC2, IAM, S3, CloudWatch, ELB (elastic Load Balancing EC2-sateenvarjossa) ja Security Group. Nämä asiat riittävät alkuun pääsemiseen, ja jokainen moderni pilvipohjainen yritys käyttää näitä työkaluja melko aktiivisesti. AWS:n oma koulutussivusto on hyvä paikka aloittaa.
Suosittelen, että käytät 20–30 minuuttia päivittäin Python-kielen ja -käyttöjärjestelmän oppimiseen ja harjoitteluun. Linux ja AWS-pilvipalvelusta muiden opeteltavien asioiden lisäksi. Kaiken kaikkiaan uskon, että tunnin käyttäminen päivässä, viisi kertaa viikossa, riittää DevOps-alan prosessien ymmärtämiseen kuudessa kuukaudessa tai vähemmän. Pääkomponentteja on kuusi, joista jokainen vastaa kuukauden koulutusta. Tämä on kaikki mitä tarvitset perustietojen hankkimiseen.
Seuraavissa artikkeleissa tarkastellaan seuraavaa monimutkaisuuden tasoa: kuinka automatisoidaan täysin ohjelmiston konfigurointi, versiointi, pakkaus, käyttöönotto, käyttö ja valvonta.
Jatkuu pian...
Muutamia mainoksia 🙂
Kiitos, että pysyt kanssamme. Pidätkö artikkeleistamme? Haluatko nähdä mielenkiintoisempaa sisältöä? Tue meitä tekemällä tilauksen tai suosittelemalla ystäville, , ainutlaatuinen lähtötason palvelimien analogi, jonka me keksimme sinulle: (saatavana RAID1:n ja RAID10:n kanssa, jopa 24 ydintä ja jopa 40 Gt DDR4-muistia).
Dell R730xd 2 kertaa halvempi Equinix Tier IV -palvelinkeskuksessa Amsterdamissa? Vain täällä Alankomaissa! Dell R420 - 2x E5-2430 2.2 Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - alkaen 99 dollaria! Lukea
Lähde: will.com
