Obsah[Skryť][Šou]
DevOps je zmesou filozofií, nástrojov a postupov, ktorých cieľom je pomôcť organizáciám rýchlo dodávať aplikácie.
Tímy, ktoré si osvoja model DevOps, investujú do schopnosti lepšie slúžiť svojim klientom a opakovať ich rýchlejšie ako ich konkurenti.
Model DevOps, ako už názov napovedá, spája dohromady vývojové a prevádzkové tímy. Inžinieri DevOps často spolupracujú počas celého životného cyklu aplikácie.
To znamená, že vývoj, testovanie, nasadzovanie a údržbu riadi veľa tých istých ľudí.
Prax DevOps podporuje lepšie a rýchlejšie doručenie ku koncovému zákazníkovi.
Tím môže mať napríklad rýchlejší čas potrebný na identifikáciu chyby, jej vyriešenie a nasadenie opravy.
Tím môže použiť DevOps na rýchlejšie testovanie nových funkcií a neustále vydávať nové aktualizácie pre zákazníka.
Tento článok sa bude zaoberať tým, čo inžinieri DevOps skutočne robia. Potom si prejdeme zručnosti, ktoré musia mať inžinieri DevOps, aby vynikli vo svojich úlohách.
Čo robí DevOps Engineer?
Inžinier DevOps je veľmi náročná úloha. Musí mať rozsiahle znalosti, ktoré zahŕňajú vývoj aj prevádzku.
Keďže budú pôsobiť ako most medzi oboma tímami, musia zvládnuť aj rozhovory s mnohými ľuďmi.
Inžinieri DevOps už majú bežne skúsenosti s obvyklou sadou vývojárskych nástrojov. Často pomáhajú pri vytváraní aplikačného kódu a udržiavaní kanála CI/CD.
Zároveň majú na starosti aj správu systému a správu infraštruktúry.
To zahŕňa nasadenie serverov a cloudových zdrojov, kde budú hostované aplikácie. To by mohlo zahŕňať buď servery na mieste alebo virtuálne inštancie poskytované cloudovými technológiami.
7 najlepších zručností pre inžinierov DevOps
1. Základy Linuxu a skriptovanie
Linux je open source operačný systém, ktorý sa nachádza na všetkých typoch počítačov. OS je populárny pri vývoji DevOps z mnohých dôvodov.
Počítače so systémom Linux sú vysoko stabilné a možno im dôverovať, že bežia 24 hodín denne, 7 dní v týždni bez nutnosti reštartovania. Operačný systém je oveľa bezpečnejší v porovnaní s užívateľsky prívetivejším operačným systémom, akým je Windows.
Vedieť, ako efektívne využívať prostredie Linuxu, je základnou zručnosťou inžiniera DevOps. Väčšina spoločností používa na spustenie svojich rozsiahlych aplikácií prostredie Linux.
Úspešný inžinier by mal poznať najbežnejšie príkazy v Linuxe a mal by vedieť tvoriť shell skripty pre opakujúce sa alebo plánované úlohy.
2. Kontajnery a orchestrácia kontajnerov
Kontajnerizácia je proces umiestnenia softvérového komponentu a jeho prostredia, závislostí a konfigurácie do jednej jednotky známej ako kontajner.
Kontajnery je možné spustiť a nastaviť kdekoľvek, čo je výhodné pre DevOps. Kontajnery sú ľahké a ľahko sa prenášajú z jedného tímu do druhého.
Orchesterizácia kontajnerov sa týka automatizácie prevádzkového úsilia potrebného na spustenie kontajnerových aplikácií a služieb. Inžinieri DevOps by mali byť oboznámení s nasadzovaním a škálovaním kontajnerových prostredí.
prístavný robotník je populárna platforma pre tímy DevOps, ktorá vám môže pomôcť zabaliť vašu aplikáciu do distribuovateľného kontajnera.
3. Nepretržitá integrácia a nepretržité poskytovanie
Nepretržitá integrácia (CI) označuje súbor postupov, ktoré povzbudzujú tímy k častej implementácii malých zmien. CI sa zameriava na automatizáciu vytvárania, balenia a testovania aplikácií.
Nepretržité doručovanie (CD) automatizuje doručovanie aplikácií. Môže to byť vloženie nového odovzdania do testovacieho prostredia alebo vloženie najnovšej verzie vášho softvéru do produkčného prostredia.
Inžinieri DevOps by mali byť oboznámení s potrubím CI/CD, pretože podporuje rýchlejšie iterácie a častejšie testovanie.
Inžinieri môžu použiť kontrola verzie vetvenia, aby sa definovalo, ako sa novo pridaný kód integruje do testovacieho prostredia a konečného produktu.
4. Správa systému
Zatiaľ čo typický správca systému nemá žiadnu úlohu pri vývoji softvéru, na ktorý pomáhajú dohliadať, inžinier DevOps musí dobre rozumieť vývojovej stránke.
Inžinieri SysAdmin a DevOps zdieľajú niektoré spoločné povinnosti.
Inžinieri DevOps musia stále vedieť, ako konfigurovať a spravovať viacero počítačových systémov a serverov. Medzi bežné úlohy patrí vytváranie a správa používateľských účtov, údržba databáz a reagovanie na výpadky systému.
5. Bezpečnostné školenie
Zabezpečenie DevOps zahŕňa pochopenie toho, ako možno bezpečnosť zabudovať do všetkých fáz životného cyklu DevOps.
Inžinieri by mali vedieť, ako správne zaobchádzať s prístupovými oprávneniami, kľúčmi SSH, tokenmi API atď.
Typické prostredie DevOps má rôzne nástroje, z ktorých všetky vyžadujú vlastnú správu tajomstiev.
Kvalifikovaní inžinieri DevOps kontrolujú, monitorujú a kontrolujú rôzne privilegované prístupové práva. Inžinieri by si tiež mali uvedomiť možné zraniteľnosti ako v samotnej aplikácii, tak aj v rôznych závislostiach, na ktoré sa môže spoliehať.
6. Architektúra systému a poskytovanie
Inžinieri DevOps by mali byť schopní navrhovať a spravovať počítačový ekosystém organizácie.
Inžinieri ťažia z pochopenia procesu Infrastructure as Code (IaC). IaC sa zameriava na automatizáciu konfigurácie a správy dátových centier vašej siete.
Cloudové služby ponúkajú virtuálne stroje, ktoré môžu inžinieri použiť na testovanie svojich aplikácií vo veľkom rozsahu v ranom štádiu.
To môže poskytnúť vývojárom jasný obraz o tom, aké typy konfigurácií hardvéru sú potrebné na spustenie aplikácie pri jej spustení.
Napríklad, Azure Resource Manager poskytuje vrstvu správy, ktorá vám umožňuje vytvárať, aktualizovať a odstraňovať prostriedky v cloude.
7. Komunikácia a spolupráca
Aby filozofia DevOps fungovala v organizácii, každý tím si musí osvojiť správnu komunikáciu a spoluprácu.
Cieľom DevOps je odstrániť „silá“ vývoja softvéru, kde sa rôzne tímy zameriavajú na aspekt projektu súvisiaci s ich úlohou. Silá vedú k problémom s komunikáciou a tímy môžu mať nesprávne nastavené ciele pre daný projekt.
Inžinier DevOps by mal prijať otvorenú a transparentnú komunikáciu. Pravidelné stretnutia a rozsiahla vedomostná základňa môžu pomôcť udržať každý tím na rovnakej vlne.
Skvelý inžinier DevOps funguje najlepšie pri spolupráci s ostatnými a je otvorený zdieľaniu svojich myšlienok a návrhov s ostatnými.
záver
Úlohy DevOps vzrástli v popularite a dopyte. Najmä inžinieri DevOps vyžadujú široký súbor multidisciplinárnych zručností, čo môže znieť odstrašujúco.
Hoci je rola pomerne náročná, každý, kto má skúsenosti s aspoň jedným aspektom DevOps, sa môže začať venovať tejto vytúženej úlohe.
Základná filozofia DevOps podporuje kultúru spolupráce a neustáleho učenia sa.
Pokiaľ preukážete vášeň pre učenie sa nových technológií a schopnosť sledovať povinnosti zahŕňajúce viacero disciplín, máte na to, aby ste boli dobrým inžinierom DevOps.
Nechaj odpoveď