Varför systemadministratörer bör bli DevOps-ingenjörer

Varför systemadministratörer bör bli DevOps-ingenjörer

Det finns ingen bÀttre tid att lÀra sig i livet Àn idag.


Det Àr 2019 och Àmnet DevOps Àr mer aktuellt Àn nÄgonsin. Man sÀger att systemadministratörernas dagar Àr över, precis som epoken för mainframes. Men Àr det verkligen sÄ?
Som sÄ ofta i IT har situationen förÀndrats. DevOps-metodologin har dykt upp, men den kan inte existera utan en person med systemadministratörskompetens, det vill sÀga utan Ops.

Innan DevOps-ansatsen fick sin moderna form, sÄ tillhörde jag kategorin Ops. Och jag vet mycket vÀl hur en systemadministratör kÀnner nÀr de inser hur mycket de fortfarande inte kan och hur lite tid de har pÄ sig att lÀra sig.

Varför systemadministratörer bör bli DevOps-ingenjörer

Men Àr verkligen allt sÄ skrÀmmande? Jag skulle sÀga att man inte behöver se bristen pÄ kunskap som ett stort problem. Det Àr snarare en professionell utmaning.

Webskala-produkter Àr baserade pÄ Linux eller annan programvara med öppen kÀllkod, och pÄ marknaden finns det allt fÀrre specialister som kan underhÄlla dessa. EfterfrÄgan har redan överstigit antalet yrkesverksamma inom detta omrÄde. En systemadministratör kan inte lÀngre bara fortsÀtta arbeta utan att höja sin kompetensnivÄ. De mÄste ha automationskunskaper för att hantera mÄnga servrar/noder och förstÄ principerna för deras funktion för att lösa uppkommande problem.

Innan du blir medlem i ett DevOps-team, mÄste du genomgÄ en ganska lÄng men intressant resa, dÀr du lÀr dig nya teknologier och en rad olika verktyg som krÀvs för att underhÄlla systemet i enlighet med DevOps-standarder.

SÄ hur ska en systemadministratör gÄ frÄn det vanliga arbetssÀttet till den nya DevOps-konceptet? Som vanligt: först mÄste du förÀndra ditt tÀnkesÀtt. Det Àr inte lÀtt att ge upp det tillvÀgagÄngssÀtt du har följt de senaste tio eller tjugo Ären och börja göra allt pÄ ett nytt sÀtt, men det Àr nödvÀndigt.

Först och frÀmst Àr det viktigt att förstÄ att DevOps inte Àr en specifik tjÀnst i företaget, utan en uppsÀttning av vissa praktiker. Dessa praktiker inkluderar fördelning av isolerade system, minskning av skador frÄn buggar och fel, frekventa och punktliga uppdateringar av programvara, vÀlfungerande samarbete mellan utvecklare (Dev) och administratörer (Ops), samt stÀndig tester av bÄde kod och hela strukturen inom processen kontinuerlig integration och leverans (CI/CD).

I samband med förÀndringen av tankesÀttet behöver man lÀra sig att upprÀtthÄlla infrastrukturen och sÀkerstÀlla dess stabila drift, tillförlitlighet och tillgÀnglighet för kontinuerlig integration och leverans av applikationer, tjÀnster och programvara.

Vad du kanske saknar som Ops-specialist Àr programmeringskunskaper. Idag anses skrivning av skript, som systemadministratörer anvÀnder för att automatiskt installera patchar pÄ servrar, för att hantera filer och konton, för att ÄtgÀrda problem och skapa dokumentation, vara förÄldrat. I relativt enkla fall anvÀnds skript fortfarande, men DevOps-konceptet innebÀr att lösa storskaliga uppgifter, vare sig det handlar om implementering, testning, arbete med byggnationer eller driftsÀttning.

SÄledes, om du vill lÀra dig automatisering, behöver du Ätminstone ha en grundlÀggande förstÄelse för programmering, Àven om du inte Àr utvecklare, eftersom denna utvecklingsfas krÀver det. automatisering av infrastrukturen inom DevOps krÀver denna kompetens.

Vad göra? För att förbli en eftertraktad specialist mĂ„ste man skaffa sig aktuella fĂ€rdigheter – behĂ€rska minst ett programmeringssprĂ„k, exempelvis Python. För en person som professionellt arbetar med administration kan detta verka svĂ„rt, eftersom man har vant sig vid att tro att endast utvecklare programmerar. Det Ă€r inte nödvĂ€ndigt att bli expert, men att ha kunskaper inom ett av programmeringssprĂ„ken (det kan vara Python, Bash eller till och med Powershell), kommer tveklöst att vara en fördel.

För att lĂ€ra sig programmera behövs lite tid. Var uppmĂ€rksam och tĂ„lmodig – det hjĂ€lper dig att behĂ„lla förstĂ„elsen för situationen nĂ€r du kommunicerar med utvecklarna i DevOps-teamet och bestĂ€llarna. En halvtimme om dagen, en timme eller mer – lĂ€rande av ett programmeringssprĂ„k bör bli ditt huvudmĂ„l.

Systemadministratörer och DevOps-specialister hanterar liknande uppgifter, men det finns viktiga skillnader. Det anses att en systemadministratör inte kan göra allt det som en DevOps-ingenjör kan. En systemadministratör fokuserar mer pÄ att konfigurera, underhÄlla och sÀkerstÀlla drift av serversystem, medan en DevOps-ingenjör bÀr hela detta lass plus en liten vagn.

Men hur korrekt Àr detta pÄstÄende?

Systemadministratör: en ensam krigare i fÀltet

Trots de skillnader och likheter som nÀmns i den hÀr artikeln, anser jag fortfarande att det inte finns nÄgon betydande skillnad mellan systemadministration och DevOps. Systemadministratörer har alltid utfört de samma funktionerna som DevOps-specialister, bara att ingen tidigare kallade det DevOps. Jag anser att det Àr meningslöst att specifikt leta efter skillnader, sÀrskilt om det inte Àr kopplat till nÄgon konkret uppgift. Man bör heller inte glömma att, till skillnad frÄn systemadministratören, Àr DevOps inte en tjÀnst, utan ett koncept.

Det Àr viktigt att notera en annan aspekt, utan vilken ett samtal om bÄde administration och DevOps skulle vara ofullstÀndigt. Systemadministration i vanlig mening innebÀr att specialisten har en viss uppsÀttning fÀrdigheter och en inriktning pÄ att underhÄlla olika typer av infrastrukturer. Inte i den meningen att det Àr en universell medarbetare, utan i den meningen att det finns ett antal uppgifter som utförs av alla administratörer.

Till exempel mÄste de ibland agera som tekniska allroundare, det vill sÀga göra bokstavligen allt som behövs. Och om en sÄdan administratör Àr ensam för hela organisationen, sÄ kommer han eller hon att utföra allt tekniskt arbete. Det kan vara vad som helst: frÄn att underhÄlla skrivare och kopiatorer till att utföra uppgifter relaterade till nÀtverket, sÄsom att konfigurera och hantera routrar och switchar eller stÀlla in brandvÀggar.

Han kommer ocksĂ„ att ansvara för uppgradering av hĂ„rdvara, inspektion och analys av loggar, sĂ€kerhetsrevision, installation av patchar pĂ„ servern, felsökning, analys av grundorsaker och automatisering – vanligtvis via PowerShell, Python eller Bash-skript. Ett exempel pĂ„ anvĂ€ndning av skript Ă€r hantering av anvĂ€ndarkonton och grupper. Att skapa anvĂ€ndarkonton och tilldela behörigheter Ă€r en oerhört trĂ„kig uppgift, eftersom anvĂ€ndare kommer och gĂ„r nĂ€stan dagligen. Automatisering via skript frigör tid för att hantera mer viktiga infrastrukturuppgifter, som att uppgradera switchar och servrar samt utföra andra projekt som pĂ„verkar företagets lönsamhet, dĂ€r administratören arbetar (Ă€ven om det Ă€r allmĂ€nt accepterat att IT-avdelningen inte direkt genererar intĂ€kter).

Systemadministratörens uppgift Àr att inte slösa tid och spara företags kostnader pÄ alla möjliga sÀtt. Ibland arbetar systemadministratörer som medlemmar i ett stort team som förenar till exempel Linux-, Windows-, databas- och lagringsadministratörer. Arbetsschema kan ocksÄ variera. Till exempel kan ett skift i en tidszon i slutet av dagen överlÀmna Àrenden till nÀsta skift i en annan tidszon, sÄ att processerna inte stannar (follow-the-sun); eller sÄ har anstÀllda en vanlig arbetsdag frÄn 9 till 17; eller sÄ arbetar de i ett dygnet-runt datacenter.

Med tiden har systemadministratörer lÀrt sig att tÀnka strategiskt och kombinera viktiga Àrenden med rutinÀrenden. Team och avdelningar dÀr de arbetar har ofta brist pÄ resurser, men alla försöker ÀndÄ att slutföra sina dagliga uppgifter i sin helhet.

DevOps: utveckling och underhÄll av enhetlig

DevOps Àr en sorts filosofi för utvecklings- och underhÄllsprocesser. Denna metod har verkligen blivit banbrytande inom IT.

Under the auspices of DevOps, on one side works a team of software developers, while on the other side is a team of support specialists. Frequently, product managers, testers, and user interface designers join them. By combining their efforts, these specialists optimize operational processes to quickly release new applications and update code to support and enhance the efficiency of the entire company.

At the core of DevOps is the monitoring of software development and operation throughout the entire lifecycle. Support specialists must assist developers, while developers need to understand not just the APIs used in systems. They must grasp what’s ‘under the hood’ (that is, how hardware and operating systems function) to better handle errors, solve problems, and interact with support specialists.

System administrators can transition to the DevOps team if they want to learn about cutting-edge technologies and are open to innovative ideas and solutions. As I mentioned, they don’t need to become full-fledged programmers, but mastering programming languages such as Ruby, Python, or Go will help them become very valuable team members. While system administrators traditionally perform all the work independently and are often seen as loners, in DevOps they will have an entirely opposite experience, where all participants interact with one another.

The topic of automation is becoming increasingly relevant. Both system administrators and DevOps specialists are interested in operational scaling, reducing errors, as well as quickly finding and resolving existing issues. Thus, automation is a concept where the two areas converge. System administrators are responsible for cloud services such as AWS, Azure, and Google Cloud Platform. They must understand the principles of continuous integration and delivery, and how to use tools like Jenkins.

Additionally, system administrators should employ configuration and management tools such as Ansible, nödvÀndiga för parallell distribution av tio eller tjugo servrar.

Det grundlÀggande begreppet Àr infrastruktur som kod. Programvara i allt. I grund och botten, för att yrket systemadministratör inte ska tappa sin relevans, behöver man bara Àndra fokus lite. Systemadministratörer sysslar med underhÄll och mÄste kunna samarbeta effektivt med utvecklare, och vice versa. Som man sÀger, en hjÀrna Àr bra, men tvÄ Àr bÀttre.

Och den sista detaljen i denna mekanism Àr Git. Arbeta med Git Àr en av de traditionella dagliga uppgifterna för systemadministratören. Detta versionshanteringssystem anvÀnds allmÀnt av utvecklare, DevOps-specialister, Agile-team och mÄnga andra. Om ditt arbete Àr relaterat till livscykeln för programvara, kommer du definitivt att arbeta med Git.

Git har massor av möjligheter. Du kommer förmodligen aldrig att lÀra dig alla Git-kommandon, men du kommer förstÄ varför detta verktyg anses vara det frÀmsta i kommunikation och samarbete kring programvara. En grundlig kunskap om Git Àr mycket viktig om du arbetar i ett DevOps-team.

Om du Àr systemadministratör, behöver du studera Git noggrant, förstÄ hur versionshantering fungerar och memorera vanliga kommandon: git status, git commit -m, git add, git pull, git push, git rebase, git branch, git diff och andra. Det finns mÄnga onlinekurser och böcker som kan hjÀlpa dig att lÀra dig detta Àmne frÄn grunden och bli en professionell med specifika fÀrdigheter. Det finns ocksÄ fantastiska snabbguider med Git-kommandon, sÄ det Àr inte nödvÀndigt att kunna dem alla utantill, men ju mer du anvÀnder Git, desto enklare blir det för dig.

Slutsats

I slutÀndan Àr det du som avgör om du vill bli en DevOps-specialist eller om det Àr bÀttre att stanna kvar som systemadministratör. Som du ser, krÀver övergÄngen utbildning, men ju tidigare du börjar, desto bÀttre. VÀlj ett programmeringssprÄk och studera parallellt sÄdana verktyg som Git (versionshantering), Jenkins (CI/CD, kontinuerlig integration) och Ansible (konfigurering och automatisering). Oavsett vilket alternativ du vÀljer, kom ihÄg att du stÀndigt behöver lÀra dig och förbÀttra dina fÀrdigheter.

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster