devops tutorial ultimate guide devops
Toto je kompletná séria výučbových programov pre DevOps s 25 a viac textovými a videonávodmi, ktorá pokrýva všetky aspekty DevOps, ako napríklad Čo je to DevOps, princípy DevOps a jeho architekt.
Zoznam návodov v sérii školení DevOps:
# 1) Úvod do DevOps (Tento návod)
#dva) Testovanie DevOps a softvéru
Výukové programy DevOps VIDEO:
# 3) Výukový program 1: Pozadie DevOps, definícia, hodnota, výhody, zvyky a najlepšie postupy
- Časť 1 blok 1 - Demystifikácia DevOps
# 4) Videonávod 2: Postupy DevOps založené na agilných princípoch, riadení zdrojov a automatizácii DevOps
Tento videonávod je rozdelený na 6 blokov:
- Časť 2 blok 1 - Prax DevOps založená na agilnom manifeste
- 2. časť blok 2 - Ovládanie zdrojov a verzií v DevOps
- Časť 2 blok 3 - Automatizácia v DevOps
- Časť 2 blok 4 - Malé prírastky dodávok v DevOps
- Časť 2 blok 5 - Spolupráca v tímoch DevOps
- Časť 2 blok 6 - Ako rozvíjať spoluprácu v tímoch DevOps
# 5) Videonávod 3: DevOps spracováva nepretržitú integráciu, nepretržité testovanie a nepretržité doručovanie
Tento videonávod je rozdelený na 4 bloky:
- Časť 3 blok 1 - Nepretržitá integrácia do DevOps
- Časť 3 blok 2 - Nepretržité doručovanie v DevOps
- Časť 3 blok 3 - Nepretržité nasadenie v DevOps
- Časť 3 blok 4 - Nepretržité testovanie v DevOps
# 6) Videonávod 4: Správa konfigurácie DevOps a živé sledovanie výkonu aplikácií
Tento videonávod je rozdelený na 3 bloky:
- Časť 4 blok 1 - Správa konfigurácie v postupoch DevOps
- Časť 4 blok 2 - Správa vydaní v DevOps
- Časť 4 blok 3 - Monitorovanie výkonu aplikácií v DevOps
# 7) Videonávod 5: Rekapitulácia celého kurzu.
- 5. časť blok 1 - Rekapitulácia videonávodov pre DevOps
Textové návody:
# 8) Testovanie posunu doľava
# 9) Ako zlepšiť kvalitu softvéru pomocou nepretržitej integrácie
# 10) Priebežný proces dodávky
Nástroje DevOps:
#eleven) Nástroje DevOps
# 12) Inštalácia a konfigurácia bežne používaných nástrojov s otvoreným zdrojom DevOps
# 13) Najlepšie nástroje na nepretržitú integráciu
# 14) Najlepšie nástroje na nepretržité doručovanie
Výukový program pre Microsoft VSTS:
# pätnásť) Microsoft VSTS časť 1
# 16) Microsoft VSTS časť 2
Nástroje AWS DevOps:
# 17) AWS DevOps Tools, časť 1 (CodeCommit)
# 18) AWS DevOps Tools, časť 2 (CodeBuild)
# 19) AWS DevOps Tools časť 3 (CodeDeploy)
#twenty) Nasadenie webových aplikácií .NET pomocou AWS Elastic Beanstalk
Možné pre DevOps:
#dvadsaťjeden) Možná časť 1: Inštalácia a konfigurácia
# 22) Možná časť 2: Automatizácia úloh pomocou príručiek
# 2. 3) Možná časť 3: Možné úlohy a integrácia s Jenkinsom
# 24) Integrácia Jenkinsa so selénom
# 25) Nástroj na nepretržitú integráciu Hudson
# 26) Spoločnosti poskytovateľov služieb DevOps
# 27) Dotazy k rozhovoru pre DevOps
Začnime prvým tutoriálom v tejto sérii.
Čo sa dozviete:
- Úvod do DevOps
- Prehľad služieb Agile a DevOps
- Je DevOps iba o nástrojoch?
- Komponenty DevOps
- Zhrnutie
- Odporúčané čítanie
Úvod do DevOps
DevOps nie je len o nástrojoch, ale obsahuje aj súbor najlepších postupov, ktoré umožňujú prekonať priepasť medzi vývojovými a operačnými tímami v oblasti nepretržitej integrácie a nasadenia pomocou integrovanej sady nástrojov na automatizáciu dodávania softvéru.
otázky týkajúce sa testovania softvéru pre skúsených
Je bezpodmienečne potrebné, aby vývojári rozumeli operačnej stránke a naopak. Cieľom DevOps je teda jednoducho pomôcť ktorejkoľvek organizácii v rýchlosti dodávania aplikácií koncovým používateľom a umožňovania rýchlejšej spätnej väzby koncových používateľov, ktorá je dnes v dnešnej dobe potrebou každého podniku.
Prehľad služieb Agile a DevOps
Medzi Agile a DevOps nie je žiadny rozdiel. Namiesto toho sa navzájom dopĺňajú. Začnime pohľadom na model Waterfall, kde sú zamrznuté všetky požiadavky, a dizajn a vývoj sa robí postupne, až kým nebude k dispozícii stabilný produkt.
Problém teda je, že ak dôjde v tejto fáze k zmene potreby zákazníka, potom neexistuje spôsob, ako zahrnúť a dodať zmenenú potrebu.
Agilná adopcia bola zameraná na lepšie prispôsobenie sa potrebám zmien zákazníka ako pri vodopádovej metóde. Myšlienkou bolo vyvinúť softvér v menších šprintoch alebo iteráciách povedzme okolo 2 až 3 týždňov, ktorý vývojovým tímom pomohol pracovať na spätnej väzbe od koncových používateľov a začleniť zmeny do novších vydaní.
Preto musia byť vývojové a operačné tímy agilné v oblasti svojej práce aDevOpssa narodil, aby umožnil lepšiu spoluprácu medzi nimi.
Agile prináša procesy ako XP, SCRUM atď. A DevOps prináša postupy ako nepretržitá integrácia, nepretržité doručovanie, nepretržité testovanie a nepretržité monitorovanie, ktoré si podrobne ukážeme, ako sa v tomto tutoriále posunieme ďalej.
Je DevOps iba o nástrojoch?
Svojím spôsobom môžete tvrdiť, že na implementáciu DevOps potrebujete nástroje. Je to pravda, ale nástroje sú iba urýchľovače.
Ale v skutočnosti ide o nasledujúce 3 aspekty:
Ľudia :Je veľmi dôležité trénovať a mať vysoko motivovaný tím ľudí, ktorý dokáže efektívne komunikovať a spolupracovať počas celej tejto cesty kultúrnych zmien.
Postup: Keď hovoríme o kultúrnych zmenách pri implementácii DevOps, je veľmi potrebné, aby existovali postupy a stratégie, ktoré poskytnú hodnotu pre zákazníka. Vhodným spôsobom by bolo vykonať hodnotenie dospelosti AS-IS, preskúmať medzery a navrhnúť plán implementácie poskytovania vhodných odporúčaní.
Nebudem hovoriť podrobne o tom, ako som sa dostal k vykonaniu týchto hodnotení, ale rád sa s nimi podelím o akékoľvek príspevky.
Nástroje: Nakoniec ide o použitie urýchľovačov automatizáciou procesu pomocou štandardných nástrojov DevOps, ktoré sú dnes k dispozícii. Môže to byť Open-Source (Jenkins, Git atď.), Commercial (Microsoft TFS, VSTS, IBM Rational, Jira atď.) Alebo ich kombinácia.
Komponenty DevOps
Dúfam, že už by ste mali predstavu o tom, čo je DevOps.
Pozrime sa teraz na nasledujúce 4 komponenty DevOps, ktoré tvoria jadro z hľadiska implementácie, a tiež organizácie vyvinuli dobré automatizačné rámce, ktoré ich ponúkajú ako službu svojim klientom.
- Nepretržitá integrácia
- Priebežné testovanie
- Nepretržité doručovanie
- Nepretržité monitorovanie
Skutočne som veril, že ak musí vývojár pracovať v tomto režime, mali by mu byť pridelené položky na vykonanie úlohy, napríklad úloha alebo chyba (v agile môže byť súčasťou používateľského príbehu), ktorá mu umožní dodať prácu v rámci časový rámec šprintu.
Takže ešte predtým, ako bude možné implementovať vyššie uvedené kroky, tieto úlohy alebo defekty vývojára by mali byť naplánované v sprinte. Takže nástroje ako JIRA, IBM Rational Team Concert, Microsoft TFS / VSTS atď. Pomáhajú vytvárať agilné plány Release / Sprint.
Pozrime sa teraz na každú z týchto súčastí podrobne.
# 1) Nepretržitá integrácia
Ako vývojár pracujete na úlohách alebo chybách, ktoré sú priradené, a nahlásite kód do zdieľaného úložiska viackrát za deň. Podobne aj ostatní členovia tímu odbavujú kód do zdieľaného úložiska.
Potom skutočne integrujete všetku prácu vykonanú členmi tímu do spoločného servera na zostavenie a vykonáte automatizované zostavenie. Pravidelné vykonávanie týchto integrácií a automatizovaných zostavení sa nazýva Kontinuálna integrácia.
Táto prax pomáha odhaliť problémy veľmi skoro a tiež zaisťuje, že všetky integrované moduly fungujú podľa potreby. Ak teda nebudete postupovať týmto spôsobom, môže dôjsť k integrácii tímovej práce raz za mesiac, čo môže byť neskoro na nájdenie a vyriešenie akýchkoľvek problémov s integráciou.
Ukážka pracovného postupu pre nepretržitú integráciu:
# 2) Nepretržité doručovanie
Continuous Delivery je ďalším krokom po kontinuálnej integrácii. Cieľom Continuous Delivery je čo najrýchlejšie tlačenie aplikácie zabudovanej do výroby. Počas tohto procesu prechádza rôznymi fázami životného cyklu dodávky, tj. QA, fázové, produkčné prostredia atď.
Tento proces pravidelného doručovania aplikácií zabudovaných do rôznych etáp je známy ako Continuous Delivery.
Nepretržité dodávanie pomáha v rýchlejšom čase uvedenia na trh v porovnaní s tradičnými metódami, menšie riziko, zníženie nákladov podporou väčšej automatizácie v procese uvedenia na trh a najdôležitejšie je získanie rýchlejšej spätnej väzby od koncových používateľov k výrobe kvalitného produktu.
Z mojej skúsenosti som videl, že tento proces funguje dobre pre akýkoľvek druh vývoja webových aplikácií.
Spravil som tiež slušné množstvo hodnotení implementácií DevOps pre organizácie v obchodnej oblasti polovodičov, ale kvôli ich existujúcim uvoľňovací cyklus Zdá sa, že táto oblasť nepretržitého doručovania sa do nej nehodí, pretože ide skôr o proces vodopádu, ktorý sa sleduje, a nasadenia sa uskutočňujú podľa potreby v prostredí zákazníka.
Vzorový pracovný postup súvislého doručovania:
Vo vyššie uvedenom diagrame sa môžete pozrieť na rôzne dostupné prostredia, a preto je možné toto zabezpečenie infraštruktúry pre prostredia automatizovať aj počas tohto procesu nepretržitého doručovania.
# 3) Nepretržité testovanie
Z vyššie uvedených 2 postupov sme zistili, že CI a CD pomáhajú nasadiť aplikáciu alebo zmeny vo výrobe. Celý tento proces zahŕňa správne overenie kódu a jeho integráciu so všetkými komponentmi, ktoré sú doň zapojené, aby sa zabezpečilo, že aplikácia funguje podľa očakávaní a neobsahuje chyby alebo chyby.
Kontinuálne testovanie je teda proces spúšťania rôznych typov automatizovaných testov počnúc procesom CI až do času, keď je aplikácia konečne nasadená do výroby.
Z predchádzajúceho diagramu môžete vidieť, že v kroku Kontinuálna integrácia integrujeme všetky práce vývojárov do spoločného servera na zostavenie a tiež by v tejto fáze vývojári spustili určité množstvo testov jednotiek.
Keď tieto integrácie a testy fungujú bez akýchkoľvek chýb, až potom sa aplikácia alebo zmeny zavedú do prostredia QA po podaní žiadosti o tieto brány kvality a schválenia.
V prostredí QA prebiehajú funkčné testy a opäť na základe schválení, ktoré by boli nasadené do fázovacieho prostredia, ktoré by bolo na parite, ako keby prebiehali produkčné systémy a akceptačné testy. Po dokončení tejto činnosti sa aplikácia alebo zmeny konečne zavedú do produkčných systémov.
Možno si tu všimnúť, že nepretržité testovanie ako aktivita začína od samotnej fázy CI a je veľmi povinným krokom v celom procese kontinuálneho doručovania.
Pracovný postup testovania vzoriek v procese nepretržitého doručovania:
# 4) Nepretržité monitorovanie
Keď sa aplikácia alebo zmeny zavedú do produkčného prostredia, operačný tím sa bude snažiť monitorovať aplikáciu a prostredie z hľadiska up-time, stability a dostupnosti. Tento proces sa nazýva nepretržité monitorovanie.
Prevádzkové tímy budú mať svoj vlastný softvér na monitorovanie prostredia, budú však musieť hrať svoju úlohu aj pri sledovaní nasadených aplikácií z hľadiska akýchkoľvek problémov. Z tohto dôvodu by museli spolupracovať s vývojovými tímami na vytvorení určitých nástrojov na analýzu problémov s aplikáciou.
V procese nepretržitého monitorovania sú teda monitorované všetky záležitosti týkajúce sa infraštruktúry, životného prostredia a aplikácií.
Zhrnutie
V tomto tutoriáli sme prišli na to, o čom presne je proces DevOps, vrátane rôznych komponentov, ktoré sú doň zapojené. Tieto komponenty pomáhajú urýchliť dodanie aplikácie a tiež šetria čas uvedený na trh, čo je dnes z pohľadu konkurencie potreba podnikania.
V pripravovanej sérii tutoriálov v segmente DevOps sa pozriete na rôzne videá / pravdepodobné nástroje DevOps, ktoré môžu tímy používať, a tiež na implementáciu DevOps pomocou určitých nástrojov pre lokálne a cloudové služby.
klasifikácia rozhodovacieho stromu v dolovaní dát
A ako už bolo povedané, implementáciu DevOps považujem za vzrušujúcu, v pohľade z organizačnej zmeny.
Náš nadchádzajúci tutoriál vám vysvetlí všetko o DevOps a testovaní softvéru.
Odporúčané čítanie
- Hĺbkové návody pre zatmenie pre začiatočníkov
- Nepretržité doručovanie v DevOps
- Nepretržité nasadenie v DevOps
- Výukový program pre testovanie DevOps: Ako DevOps ovplyvní testovanie kvality?
- Nepretržitá integrácia do DevOps
- Nepretržité testovanie v DevOps
- Rekapitulácia videonávodov pre DevOps
- Výukový program AWS CodeCommit pre implementáciu DevOps v cloude