Nincs jobb idő a tanulásra az életben, mint ma.
2019 van, és a DevOps relevánsabb, mint valaha. Azt mondják, hogy a rendszergazdák kora véget ért, akárcsak a mainframe korszaka. De ez tényleg így van?
Ahogy az informatikában lenni szokott, a helyzet megváltozott. A DevOps módszertan megjelent, de nem létezhet rendszergazdai képességekkel rendelkező személy, vagyis Ops nélkül.
Mielőtt a DevOps megközelítés modern formáját öltötte volna, besoroltam magam az Ops-ba. És nagyon jól tudom, mit él meg egy rendszergazda, amikor rájön, mennyi mindent nem tud még megtenni, és milyen kevés ideje van ennek megtanulására.
De tényleg ennyire ijesztő? Azt mondanám, hogy a tudás hiányát nem szabad valamiféle nagy problémaként felfogni. Ez inkább szakmai kihívás.
A webes méretű termékek Linuxra vagy más nyílt forráskódú szoftverekre épülnek, és egyre kevesebb ember van a piacon, aki képes ezeket fenntartani. A kereslet már meghaladta az ezen a területen dolgozó szakemberek számát. A rendszeradminisztrátor többé nem tud egyszerűen tovább dolgozni anélkül, hogy ne javítaná képzettségi szintjét. Automatizálási készségekkel kell rendelkeznie több szerver/csomópont kezeléséhez, és jól ismernie kell a felmerülő problémák megoldását.
Mielőtt a DevOps csapat tagja leszel, elég hosszú, de érdekes utat kell végigjárnod, új technológiákat és különféle eszközöket kell megtanulnod, amelyek szükségesek a rendszer DevOps szabványok szerinti karbantartásához.
Hogyan tud tehát egy rendszergazda a szokásos munkamódszerről áttérni a DevOps új koncepciójára? Minden a szokásos módon történik: először meg kell változtatnod a gondolkodásodat. Nem könnyű feladni az elmúlt tíz-húsz évben követett megközelítést, és másképp kezdeni a dolgokat, de szükséges.
Először is fontos megérteni, hogy a DevOps nem egy konkrét pozíció egy vállalatnál, hanem konkrét gyakorlatok összessége. Ez a gyakorlat magában foglalja az elszigetelt rendszerek szétosztását, a hibák és hibák okozta károk csökkentését, a gyakori és időszerű szoftverfrissítéseket, a jól bevált interakciót a fejlesztők (Dev) és a rendszergazdák (Ops) között, valamint nem csak a kód, hanem a folyamatos tesztelést. a folyamaton belüli teljes szerkezetet is
A gondolkodásmód megváltoztatásával párhuzamosan meg kell tanulni az infrastruktúra karbantartását és annak stabil működését, megbízhatóságát és rendelkezésre állását az alkalmazások, szolgáltatások és szoftverek folyamatos integrációjához és szállításához.
Az Ops szakembereként a programozási ismeretek hiányozhatnak. Ma már elavultnak számít a szkriptek (scriptek) írása, amelyeket a rendszergazdák a javítások automatikus telepítésére, a fájlok és fiókok kezelésére, a problémák elhárítására és a dokumentáció összeállítására használnak. A szkriptelés viszonylag egyszerű esetekben továbbra is alkalmazható, de a DevOps a nagy léptékű problémák megoldásáról szól, legyen szó megvalósításról, tesztelésről, összeállításról vagy telepítésről.
Így ha automatizálást akarsz tanulni, legalább egy kicsit el kell sajátítanod a programozást, még akkor is, ha nem vagy fejlesztő, mert a fejlesztésnek ebben a szakaszában
Mit kell tenni? Ahhoz, hogy szakemberként továbbra is kereslet maradjon, meg kell szereznie a megfelelő készségeket - el kell sajátítania legalább egy programozási nyelvet, például a Pythont. Ez nehéznek tűnhet annak, aki hivatásszerűen foglalkozik az adminisztrációval, hiszen hozzászokott, hogy csak a fejlesztők programoznak. Nem kell szakértővé válni, hanem valamelyik programozási nyelv ismerete (lehet Python, Bash vagy akár
A programozás megtanulása eltart egy ideig. Ha figyelmes és türelmes, akkor a DevOps csapattagjaival és ügyfeleivel folytatott kommunikáció során mindig naprakész marad. Napi fél óra, egy óra vagy több programozási nyelv tanulása legyen a fő cél.
A rendszergazdák és a DevOps szakemberek hasonló problémákat oldanak meg, azonban jelentős különbségek vannak. Úgy gondolják, hogy a rendszergazda nem tud mindent megtenni, amit egy DevOps mérnök. Azt mondják, hogy a rendszergazda inkább a szerverrendszerek konfigurálására, karbantartására és teljesítményének biztosítására koncentrál, de a DevOps mérnöke húzza ezt a kocsit és még egy kis kocsit.
De mennyire igaz ez az állítás?
Rendszergazda: egy harcos a mezőn
A cikkben említett különbségek és hasonlóságok ellenére továbbra is úgy gondolom, hogy nincs jelentős különbség a rendszeradminisztráció és a DevOps között. A rendszergazdák mindig ugyanazokat a funkciókat látták el, mint a DevOps-specialisták, csak azt, hogy korábban senki sem nevezte DevOps-nak. Úgy gondolom, hogy nincs értelme kifejezetten a különbségeket keresni, pláne, ha ez nem kapcsolódik semmilyen feladathoz. Ne felejtsük el, hogy a rendszergazdákkal ellentétben a DevOps nem pozíció, hanem koncepció.
Még egy fontos dolgot meg kell jegyeznünk, amely nélkül az adminisztrációról és a DevOps-ról szóló beszélgetés nem lesz teljes. A szokásos értelemben vett rendszeradminisztráció azt feltételezi, hogy a szakember meghatározott készségekkel rendelkezik, és különböző típusú infrastruktúrák kiszolgálására összpontosít. Nem abban az értelemben, hogy ez egy univerzális alkalmazott, hanem abban az értelemben, hogy számos feladatot minden adminisztrátor végez.
Például időnként egyfajta technikai ezermesterként kell fellépniük, vagyis szó szerint mindent meg kell csinálniuk. És ha csak egy ilyen rendszergazda van az egész szervezetben, akkor általában ő végzi el az összes technikai munkát. Ez bármi lehet a nyomtatók és fénymásolók karbantartásától a hálózattal kapcsolatos feladatok elvégzéséig, mint például az útválasztók és kapcsolók beállítása és kezelése vagy a tűzfal konfigurálása.
Feladata lesz továbbá a hardverfrissítések, a naplóvizsgálatok és -elemzések, a biztonsági auditok, a szerverfoltozás, a hibaelhárítás, a kiváltó okok elemzése és az automatizálás – jellemzően PowerShell, Python vagy Bash szkripteken keresztül. Egy példa a felhasználásra
A rendszergazdának az a feladata, hogy ne veszítse el az időt, és semmilyen módon ne takarítsa meg a cég pénzt. Néha a rendszergazdák egy nagy csapat tagjaként dolgoznak, például Linux-, Windows-, adatbázis-, tároló- stb. rendszergazdákat kombinálva. A munkarend is változó. Például egy időzóna eltolódása a nap végén átviszi az eseteket egy másik időzóna következő műszakába, így a folyamatok nem állnak le (napkövetés); vagy a munkavállalók szokásos munkanapja 9 órától 5 óráig tart; vagy XNUMX órás adatközpontban működik.
Idővel a rendszergazdák megtanultak stratégiailag gondolkodni, és a fontos dolgokat a rutinfeladatokkal kombinálni. A csapatok és részlegek, ahol dolgoznak, általában forráshiányban vannak, ugyanakkor mindenki igyekszik a lehető legteljesebb mértékben elvégezni a napi feladatokat.
DevOps: fejlesztés és karbantartás egyben
A DevOps égisze alatt az egyik oldalon egy szoftverfejlesztő csapat, a másikon pedig egy karbantartó csapat található. Gyakran csatlakoznak hozzájuk termékmenedzsment-specialisták, tesztelők és felhasználói felület-tervezők. Ezek a szakértők együtt egyszerűsítik a műveleteket az új alkalmazások és kódfrissítések gyors bevezetése érdekében, amelyek támogatják és javítják az egész vállalat hatékonyságát.
A DevOps a szoftver fejlesztésének és működésének ellenőrzésén alapul annak teljes életciklusa során. A karbantartóknak támogatniuk kell a fejlesztőket, és a fejlesztők feladata nem csupán a rendszerekben használt API-k megértése. Meg kell érteniük, mi van a burkolat alatt (azaz hogyan működnek a hardverek és az operációs rendszerek), hogy jobban tudják kezelni a hibákat, megoldani a problémákat, és kapcsolatba léphessenek a szerviztechnikusokkal.
A rendszergazdák beköltözhetnek egy DevOps csapatba, ha meg akarják tanulni a legújabb technológiákat, és nyitottak az innovatív ötletekre és megoldásokra. Ahogy korábban is mondtam, nem kell teljes értékű programozónak lenniük, de egy olyan programozási nyelv elsajátítása, mint a Ruby, a Python vagy a Go, segít abban, hogy nagyon hasznos tagjaivá váljanak a csapatnak. Noha a rendszergazdák hagyományosan minden munkát maguk végeznek, és gyakran magányosnak tekintik őket, a DevOps-ban teljesen ellentétes tapasztalattal rendelkeznek, ahol a folyamat során mindenki interakcióba lép egymással.
Az automatizálás témája egyre aktuálisabb. Mind a rendszeradminisztrátorok, mind a DevOps szakértők érdekeltek a gyors méretezésben, a hibák csökkentésében, valamint a meglévő hibák gyors megtalálásában és kijavításában. Így az automatizálás egy olyan fogalom, amelyben két terület konvergál. A rendszergazdák felelősek a felhőszolgáltatásokért, például az AWS-ért, az Azure-ért és a Google Cloud Platformért. Meg kell érteniük a folyamatos integráció és szállítás alapelveit, valamint az olyan eszközök használatát, mint pl
Ezenkívül a rendszergazdáknak konfigurációs és felügyeleti eszközöket kell használniuk, mint pl
A fő koncepció az
És ennek a mechanizmusnak az utolsó részlete
A Gitnek sok funkciója van. Valószínűleg soha nem fogja megtanulni az összes Git-parancsot, de pontosan meg fogja érteni, hogy ez miért alapvető a szoftveres kommunikációban és az együttműködésben. A Git alapos ismerete nagyon fontos, ha DevOps csapatban dolgozik.
Ha Ön rendszergazda, akkor jobban meg kell tanulnia a Git-et, meg kell értenie, hogyan épül fel a verziókezelés, és emlékeznie kell a gyakori parancsokra: git állapot, git commit -m, git add, git pull, git push, git rebase, git ág, git diff és mások. Számos online tanfolyam és könyv segít megtanulni ezt a témát a semmiből, és speciális képességekkel rendelkező szakemberré válni. Vannak csodálatosak is
Következtetés
Végül Ön dönti el, hogy DevOps-szakértővé kell-e válnia, vagy jobb, ha rendszergazda marad. Amint látja, van egy tanulási görbe az átálláshoz, de minél hamarabb elkezdi, annál jobb. Válasszon programozási nyelvet, és egyidejűleg tanuljon meg olyan eszközöket, mint pl
Forrás: will.com