devops automation how is automation applied devops practice
Automatizácia v DevOps:
V minulom tutoriáli sme sa dozvedeli dôležitosť Ovládanie zdroja v DevOps . Tu sa v tomto výučbe dozvieme o automatizácii v DevOps.
Automatizácia je najvyššou potrebou pre prax DevOps a ‘Automatizovať všetko’ je kľúčovým princípom DevOps. V DevOps začína automatizácia od generovania kódu na stroji vývojárov, až kým sa kód nezatlačí do kódu, a dokonca potom monitorovať aplikáciu a systém vo výrobe.
Navrhované čítanie => Informatívna séria výučbových programov DevOps
Celý kanál DevOps obsahujúci nepretržitú integráciu, nepretržité testovanie a nepretržité nasadenie vrátane sledovania výkonu aplikácií naživo je automatizovaný.
Automatizácia nastavenia a konfigurácie infraštruktúry a nasadenie softvéru je kľúčovým vrcholom praxe DevOps. Prax DevOps je do značnej miery závislá od automatizácie, aby bolo možné dodávať v priebehu niekoľkých hodín a vykonávať časté dodávky naprieč platformami.
Automatizácia v DevOps teda podporuje rýchlosť, vyššiu presnosť, konzistenciu, spoľahlivosť a zvyšuje počet dodávok. Nakoniec, automatizácia v DevOps zapuzdruje všetko od stavby, nasadenia a monitorovania.
VIDEO Časť 2 Blok 3: Automatizácia DevOps- 16 minút a 40 sekúnd
Poďme v tomto výučbe podrobne pochopiť význam automatizácie v praxi DevOps.
Tu budeme diskutovať o:
- Ako sa automatizácia uplatňuje v praxi DevOps?
- Potreba a úloha automatizácie?
- Čo automatizovať?
- Nástroje a rámec, neustále testovanie?
Trochu sa bojím hovoriť o automatizácii. Pretože koľko hovorím o automatizácii, podľa mňa nikdy nie je úplná.
Netreba dodávať, že automatizácia sa jednoducho vymyká manuálnym úlohám. Ľudia chcú obmedziť svoje zapojenie do bežných pozemských úloh a využiť svoj čas a inteligenciu na niečo nové alebo inovatívne.
Z tohto dôvodu je úloha automatizácie v DevOps veľmi dôležitá a veľmi dôležitá pri neustálom poskytovaní hodnoty zákazníkom.
Poďme si spoločne odpovedať, ako sa automatizácia uplatňuje v praxi DevOps spolu s tým, čo sa má automatizovať, pretože obe tieto otázky dostanú odpoveď spoločne.
Čo automatizovať?
Myslím si, že v tejto automatizovanej ére nie je potrebné veľa vysvetlení pre odpoveď na túto otázku. Kamkoľvek ideme, vidíme veci, ktoré sa automatizujú, či už s minimálnym alebo žiadnym ľudským zásahom. DevOps teda nie je výnimkou.
Pri tradičnej metóde vývoja softvéru to bol iba vývojový tím a jeho činnosti, ktoré sa zvykli automatizovať, konkrétne testovanie. Bývalo to tak, že automatizácia znamená testovanie a automatizáciu testovacích prípadov, teda iba funkčné testovacie prípady, ale dokonca ani nefunkčné testovanie, ako je výkon a bezpečnosť.
A žiadna z ďalších aktivít, najmä operačných, sa nepoužívala na automatizáciu. Zlyhanie manuálneho nasadenia na obrovskom klastri, ktoré zahŕňalo 8 serverov, a strata, ktorú spôsobil, je veľmi dobrá Príklad zložitosti nasadenia a jasne vysvetľuje potrebu automatizácie činností Devops.
ako spustiť testovanie automatizácie od nuly
Videl som sám seba, že organizácie najímajúce vysoko kvalifikovaných a inteligentných ľudí platením obrovských platových balíkov za konfiguráciu sietí a prostredí, ktoré robili na základe svojich inteligencií, znalostí v príslušnej oblasti, svojich skúseností a odborných znalostí, ktoré boli úplná manuálna práca.
Ako každý vie, manuálna konfigurácia je vždy náchylná na chyby. V prípade manuálneho nastavenia sa zvyčajne stalo, že po určitom čase, po opakovanom opakovaní tej istej práce, sa títo inteligentní ľudia, sieťoví konfigurátori zvyknú nudiť týmito činnosťami a dopúšťať sa chýb kvôli k nedbanlivosti.
Viete, že sú veľmi geniálni a tieto činnosti budú pre nich veľmi jednoduché a nezaujímavé a každý deň potrebujú nové výzvy, a nie túto nudnú úlohu.
Takže zavedenie automatizácie pre inštaláciu softvéru a riadenie verzií časti infraštruktúry sa stalo obrovským ziskom a znížilo množstvo ľudských chýb, okrem úspory času a umožnilo to každému bežnému človeku, čím sa odstránila závislosť od kvalifikovaných pracovníkov.
Tiež behaním po procesoch, ak sa má vytvoriť nové prostredie, ako napríklad zdvihnutím lístka na nastavenie nového prostredia, IT tím pracujúci zozadu pri jeho nastavovaní, sa odstránia všetky tieto ťažkosti.
Jednotliví členovia tímu sú tak splnomocnení vykonávať úlohy. Predstavte si rýchlosť, spoľahlivosť a konzistenciu, ktorú dosahuje automatizácia. Takže sa strašne zvýšila automatizácia, počet dodávok do výroby.
Takže teraz v praxi DevOps začal operačný tím tiež automatizovať všetky svoje práce, čo sa stalo kľúčom k úspechu DevOps.
V praxi v praxi DevOps začína automatizácia od generovania kódu na vývojárskom stroji, až kým sa kód nedostane do výroby, a dokonca ani potom, keď bude monitorovaná aplikácia naživo. Toto je typický cyklus DevOps.
Vývojový a operačný tím kontroluje konfigurácie kódu a prostredia až po kontrolu zdroja, odkiaľ sa spustí automatizácia pri spustení zostavy, spustení testovacích prípadov jednotiek a ďalšej základnej kvality kódu, testovacích prípadov pokrytia, testovacích prípadov súvisiacich so zabezpečením atď.
Po dokončení tohto kódu sa kód automaticky kompiluje, uloží do riadenia verzií a automaticky sa nasadí do ďalších prostredí na ďalšie testovanie a nakoniec do produkčného vydania.
Vidíme automatizáciu, ktorá sa vykonáva v každej fáze vývoja, počnúc spustením zostavy, vykonaním testovania jednotky, zabalením, nasadením do určených prostredí, vykonaním overovacích testov zostavy, dymovými testami, prípadmi testov prijatia a nakoniec nasadením. do finálneho produkčného prostredia.
softvér na stiahnutie videa z ktorejkoľvek stránky
Aj keď hovoríme o automatizácii testovacích prípadov, nejde iba o testy jednotky, ale aj testy inštalácie, testy integrácie, testy používateľských skúseností, testy používateľského rozhrania atď.
DevOps núti operačný tím, aby okrem vývojových aktivít automatizoval všetky svoje činnosti, ako napríklad poskytovanie serverov, konfigurácia serverov, konfigurácia sietí, konfigurácia brán firewall, monitorovanie aplikácie vo výrobnom systéme.
Preto je potrebné odpovedať na to, čo sa má automatizovať, a to spúšťač zostavy, kompilácia a budovanie, nasadenie alebo inštalácia, automatizácia infraštruktúry nastavenej ako kódovaný skript, konfigurácie prostredia ako kódovaný skript, netreba spomínať testovanie, monitorovanie životného výkonu po nasadení v živote, monitoruje protokoly, monitoruje výstrahy, tlačí upozornenia na živé a prijíma výstrahy zo živého v prípade akýchkoľvek chýb a varovaní atď.,
Nakoniec automatizácia všetkých dokumentov súvisiacich s projektom.
Môžem teda povedať, že automatizácia v jazykových prostriedkoch DevOps, nepretržitá integrácia, nepretržité testovanie, nepretržité nasadenie a nepretržité doručovanie. Každú z nich si podrobne preštudujeme v nasledujúcich častiach.
Celkovo DevOps umožňuje každú činnosť vývoja a operácií, kedykoľvek je to možné, podľa toho, čo je automatizovateľné, podľa toho, čo je opakovateľné, kdekoľvek je požadovaná presnosť, podľa toho, čo trvá dlho, je automatizované.
Ak však nehovoríme o nástrojoch, ktoré sa majú použiť na automatizáciu, diskusia o automatizácii je neúplná.
Takže výber správneho rámca a automatizačného nástroja je kľúčovou požiadavkou na automatizáciu v DevOps.
Na trhu je k dispozícii veľa nástrojov, a to ako open source, tak aj s licencovanými nástrojmi, ktoré podporujú automatizáciu celého dodávateľského reťazca medzi koncovými bodmi, vrátane aktivít vykonávaných tímom Ops, zaisťovacích strojov, rotujúcich automatizovaných serverov, konfigurácie sietí, brán firewall, a dokonca aj sledovanie výkonu softvéru.
Niektoré organizácie tiež vyvinuli svoj vlastný rámec na integráciu komplexného procesu DevOps, ktorý začína od odovzdania kódu po nasadenie kódu, vrátane dokumentácie, ktorá je jediným integrovaným nástrojom, a tím nemusí ísť mimo rámec pre nič súvisiace. programovať, či už je to kontrola verzie, písanie testovacích prípadov, kontrola, ukladanie výsledkov testovacích prípadov, analýza atď.,
Napr .: bábka, manažér zdrojov Azure, kuchár atď.,
Výhody automatizácie v DevOps
Videli sme skoršie vydania, pri absencii automatizácie, ktorá sa roky dostala do výroby, a tiež nedávno s agilnými, či už štíhlymi, skrumážnymi alebo bezpečnými, a s vylepšením percenta automatizácie sa termíny vydaní skracujú na niekoľko mesiacov alebo týždňov.
Ale automatizácia je nevyhnutnosťou, aby boli vydania čo najrýchlejšie za pár hodín. Takže si myslím, že je nemožné urobiť také rýchle a časté vydania, pokiaľ nezavedieme automatizáciu v celom potrubí.
Je teda zrejmé, že ak chceme dosiahnuť ciele DevOps, vysokej kvality a hodnoty dodávanej zákazníkom prostredníctvom častých a rýchlych dodávok, je automatizácia všetkého nevyhnutnosťou.
Je zrejmé, že už vieme, že automatizácia odstraňuje manuálne chyby, závislosť od jednotlivca, dosahuje rýchlejšie výsledky a dosahuje presnosť, čím sa dosahuje konzistencia a spoľahlivosť. Preto automatizácia všetkého umožňuje cieľ devops - vysoko kvalitné doručenie, umožňuje časté a rýchlejšie vydania.
Stručne povedané, automatizácia,
- Odstráni ručné chyby
- Členovia tímu sú oprávnení
- Závislosť odstránená
- Latencia bola odstránená
- Zvyšuje počet dodávok
- Skracuje čas potrebný na prípravu
- Zvyšuje frekvenciu vypúšťania
- Poskytuje rýchlejšiu spätnú väzbu
- Umožňuje rýchlosť, spoľahlivosť a dôslednosť
Stručne povedané, automatizácia v DevOps nakoniec všetko zapuzdruje od stavby, nasadenia a monitorovania.
Výukový program PREV | NEXT Tutorial
Odporúčané čítanie
- Dôležitosť malých prírastkov dodávok v DevOps
- Ovládanie zdroja alebo riadenia verzií v DevOps (videonávod, časť 2 - blok 2)
- Výukový program DevOps: Najdôležitejší sprievodca DevOps (25+ výučbových programov)
- Prax DevOps založená na agilnom manifeste (časť 2 - blok 1)
- Výukový program pre testovanie DevOps: Ako DevOps ovplyvní testovanie kvality?
- Výukový program AWS CodeCommit pre implementáciu DevOps v cloude
- Výukový program pre automatizáciu SeeTest: Sprievodca nástrojom na automatizáciu mobilných testov
- Nepretržité doručovanie v DevOps