Přijetí postupů bezpečného nasazení

Dokončeno
Implementujte v procesu nasazení ochranné mantinely, abyste minimalizovali dopad chyb nebo neočekávaných podmínek.

Během vývojového cyklu procházejí artefakty úloh mnoha změnami, jakmile se implementují a testují a opravují chyby.

Proces nasazení musí dodržovat standardní provozní postup. Všechny změny musí být nasazeny se stejnou úrovní rigorií. Tento princip platí stejně pro kód, konfiguraci a všechny související artefakty. Klíčem je co nejdříve použít bezpečné postupy, abyste měli předvídatelnost v produkčním prostředí. I když dojde k chybám, měli byste být schopni co nejdříve zavést změny obnovení.

Ukázkový scénář

Společnost Contoso Air vyvinula webovou aplikaci, která umožňuje zákazníkovi rezervovat lety přímo prostřednictvím aplikace. Aplikace běží v produkčním prostředí po dobu více než rok.

Aplikace je plně nasazená v Azure a je založená na službě Aplikace Azure Service, Azure Cosmos DB, Azure Functions, Azure Logic Apps a Azure Service Bus.

Codify – automatizované standardy nasazení

Standardizujte proces nasazení jakékoli změny pomocí automatizovaných procesů nasazení, jako jsou kanály. Všechna prostředí musí používat kanály. Klasifikujte prostředky a verze podle prostředí, aby je bylo možné snadno sledovat a identifikovat.

Konzistentní metody nasazení snižují problémy způsobené chybami procesu a rozptylem a umožňují soustředit se na problémy související s úlohami.

Standardizace zajišťuje, že se nasazení dokončí bezpečně, spolehlivě a s opakovatelností.

Klasifikace usnadňuje zobrazení protokolů předchozích nasazení a problémů, ke kterým došlo. Tyto informace můžete použít k urychlení operací vrácení zpět a vrácení zpět.

Výzva společnosti Contoso

  • Tým úloh Contoso Air používá automatizované kanály sestavení a nasazení, ale nasazení obvykle vyžadují ruční zásah během celé operace ke změně a ověření různých nastavení konfigurace.
  • Vzhledem k ručnímu zásahu dochází k častým chybám v nasazení, takže každé uvolnění velmi stresující a rušivé události pro celý tým. Ruční zásah také ztěžuje vrácení zpět při selhání nasazení.

Použití přístupu a výsledků

  • Tým přiděluje čas na automatizaci změn konfigurace v rámci nasazení a integraci přidané funkce do existujících kanálů nasazení.
  • Nastavení konfigurace přidružené k jednotlivým prostředím se externalizují do příslušných souborů JSON, které se ukládají do správy zdrojového kódu pro další sledovatelnost. Nastavení, které jsou považovány za tajné kódy, se ukládají do úložišť trezorů tajných kódů, které se přidělují také jednotlivým prostředím.
  • Všechny změny se teď protokolují během nasazení, čímž se dosahuje úplné sledovatelnosti, která vám pomůže při řešení potíží a auditů. Tým také přidá automatizované testy pro ověření změn konfigurace kanálu.
  • V dalším kroku bude tým pracovat na úplné automatizaci vrácení zpět za účelem další optimalizace procesů.
  • V důsledku nové automatizace jsou nasazení spolehlivější a předvídatelnější a týmová moralizace také vzrostla.

Nasazení často

Nasaďte malé přírůstkové aktualizace v pravidelných intervalech.

Použití tohoto přístupu pomůže udržet uživatelské scénáře a pracovní položky spravovatelné z hlediska řízení projektů a snížit riziko rozsáhlých problémů v případě selhání nasazení.

Výzva společnosti Contoso

  • Procesy nasazení týmu byly historicky provedeny ve velkých verzích každé tři až čtyři měsíce. Tento postup znesnadňuje ověření vydané verze. Tým měl také potíže s řešením problémů s tolika pohyblivými částmi.
  • Problematické verze, které vyžadují opravy hot-opravy mid-release nebo musí být vráceny zpět a opuštěny, došlo několikrát.
  • Verze jsou velmi stresující a byly považovány za "všechny ruce na palubě" situace, které negativně ovlivnily týmovou morální hodnotu.

Použití přístupu a výsledků

  • Po nejnovější problematické verzi se zúčastněné strany zeptaly, aby tým přišel s lepším přístupem k nasazením. Tým se rozhodl změnit své postupy tak, aby upřednostnil časté, malé změny. Omezí rozsah každé verze na jednu nebo (maximálně) několik souvisejících změn, které jsou důkladně testovány při povýšení sestavení napříč nižšími prostředími.
  • V důsledku toho se verze staly mnohem efektivnější a kvalita se zvýšila. Verze se snadněji ověřují a problémy se snadněji řeší.
  • Pravidelné tempo předvídatelných vydání pomohlo obnovit důvěru a morální chování týmu. Uživatelé mají také výhody. S vyšší kvalitou verzí vidí méně přerušení a mnohem dříve získají přístup k novým funkcím.

Použití progresivního přístupu k expozici

Postupně zavádět aktualizace s důkladnou kontrolou. Pomocí modelů nasazení, které vám umožňují postupně zvýšit počet instancí a zákazníků, dokud nebude aktualizace bezpečně přijata všemi.

Otestujte každou aktualizaci řízeným způsobem, aby se problémy opravily v rané fázi produkce. Vyhněte se zavádění chybných aktualizací, které ovlivňují celou zákaznickou základnu.

Otestujte, jestli je aktualizace zpětně a dopředu kompatibilní.

Výzva společnosti Contoso

  • Tým vidí skvělé výhody při přechodu na menší verze. Vyhraďují méně času na vydání a cítí se energizovány, aby pokračovaly v cestě k dalším vylepšením efektivity provozu.
  • Když experimentují s novými funkcemi, některé změny nebyly uživateli dobře přijaty nebo způsobily zvýšení počtu volání na podporu kvůli strmé křivkě učení, kterou přináší.
  • Zajímá je, jak mohou pokračovat v inovování svých aplikací, aby maximalizovali produktivitu uživatelů, a zároveň minimalizovali dopad vydávání funkcí, které nemusí být tak oblíbené nebo snadno použitelné.

Použití přístupu a výsledků

  • Rozhodli se implementovat model vydávání funkcí, který uživatelům postupně zpřístupňuje nové funkce pomocí příznaků funkcí.
  • Během fází plánování pro nové funkce je definováno kritérium pro výběr, kteří uživatelé budou k funkci poprvé vystaveni. Pro první příjem nové funkce je vybrána malá skupina uživatelů. V závislosti na zpětné vazbě uživatelů se tato funkce nasadí do postupně větších skupin, dokud nebude nová verze spuštěna celá populace uživatelů. Vzhledem k tomu, že nové funkce jsou vystaveny více uživatelům, tým podpory dokumentuje výsledek případů podpory, aby sdílel interně a potenciálně naplnil externí nejčastější dotazy.

Prověřte si své znalosti

1.

Která z následujících možností je základním principem postupů bezpečného nasazení?

2.

Která z následujících možností představuje doporučenou strategii nasazení?

3.

Jak společnost Contoso přijala přístup progresivní expozice?