Sdílet prostřednictvím


Automatizace platforem a DevOps pro akcelerátor cílové zóny App Service

Tento článek obsahuje aspekty návrhu a doporučení pro automatizaci platforem a DevOps, které můžete použít při použití akcelerátoru cílové zóny Azure App Service. Automatizace platforem a DevOps poskytují příležitosti k modernizaci přístupu k nasazení pomocí infrastruktury jako kódu.

Přečtěte si další informace o oblasti návrhu pro automatizaci platformy a DevOps .

Na co dát pozor při navrhování

Automatizace a DevOps jsou důležité postupy při vývoji moderního softwaru a App Service je výkonná platforma pro vytváření a nasazování webových aplikací. Pomocí automatizace a technik DevOps můžete zjednodušit pracovní postupy a zlepšit kvalitu a spolehlivost vašich aplikací.

Při přípravě na nasazení App Service vezměte v úvahu následující aspekty.

  • Seznamte se s požadavky a cíli projektu, abyste mohli určit nejvhodnější nástroje a přístupy pro automatizaci. Tento krok zahrnuje identifikaci úloh, které chcete automatizovat, jako je zřizování infrastruktury, nasazení kódu a testování. Zahrnuje také identifikaci nástrojů a technologií, které použijete k implementaci automatizace.

  • Při návrhu automatizace a kanálu CI/CD v App Service nastavte zabezpečení jako nejvyšší prioritu. Úlohy zabezpečení můžou zahrnovat implementaci ověřovacích a autorizačních opatření, která pomáhají chránit přístup ke kanálu a jeho komponentám. Mohou také zahrnovat implementaci šifrování a dalších bezpečnostních opatření, která pomáhají chránit citlivá data.

  • Zvažte průběžnou integraci a nasazování. App Service podporuje kontinuální integraci a nasazování z různých systémů správy zdrojového kódu, včetně Azure Repos, GitHubu a Bitbucketu. Pomocí těchto nástrojů můžete automatizovat proces sestavení a nasazení a zajistit tak, aby vaše aplikace byla vždy aktuální a dostupná.

  • Zvažte automatizační skripty. App Service poskytuje řadu automatizačních skriptů, včetně PowerShellu, Azure CLI, Bicep a šablon Azure Resource Manager (ARM). Tyto skripty můžete použít k automatizaci běžných úloh, jako je zřizování a škálování prostředků.

  • Vyhodnoťte, jestli potřebujete používat agenty v místním prostředí. V závislosti na konfiguraci sítě nemusí být služba App Services dostupná z veřejného internetu. Pokud tomu tak není, nebudou pro nasazení fungovat veřejně hostovaní agenti. V těchto scénářích plánujete používat agenty v místním prostředí .

  • Osvojte si strategii větvení, která vám pomůže spolupracovat a zároveň poskytne flexibilitu. Udržujte svoji strategii jednoduchou, používejte krátkodobou izolaci funkcí a povolte úpravy zpět do hlavní větve prostřednictvím žádostí o přijetí změn pomocí ruční a automatizované analýzy kódu.

  • Ujistěte se, že je vaše obchodní logika kontrolována testy jednotek v kanálu sestavení. Pomocí testů integrace v kanálu verze zkontrolujte, jestli všechny služby a prostředky po nové verzi spolupracují. Pomocí automatizovaných testů uživatelského rozhraní zkontrolujte nejdůležitější prvky uživatelského rozhraní. Zkontrolujte požadavky na výkon, které nejsou funkční, pomocí zátěžového testování prostřednictvím nástrojů, jako je k6 a JMeter, ve vašem přípravném prostředí.

  • Monitorujte a udržujte automatizaci a kanál CI/CD. Tento proces může zahrnovat implementaci nástrojů pro protokolování a monitorování ke sledování výkonu a stavu kanálu. Může také zahrnovat implementaci procesu pravidelného přezkumu a aktualizace kanálu, aby se zajistilo, že bude i nadále účinný a efektivní.

Klíčem k úspěšné automatizaci platforem a implementaci kanálu CI/CD v App Service je pečlivé plánování a návrh řešení s ohledem na konkrétní potřeby a požadavky aplikací, které nasazujete. Správným přístupem můžete vytvořit škálovatelnou, zabezpečenou a efektivní platformu pro nasazování a správu aplikací v cloudu.

Doporučení k návrhu

Při nasazování App Service mějte na paměti následující osvědčené postupy.

  • Pro kanál CI/CD použijte Azure DevOps. Azure DevOps poskytuje kompletní řešení pro automatizaci sestavování, testování a nasazování aplikací.

  • Kanály nebo akce slouží k:

    • Maximalizujte výhody použitých postupů napříč týmem.
    • Odstraňte velkou zátěž spojenou s vynalézáním procesů.
    • Získejte předvídatelnost a přehled o celkové kvalitě a flexibilitě.
  • Nasazujte brzy a často pomocí kanálů založených na triggerech a naplánovaných kanálů. Kanály založené na aktivačních událostech zajišťují, že změny projdou správným ověřením. Plánované kanály spravují chování v měnících se prostředích.

  • Oddělte nasazení infrastruktury od nasazení aplikací. Základní infrastruktura se mění méně často než aplikace. Zacházet s každým typem nasazení jako s samostatným tokem a kanálem.

  • K automatizaci zřizování a správy prostředků Azure použijte infrastrukturu jako kódové nástroje, jako jsou šablony ARM nebo Bicep. Pomocí šablon ARM a Bicep můžete definovat infrastrukturu jako kód, což usnadňuje správu verzí, spolupráci a automatizaci nasazení prostředků.

  • Ukládejte tajné kódy a další citlivé artefakty v příslušném úložišti tajných kódů (jako jsou tajné kódy Azure Key Vault nebo Tajné kódy GitHubu). Povolte čtení akcí a dalších částí pracovního postupu podle potřeby.

  • Snažte se o maximální souběžnost nasazení tím, že se vyhnete pevně zakódované konfiguraci a nastavení.

  • Implementujte zabezpečení shift-left tím, že v rané fázi kanálu zahrnete nástroje pro kontrolu ohrožení zabezpečení a tajných kódů, jako jsou skenery kontejnerů.

  • Nastavte strategii nasazení, která implementuje principy modrých/zelených nebo kanárových nasazení, abyste minimalizovali výpadky a snížili riziko selhání nasazení. To vám umožní postupně zavádět nové verze aplikace pro malou podmnožinu uživatelů, než ji nasadíte pro celou uživatelskou základnu.

  • Pomocí App Service slotů nasazení implementujte strategii nasazení modré nebo zelené. To vám umožní ověřit a otestovat nasazení v přípravném prostředí předtím, než je nasadíte do produkčního prostředí. Tato strategie vám pomůže zajistit bezproblémové a úspěšné nasazení, ověřit změny aplikací a minimalizovat výpadky.

  • Pomocí Application Insights můžete monitorovat a sledovat výkon a dostupnost vašich aplikací. Application Insights poskytuje přehled o stavu a využití vašich aplikací v reálném čase. Může vám také pomoct rychle diagnostikovat a vyřešit problémy, které vzniknou.

  • Implementujte nástroje a procesy, které usnadňují komunikaci a spolupráci, jako jsou agilní vývojové metodologie a nástroje pro sledování a správu úkolů a závislostí. Úspěšná automatizace platforem, DevOps a procesy CI/CD závisí na efektivní spolupráci a komunikaci mezi členy týmu.

Klíčem k úspěšné automatizaci platforem, DevOps a CI/CD s App Service je navrhovat a implementovat procesy a systémy, které jsou škálovatelné, zabezpečené, dobře monitorované a spolupracují. Tato doporučení pomáhají IT a cloudovým technikům zajistit, aby jejich aplikace a rozhraní API poskytovaly nejlepší možný výkon a uživatelské prostředí.