Biztonságos üzembehelyezési eljárások bevezetése

Befejeződött
A hibák vagy váratlan feltételek hatásának minimalizálása érdekében implementáljon védőkorlátokat az üzembe helyezési folyamat során.

A fejlesztési ciklus során a számítási feladatok összetevői számos módosításon mennek keresztül a implementálásuk és tesztelésük során, valamint a hibák kijavítása során.

Az üzembe helyezési folyamatnak szabványos üzemeltetési eljárást kell követnie. Minden módosítást ugyanolyan szigorúsággal kell üzembe helyezni. Ez az elv egyformán vonatkozik a kódra, a konfigurációra és az összes kapcsolódó összetevőre. A legfontosabb, hogy a lehető leghamarabb alkalmazza a biztonságos eljárásokat, hogy kiszámítható legyen az éles környezetben. Még akkor is, ha hibák érik el az ügyfeleket, a lehető leghamarabb végre kell hajtania a helyreállítási módosításokat.

Példaforgatókönyv

A Contoso Air kifejlesztett egy webalkalmazást, amellyel az ügyfél közvetlenül az alkalmazáson keresztül foglalhat járatokat. Az alkalmazás több mint egy éve fut éles környezetben.

Az alkalmazás teljes mértékben üzembe van helyezve az Azure-ban, és Azure-alkalmazás Szolgáltatásra, az Azure Cosmos DB-re, az Azure Functionsre, az Azure Logic Appsre és az Azure Service Busra épül.

Automatizált üzembehelyezési szabványok kódolása

Szabványosítsa a módosítás üzembe helyezésének folyamatát automatizált üzembehelyezési folyamatokkal, például folyamatokkal. Minden környezetnek folyamatokat kell használnia. Az objektumok és verziók besorolása környezetenként, hogy könnyen nyomon követhetők és azonosíthatók legyenek.

A konzisztens üzembehelyezési módszerek csökkentik a folyamathibák és a variancia okozta problémákat, és lehetővé teszik, hogy a munkaterheléssel kapcsolatos problémákra összpontosítson.

A szabványosítás biztosítja, hogy az üzembe helyezés biztonságosan, megbízhatóan és megismételhető módon legyen befejezve.

A besorolás megkönnyíti a korábbi üzemelő példányok és problémák naplóinak megtekintését. Ezeket az információkat felhasználhatja a visszaállítási és a visszaállítási műveletek felgyorsítására.

A Contoso kihívása

  • A Contoso Air számítási feladatainak csapata automatizált buildelési és üzembehelyezési folyamatokat használ, de az üzemelő példányok általában manuális beavatkozást igényelnek a művelet során a különböző konfigurációs beállítások módosításához és érvényesítéséhez.
  • A manuális beavatkozás miatt gyakori hibák tapasztalhatók az üzembe helyezés során, így minden kiadás rendkívül stresszes és zavaró eseményt jelent az egész csapat számára. A manuális beavatkozás szintén megnehezíti a visszaállítást, ha egy üzembe helyezés meghiúsul.

A megközelítés és az eredmények alkalmazása

  • A csapat időt szán a konfigurációs módosítások automatizálására az üzembe helyezés részeként, valamint a hozzáadott funkciók integrálására a meglévő üzembehelyezési folyamatokba.
  • Az egyes környezetekhez társított konfigurációs beállítások a megfelelő JSON-fájlokon kívülre kerülnek, amelyeket a rendszer a forrásvezérlőbe ment a további nyomon követhetőség érdekében. Gépház, amelyek titkosnak minősülnek, a titkos tárolók tárolóiba kerülnek, amelyeket az egyes környezetek is lefoglalnak.
  • A rendszer mostantól minden módosítást naplóz az üzembe helyezés során, így teljes nyomon követhetőség érhető el a hibaelhárítási erőfeszítések és az auditok segítése érdekében. A csapat automatizált teszteket is hozzáad a folyamat konfigurációs módosításainak ellenőrzéséhez.
  • Ezután a csapat a visszaállítások teljes automatizálásán fog dolgozni a folyamatok további optimalizálása érdekében.
  • Az új automatizálás eredményeként az üzembe helyezések megbízhatóbbak és kiszámíthatóbbak voltak, és a csapat morálja is emelkedett.

Gyakori üzembe helyezés

Kis növekményes frissítések üzembe helyezése rendszeres ütemben.

Ezzel a módszerrel a felhasználói történetek és a munkaelemek kezelhetők maradnak projektfelügyeleti szempontból, és csökkentik a nagy léptékű problémák kockázatát, ha az üzembe helyezés sikertelen.

A Contoso kihívása

  • A csapat üzembe helyezési folyamatai korábban három-négyhavonta jelentek meg. Ez a gyakorlat megnehezíti a kiadás érvényesítését. A csapatnak nehézséget okozott a sok mozgó alkatrészsel kapcsolatos problémák elhárítása is.
  • Az olyan problémás kiadások, amelyek a kiadás közepén gyakori javításokat igényelnek, vagy amelyeket vissza kell állítani és elhagyatni, többször előfordultak.
  • A kiadások rendkívül stresszesek, és "minden kéz a fedélzeten" helyzetekként kezelték őket, ami negatívan befolyásolta a csapat morálját.

A megközelítés és az eredmények alkalmazása

  • A legújabb problémás kiadás után az érdekelt felek arra kérték a csapatot, hogy jobban közelítse meg az üzembe helyezéseket. A csapat úgy döntött, hogy megváltoztatja gyakorlatát, hogy előnyben részesítse a gyakori, kis változtatásokat. Ezek az egyes kiadások hatókörét egy vagy (legfeljebb) néhány kapcsolódó módosításra korlátozzák, amelyeket alaposan tesztelnek, mivel a build előléptetett az alacsonyabb környezetekben.
  • Ennek eredményeképpen a kiadások sokkal hatékonyabbak lettek, és a minőség növekedett. A kiadások egyszerűbben érvényesíthetők, a problémákat pedig egyszerűbb elhárítani.
  • A kiszámítható kiadások rendszeres ütemének használata hozzájárult a csapat megbízhatóságának és moráljának helyreállításához. A felhasználók is jól járnak. Magasabb kiadási minőséggel kevesebb fennakadást tapasztalnak, és sokkal hamarabb férnek hozzá az új funkciókhoz.

Progresszív expozíciós megközelítés használata

A frissítések fokozatos bevezetése kellő gondossággal. Olyan üzemi modelleket használjon, amelyek lehetővé teszik a példányok és ügyfelek számának fokozatos növelését mindaddig, amíg a frissítést mindenki biztonságosan nem fogadja el.

Tesztelje az egyes frissítéseket ellenőrzött módon, hogy a problémákat az éles környezet korai szakaszában kijavítsa. Kerülje a hibás frissítés bevezetése, amely hatással van a teljes ügyfélbázisra.

Ellenőrizze, hogy a frissítés kompatibilis-e visszafelé és előre.

A Contoso kihívása

  • A csapatnak nagy előnye van, ha a megközelítésüket kisebb kiadásokra cserélik. Most kevesebb időt szánnak a kiadásokra, és úgy érzik, hogy lendületesen haladnak tovább a további működési kiválósági fejlesztések útján.
  • Az új funkciókkal való kísérletezés során a változások némelyikét nem fogadták jól a felhasználók, vagy az általuk hozott meredek tanulási görbe miatt megnövekedett a támogatási hívások száma.
  • Kíváncsiak arra, hogyan folytathatják az alkalmazások innovációját a felhasználók termelékenységének maximalizálása érdekében, miközben továbbra is minimalizálják a nem olyan népszerű vagy könnyen használható funkciók kiadásának hatását.

A megközelítés és az eredmények alkalmazása

  • Úgy döntöttek, hogy implementálnak egy funkciókiadási modellt, amely fokozatosan teszi elérhetővé az új funkciókat a felhasználók számára a funkciójelzők használatával.
  • Az új funkciók tervezési szakaszaiban meghatározunk egy feltételt, amely meghatározza, hogy mely felhasználók lesznek először elérhetővé téve a szolgáltatásnak. A rendszer kiválasztja a felhasználók egy kis csoportját, hogy először megkapja az új funkciót. A felhasználói visszajelzéstől függően a funkció egyre nagyobb csoportokban lesz üzembe helyezve, amíg a teljes felhasználói sokaság nem futtatja az új verziót. Mivel egyre több felhasználót érintenek az új funkciók, a támogatási csapat dokumentálja a támogatási esetek eredményét a belső megosztáshoz, és potenciálisan feltölti a külső gyakori kérdéseket.

Tesztelje tudását

1.

Az alábbiak közül melyik a biztonságos üzembehelyezési gyakorlatok alapvető elve?

2.

Az alábbiak közül melyik ajánlott üzembe helyezési stratégia?

3.

Hogyan fogadta el a Contoso a progresszív expozíció megközelítését?