devops tutorial ultimate guide devops
Toto je kompletní řada výukových programů DevOps s 25+ textovými a videonávody, které pokrývají všechny aspekty DevOps, například Co je DevOps, principy DevOps a jeho architekt.
Seznam tutoriálů v DevOps Training Series:
# 1) Úvod do DevOps (Tento návod)
#dva) DevOps a testování softwaru
Výukové programy DevOps VIDEO:
# 3) Výukový program 1: Pozadí DevOps, definice, hodnota, výhody, zvyky a osvědčené postupy
- Část 1 Blok 1 - Demystifikace DevOps
# 4) Výukový program 2: Postupy DevOps založené na agilních principech, řízení zdrojů a automatizaci DevOps
Tento videonávod je rozdělen na 6 bloků:
- Část 2 Blok 1 - DevOps Practice na základě Agile Manifesto
- Část 2 Blok 2 - Řízení zdrojů a verzí v DevOps
- Část 2 Blok 3 - Automatizace v DevOps
- Část 2 Blok 4 - Malé přírůstky dodávek v DevOps
- Část 2 Blok 5 - Spolupráce v týmech DevOps
- Část 2 blok 6 - Jak rozvíjet spolupráci v týmech DevOps
# 5) Výukový program 3: DevOps zpracovává průběžnou integraci, průběžné testování a průběžné doručování
Tento videonávod je rozdělen na 4 bloky:
- Část 3 blok 1 - Kontinuální integrace v DevOps
- Část 3 Blok 2 - Kontinuální doručování v DevOps
- Část 3 Blok 3 - Kontinuální nasazení v DevOps
- Část 3 Blok 4 - Kontinuální testování v DevOps
# 6) Výukový program 4: Správa konfigurace DevOps a živé sledování výkonu aplikací
Tento videonávod je rozdělen na 3 bloky:
- Část 4 blok 1 - Správa konfigurace v DevOps Practices
- Část 4 blok 2 - Správa vydání v DevOps
- Část 4 Blok 3 - Monitorování výkonu aplikací v DevOps
# 7) Výukové video 5: Rekapitulace celého kurzu.
- Část 5 blok 1 - Rekapitulace video tutoriálů DevOps
Výukové texty:
# 8) Testování posunu doleva
# 9) Jak zlepšit kvalitu softwaru pomocí nepřetržité integrace
# 10) Průběžný proces dodávky
Nástroje DevOps:
#jedenáct) Nástroje DevOps
# 12) Instalace a konfigurace běžně používaných nástrojů DevOps s otevřeným zdrojovým kódem
# 13) Nejlepší nástroje pro kontinuální integraci
# 14) Nejlepší nástroje pro kontinuální doručování
Výukový program Microsoft VSTS:
#patnáct) Microsoft VSTS část 1
# 16) Microsoft VSTS část 2
Nástroje AWS DevOps:
# 17) AWS DevOps Tools Část 1 (CodeCommit)
# 18) AWS DevOps Tools Část 2 (CodeBuild)
# 19) AWS DevOps Tools část 3 (CodeDeploy)
#dvacet) Nasazení webových aplikací .NET pomocí AWS Elastic Beanstalk
Možné pro DevOps:
#dvacet jedna) Možná část 1: Instalace a konfigurace
# 22) Možná část 2: Automatizace úkolů pomocí příruček
# 2. 3) Ansible Část 3: Možné role a integrace s Jenkinsem
# 24) Integrace Jenkinse se selenem
# 25) Nástroj pro kontinuální integraci Hudson
# 26) Společnosti poskytovatelů služeb DevOps
# 27) Dotazy na rozhovor DevOps
Začněme prvním tutoriálem v této sérii.
Co se naučíte:
- Úvod do DevOps
- Přehled Agile a DevOps
- Je DevOps pouze o nástrojích?
- Součásti DevOps
- souhrn
- Doporučené čtení
Úvod do DevOps
DevOps není jen o nástrojích, ale také obsahuje sadu osvědčených postupů, které umožňují překlenout propast mezi vývojovými a provozními týmy v oblastech nepřetržité integrace a nasazení pomocí integrované sady nástrojů k automatizaci dodávky softwaru.
zdarma blokování automaticky otevíraných oken pro Google Chrome
Je bezpodmínečně nutné, aby vývojáři rozuměli operativní stránce a naopak. Cílem DevOps je tedy jednoduše pomoci jakékoli organizaci v rychlosti doručování aplikací koncovým uživatelům a umožnění rychlejší zpětné vazby koncových uživatelů, což je dnes v podnikání jakékoli.
Přehled Agile a DevOps
Mezi Agile a DevOps není žádný rozdíl. Místo toho se navzájem doplňují. Začněme tím, že se podíváme na model Waterfall, kde jsou zmrazeny všechny požadavky, a design a vývoj se provádí jeden po druhém, dokud nebude k dispozici stabilní produkt.
Jde tedy o to, že pokud dojde v této fázi ke změně potřeby zákazníka, pak neexistuje způsob, jak tuto potřebu zahrnout a dodat.
S cílem řešit problém přizpůsobení se potřebám zákazníků se lépe než v metodě vodopádu změnilo agilní přijetí. Myšlenkou zde bylo vyvinout software v menších sprintech nebo iteracích, řekněme přibližně 2 až 3 týdny, který pomohl vývojovým týmům pracovat na zpětné vazbě od koncových uživatelů a začlenit změny do novějších verzí.
Proto musí být vývojové a provozní týmy agilní ve svých pracovních oblastech aDevOpsse narodil, aby umožnil lepší spolupráci mezi nimi.
Agile přináší procesy jako XP, SCRUM atd. A DevOps přináší postupy jako Continuous Integration, Continuous Delivery, Continuous Testing and Continuous Monitoring, které uvidíme podrobně, jak se v tomto tutoriálu posuneme dále.
Je DevOps pouze o nástrojích?
Svým způsobem můžete namítnout, že k implementaci DevOps potřebujete nástroje. Je to pravda, ale nástroje jsou pouze akcelerátory.
Ve skutečnosti ale jde o následující 3 aspekty:
Lidé :Je velmi důležité trénovat a mít vysoce motivovaný tým lidí, kteří jsou schopni efektivně komunikovat a spolupracovat po celou tuto cestu kulturní změny.
Proces: Jelikož mluvíme o kulturní změně pro implementaci DevOps, je velmi nutné mít postupy a strategie, které poskytují hodnotu pro zákazníka. Vhodným způsobem, jak to udělat, by bylo provést posouzení zralosti AS-IS, podívat se na mezery a navrhnout plán implementace s poskytováním vhodných doporučení.
Nebudu hovořit podrobně o tom, jak jsem se dostal k provádění těchto hodnocení, ale rád se s vámi podělím o jakékoli příspěvky.
Nástroje: Konečně jde o použití akcelerátorů automatizací procesu pomocí standardních nástrojů DevOps, které jsou dnes k dispozici. Může to být Open-Source (Jenkins, Git atd.), Commercial (Microsoft TFS, VSTS, IBM Rational, Jira atd.) Nebo kombinace obou.
Součásti DevOps
Doufám, že už byste získali představu o tom, co je DevOps.
Podívejme se nyní na následující 4 komponenty DevOps, které tvoří jádro z hlediska implementace, a také organizace vyvinuly dobré automatizační rámce kolem toho, co je nabízí jako služba svým klientům.
java přidávání prvků do pole
- Kontinuální integrace
- Průběžné testování
- Kontinuální dodávka
- Kontinuální monitorování
Opravdu jsem věřil, že pokud vývojář musí pracovat v tomto režimu, měl by mu být přidělen exekuční předmět jako Úkol nebo Defekt (v Agile to může být součást User Story), aby mu umožnil doručit práci do časový rámec sprintu.
Takže ještě předtím, než bude možné implementovat výše uvedené kroky, tyto úlohy nebo defekty vývojáře by měly být naplánovány ve sprintu. Takže nástroje jako JIRA, IBM Rational Team Concert, Microsoft TFS / VSTS atd. Pomáhají vytvářet agilní plány Release / Sprint.
Pojďme se nyní podrobně podívat na každou z těchto komponent.
# 1) Kontinuální integrace
Jako vývojář pracujete na úkolech nebo defektech přiřazených a odevzdáváte kód do sdíleného úložiště několikrát za den. Podobně ostatní členové týmu také odevzdají kód do sdíleného úložiště.
Poté skutečně integrujete veškerou práci odvedenou členy týmu do společného serveru sestavení a provedete automatizované sestavení. Pravidelné provádění těchto integrací a automatických sestavení se nazývá kontinuální integrace.
Tato praxe pomáhá detekovat problémy velmi brzy a také zajišťuje, že všechny integrované moduly fungují podle potřeby. Pokud tento přístup nebudete dodržovat, může dojít k integraci práce týmu jednou za měsíc, což může být pozdě na nalezení a vyřešení problémů s integrací.
Ukázkový pracovní postup kontinuální integrace:
# 2) Průběžné doručování
Kontinuální dodávka je dalším krokem po kontinuální integraci. Cílem Continuous Delivery je co nejrychleji posunout aplikaci zabudovanou do výroby. Během tohoto procesu prochází různými fázemi životního cyklu dodávky, tj. QA, pracovní, produkční prostředí atd.
Tento proces pravidelného doručování aplikací zabudovaných do různých fází je znám jako Continuous Delivery.
Kontinuální dodávka pomáhá v rychlejším uvedení na trh ve srovnání s tradičními metodami, menší riziko, snížení nákladů podporou větší automatizace v procesu vydání a co je nejdůležitější, získání rychlejší zpětné vazby od koncových uživatelů k výrobě kvalitního produktu.
Z mých zkušeností jsem viděl, že tento proces funguje dobře pro jakýkoli druh vývoje webových aplikací.
Rovněž jsem provedl slušné množství hodnocení implementací DevOps pro organizace v obchodní oblasti polovodičů, ale kvůli jejich stávajícím cyklus uvolnění tato oblast nepřetržitého doručování se nezdá, že by se jí hodila, protože jde spíše o proces vodopádu, který je sledován, a nasazení se provádí podle potřeby v prostředí zákazníka.
Ukázkový pracovní postup nepřetržitého doručování:
Ve výše uvedeném diagramu se můžete podívat na různá dostupná prostředí, takže toto zřizování infrastruktury pro prostředí lze během tohoto nepřetržitého procesu doručování také automatizovat.
# 3) Průběžné testování
Z výše uvedených 2 postupů jsme zjistili, že CI a CD pomáhají nasadit aplikaci nebo změny v produkci. Celý tento proces zahrnuje správné ověření kódu a jeho integraci se všemi komponenty, které jsou do něj zapojeny, aby bylo zajištěno, že aplikace funguje podle očekávání a neobsahuje chyby nebo vady.
Kontinuální testování je tedy proces spouštění různých typů automatizovaných testů počínaje procesem CI až do doby, kdy je aplikace konečně nasazena do výroby.
Z předchozího diagramu vidíte, že v kroku Kontinuální integrace integrujeme všechny práce vývojářů do společného serveru sestavení a také během této fáze by vývojáři spustili určité množství testů jednotek.
Jakmile tyto integrace a testy fungují bez jakýchkoli chyb, až poté se aplikace nebo změny nasadí do prostředí QA po podání žádosti o tyto brány kvality a schválení.
V prostředí QA se provádějí funkční testy a opět na základě schválení, které by byly nasazeny do pracovní prostředí, které by bylo na paritě jako běh produkčních systémů a akceptačních testů. Jakmile je tato aktivita dokončena, aplikace nebo změny se konečně nasadí do produkčních systémů.
Zde je možné si všimnout, že nepřetržité testování jako aktivita začíná od samotné fáze CI a je velmi povinným krokem v celém procesu kontinuálního doručování.
Pracovní postup testování vzorků v procesu nepřetržitého doručování:
# 4) Kontinuální monitorování
Jak se aplikace nebo změny nasazují do produkčního prostředí, bude se operační tým dívat na monitorování aplikace a prostředí z hlediska up-time, stability a dostupnosti. Tento proces se nazývá kontinuální monitorování.
Provozní týmy budou mít svůj vlastní software pro monitorování prostředí, ale budou také muset hrát svoji roli při monitorování aplikací nasazených na jakékoli problémy. Za tímto účelem by museli spolupracovat s vývojovými týmy, aby vytvořili určité nástroje pro analýzu problémů s aplikací.
Problémy s infrastrukturou, prostředím a aplikacemi jsou tedy všechny, které jsou monitorovány v procesu nepřetržitého monitorování.
souhrn
V tomto kurzu jsme se dozvěděli, o čem přesně je proces DevOps, včetně různých součástí v něm obsažených. Tyto komponenty pomáhají urychlit dodávku aplikací a také šetří čas uvedení na trh, což je dnes z hlediska konkurence potřeba podnikání.
V nadcházející sérii kurzů v segmentu DevOps se podíváte na různá videa / pravděpodobné nástroje DevOps, které mohou týmy používat, a také na implementaci DevOps pomocí určitých nástrojů pro místní provoz a cloud.
A jak již bylo řečeno, implementace DevOps mi přišla jako vzrušující, ve způsobu pohledu z organizační změny.
Náš nadcházející výukový program vám vysvětlí vše o DevOps a testování softwaru.
Doporučené čtení
- Výukové programy pro zatmění do hloubky pro začátečníky
- Kontinuální doručování v DevOps
- Kontinuální nasazení v DevOps
- Výukový program pro testování DevOps: Jak DevOps ovlivní testování kvality?
- Kontinuální integrace v DevOps
- Kontinuální testování v DevOps
- Rekapitulace video tutoriálů DevOps
- Výukový program AWS CodeCommit pro implementaci DevOps v cloudu