Sdílet prostřednictvím


Sada nástrojů DevOps

Sada nástrojů DevOps je kolekce nástrojů, které týmům DevOps umožňují spolupracovat v celém životním cyklu produktu a řešit klíčové základy DevOps.

Mezi nástroje, které sada nástrojů DevOps patří, fungují jako integrovaná jednotka pro plánování, kontinuální integraci, průběžné doručování, provoz, spolupráci a zpětnou vazbu. V tématu Definování technologického ekosystému DevOps si můžete projít některé příklady technologií DevOps v různých fázích DevOps.

Aspekty sady nástrojů DevOps

  • Procesy DevOps se už můžou používat v celé organizaci, když vyberete sadu nástrojů. Měli byste najít správnou rovnováhu mezi přijetím technologií vhodných pro potřeby vašeho týmu a cílem standardizace a zabránění heterogenním ekosystémům DevOps v celé organizaci.

  • Můžete přijmout různé druhy nástrojů DevOps:

    • Vše v jednom: Poskytuje kompletní řešení, které se nemusí integrovat s jinými nástroji třetích stran. Sady nástrojů all-in-one můžou být užitečné pro organizace, které začínají svou cestu DevOps. Příklad: Úplná sada nástrojů Azure DevOps.
    • Přizpůsobené: Umožňuje týmům přinést a kombinovat existující nástroje, které znají a už používají, do širší sady nástrojů DevOps. Integrace je nezbytná pro tyto typy nástrojů, aby se zabránilo zbytečnému času přepínání mezi obrazovkami, přihlášení na více míst a výzvy ke sdílení informací mezi nástroji. Příklad: Sada nástrojů Azure DevOps a GitHub.
  • Zvažte použití nástrojů, které se pravidelně aktualizují a které mají k dispozici pomoc, kdykoli je potřebujete prostřednictvím e-mailu nebo online portálu. Toto je požadavek na jakýkoli produkt nebo službu, které jsou na kritické cestě k uvedení na trh.

Plánování

  • Zvažte přijetí nástroje, který podporuje postupy průběžného plánování :
    • Plánování vydaných verzí
    • Námět a identifikace funkcí
    • Stanovení priority
    • Odhad
    • Definice uživatelského scénáře
    • Upřesnění backlogu
    • Plánování sprintů
    • Denní Scrum
    • Revize sprintu
    • Retrospektiva

Kontinuální integrace a průběžné doručování

  • Při implementaci průběžné integrace (CI)/Průběžné doručování (CD) zvažte přijetí nástroje, který podporuje:
    • Systémy správy verzí. Všechno v projektu musí být vráceno se změnami do jednoho úložiště správy verzí, jako je Git: kód, testy, databázové skripty, skripty sestavení a nasazení a cokoli jiného potřebného k vytvoření, instalaci, spuštění a otestování aplikace.
    • Strategie větvení
    • Automatizované buildy.
  • Na výběr úložiště má vliv také požadavky na suverenitu a rezidenci dat. Pokud potřebujete, aby byla vaše data hostovaná místně v jiné zemi nebo oblasti než USA, budete potřebovat úložiště Azure DevOps, když gitHub Repos nejde použít.
  • Pokud chcete minimalizovat množství ruční konfigurace potřebné ke zřizování prostředků, zvažte přijetí infrastruktury jako kódu (IaC). IaC umožňuje používat postupy softwarového inženýrství, jako je testování a správa verzí, díky kterým je infrastruktura a nasazení automatizované, konzistentní a opakovatelné. Udržujte skripty a šablony ve správě zdrojového kódu stejně jako jakýkoli jiný kód, který udržujete.
  • Osvojte si nástroje pro kontrolu kódu, které vám pomůžou co nejdříve odhalit vady kódu. Před nasazením zahrňte kontroly před nasazením, které ověřují a ověřují změny před jakýmkoli nasazením (příklad: "what-if").
  • Nástroje CI/CD urychlují dobu uvedení produktu na trh. Nástroje, které umožňují paralelizovat úlohy a využívat elastickou škálovatelnost v infrastruktuře hostované v cloudu, zvyšují výkon procesu CI/CD.
  • Zvažte použití funkcí nástrojů CI/CD, které podporují měření výkonu DevOps. Řídicí panely a vytváření sestav můžou sledovat aspekty procesu vývoje, jako je předstih, doba cyklu, rychlost práce atd.

Průběžné operace

Průběžný provoz je zaměření, které organizacím pomáhá udržovat kontinuitu výstupu mezi interními systémy a zákazníky prostřednictvím nepřerušovaného doručování důležitých služeb nebo funkcí. Mezi cíle průběžného provozu patří:

  • Pokud chcete snížit nebo eliminovat potřebu plánovaných výpadků nebo přerušení, jako je plánovaná údržba, optimalizace kapacity a nasazení.
  • Zvýšení celkové spolehlivosti a odolnosti systémů ve třech aspektech: s lidmi, procesy a nástroji.

Použití nástrojů nativních pro cloud k:

  • Monitorujte klíčové metriky výkonu a dostupnosti služeb.
  • Získejte digitální zkušenosti a přehledy zákazníků.
  • Generování odpovědí řízených inteligencí pro incidenty, obnovení systému nebo škálování
  • Automatizujte proaktivní údržbu a úlohy, jako jsou nasazení nebo aktualizace systému.
    • Azure Automation je nativní cloudový nástroj, který můžete použít k vytvoření automatizace založené na událostech k diagnostice a řešení problémů.

Spolupráce a zpětná vazba

  • Smyčky rychlé zpětné vazby jsou jádrem procesu CI/CD. Nástroj CI/CD používá zpětnou vazbu k řešení podmínek v logice pracovního postupu CI/CD a zobrazuje informace zpět uživatelům, obvykle prostřednictvím řídicího panelu.

  • Podpora e-mailových oznámení a integrace s prostředími IDE nebo komunikačními platformami zajistí, že budete mít přehled o tom, co se děje, aniž byste museli zkontrolovat řídicí panel. Ujistěte se, že máte možnost nakonfigurovat, která upozornění obdržíte, protože příliš mnoho upozornění je transformuje na šum na pozadí.

  • Každý nástroj, který zvolíte pro spolupráci, by měl podporovat následující postupy spolupráce:

    • Spolupráce Kanbanu
    • Spolupráce na obsahu wikiwebu
    • Spolupráce ChatOps
    • Týmová místnost

Doporučení sady nástrojů DevOps pro cílové zóny Azure

Sady nástrojů DevOps pro implementaci cílové zóny Azure by měly zvážit všechny dříve probírané fáze DevOps:

  • Plánování
  • CI/CD (včetně možností automatizace, jako je infrastruktura jako kód)
  • Operace
  • Spolupráce a zpětná vazba

Projděte si pokyny pro nasazení cílové zóny a důležité informace o výběru možnosti implementace při výběru přijetí cílové zóny.

Bez ohledu na vybranou metodologii (zahájení malého a rozšířeného nebo podnikového škálování) existuje několik běžných topologií, které podniky při návrhu pracovních postupů a nástrojů DevOps používají.

  • Kompletní sada nástrojů Azure DevOps: Pro podniky, které jsou již silně investovány do ekosystému Microsoftu, tato topologie umožňuje plně využívat nativní integrace mezi produkty a službami Microsoftu a zjednodušit klíčové procesy.
  • Sada nástrojů Azure DevOps a GitHub: Tato topologie umožňuje využívat silné stránky Azure i GitHubu jako součást dobře integrovaného řešení.

Kompletní sada nástrojů Azure DevOps

Diagram celé sady nástrojů Azure DevOps

Fáze DevOps Nástroje
Plánování Azure Boards poskytuje vývojářům a dalším osobám výkonné a flexibilní možnosti plánování, včetně hierarchických backlogů, přizpůsobitelných panelů Kanbanu, bohatého přizpůsobení procesů, týmových řídicích panelů a vlastních sestav.
CI/CD Azure Repos umožňuje vytvářet privátní úložiště Git a podporuje různé klienty Gitu, strategii větvení a ochranu. Azure Repos také poskytuje lokalizovanou rezidenci dat v cloudu, která umožňuje dodržování evropských předpisů. Azure Pipelines umožňuje zákazníkům nastavit automatizované kanály pro CI/CD, včetně pokročilých sestav testů, a poskytuje výkonnou podporu pro kanály s více fázemi. Podrobná oprávnění, brány, vlastní kontroly a generování sestav automatizovaných výsledků testů v Azure Pipelines pomáhají vynucovat osvědčené postupy zabezpečení, dodržování předpisů a bezpečného nasazení ve vaší organizaci a podporovat provádění a škálovatelnost paralelních kroků. Azure Artifacts poskytuje informační kanál pro ukládání balíčků a kontrolu a ověřování jednotlivých balíčků pro účely zabezpečení a také poskytuje podrobné řízení a auditování oprávnění. Azure Test Plans v Azure DevOps poskytuje řešení pro správu testů na základě prohlížeče pro průzkumné, ruční a uživatelské akceptační testování. Uživatelé plánů Azure Test Také obvykle používají Azure Boards k plánování a řízení projektů. Můžete propojit uživatelské scénáře a další požadavky na testovací případy a dokumentovat chyby nalezené prostřednictvím testování. Osvojte rozšíření Marketplace pro DevOps , abyste vylepšili analýzu statického kódu pomocí nástrojů, jako jsou skenery přihlašovacích údajů, opensourcové skenery, kontroly chyb a ohrožení zabezpečení a další.
Operace Řídicí panely Azure a vytváření sestav poskytují vlastní generování sestav, které vám pomůžou monitorovat klíčové metriky výkonu služby. Azure Diagnostics a Application Insights jsou standardní metodou sledování stavu a stavu prostředků Azure. Azure Monitor poskytuje centralizované monitorování a správu. Azure Automation se dá použít k vytvoření automatizace založené na událostech k diagnostice a řešení problémů. Defender for Cloud DevOps používá centrální konzolu, která týmům zabezpečení umožňuje chránit aplikace a prostředky před kódem a cloudem v prostředích s více kanály, včetně Azure DevOps a GitHubu.
Spolupráce a zpětná vazba Wikiweb Azure DevOps umožňuje sdílet informace se členy jiných týmů a podporuje společné úpravy obsahu a struktury. Azure Boards poskytuje spolupráci a podporu Kanbanu pro komentáře a diskuze v položkách backlogu. Microsoft Teams můžete integrovat s Azure DevOps a získat tak kompletní prostředí pro týmovou spolupráci.

Sada nástrojů Azure DevOps a GitHub

Diagram sady nástrojů Azure DevOps a GitHubu

Fáze DevOps Nástroje
Plánování Azure Boards poskytuje stabilní a škálovatelné řešení pro plánování, správu úložišť, vizualizaci dat a hierarchickou organizaci pracovních položek. Integruje se s GitHubem, takže můžete propojit pracovní položky a potvrzení GitHubu. Umožňuje také zvolit ideální pracovní postup, ať už jde o jednoduchý, předefinovaný pracovní postup nebo vlastní pracovní postup, který sestavíte pomocí výkonného a flexibilního modulu pro přizpůsobení Azure Boards. Když potřebujete vizualizovat data, Azure Boards vám pomůže snadno sestavovat a konfigurovat vlastní řídicí panely a sledovat průběh v průběhu celého životního cyklu projektu.
CI/CD Použijte verzi GitHubu Enterprise (GHE), která zahrnuje úložiště GitHub, GitHub Advanced Security (GHAS) a Pokročilé zabezpečení GitHubu pro Azure DevOps. GHAS zahrnuje CodeQL, Kontrolu kódu, kontrolu tajných kódů a kontrolu závislostí. GHE také nabízí Codespaces, cloudové integrované vývojové prostředí (IDE), které můžete použít k vývoji kódu a který může nahradit Visual Studio Code, které organizace obvykle zahrnují ve scénářích Azure DevOps v plném rozsahu. Pomocí GitHub Actions můžete automatizovat nevytvořované pracovní postupy, pokud jsou vaše úložiště na GitHubu. Pokud máte složitější scénáře, ve kterých potřebujete získat přístup k kódu mimo GitHub nebo vyžadovat centralizovanou správu pro šablony pracovních postupů a kanály sestavení, využijte Azure Pipelines. Pro Azure Boards můžete integrovat Azure Pipelines s úložišti GitHub. Další informace o integraci Azure DevOps a GitHubu najdete v tématu Práce s Azure DevOps a GitHubem. GitHub Packages je služba softwarových balíčků, která umožňuje soukromě nebo veřejně hostovat vlastní balíčky. GitHub nabízí podporu registru kontejnerů pro hostování imagí Dockeru nebo OCI. K publikování, instalaci nebo odstranění balíčků potřebujete přístupové tokeny a zajistit zabezpečení správy životního cyklu balíčku. Pokud chcete automatizovat balíčky, můžete integrovat GitHub Packages s GitHub Actions, rozhraními API GitHubu a webhooky a vytvářet pracovní postupy DevOps, které zahrnují kód, CI a nasazení v jednom rozhraní.
Operace GitHub Insights poskytuje analytické sestavy založené na datech z vaší instance GitHub Enterprise Serveru, které vám pomůžou pochopit a zlepšit proces doručování softwaru. Pro diagnostiku a správu cílových zón použijte služby Azure doporučené ve scénáři Azure DevOps s kompletním zásobníkem.
Spolupráce a zpětná vazba Diskuze na GitHubu můžete použít ke sdílení otázek, nápadů, konverzací, žádostí o komentář (RFC), plánování zdrojů a oznámení. Pomocí Azure Boards můžete snadno vytvářet a konfigurovat vlastní řídicí panely a monitorovat průběh v průběhu celého životního cyklu projektu. Osvojte si Microsoft Teams pro kompletní prostředí pro týmovou spolupráci.