Megosztás a következőn keresztül:


Automation

A szoftveralapú felhőalapú infrastruktúrában a csapatok különböző eszközöket és technikákat használnak az infrastruktúra kiépítéséhez, konfigurálásához és kezeléséhez. A csapatok fejlődésével és növekedésével áttérhetnek a portálok használatára és a manuális erőfeszítésekre a kód és az automatizálás használatára az infrastruktúra és szolgáltatások kiépítéséhez, konfigurálásához és kezeléséhez.

Platformautomatizálási szempontok

  • A Minden mint kód (EaC) módszertan implementálása lehetővé teszi a csapatok számára, hogy feltárják a legfontosabb előnyöket, erős fejlesztési kultúrát hozzanak létre, és lehetővé tegyék, hogy az egyes csapatok minden tagja megvizsgálhassa, hogyan és mely erőforrások vannak üzembe helyezve. Az EaC emellett segít a platformcsapatok számára olyan kulcsfontosságú fejlesztési gyakorlatok bevezetésében, amelyek javítják rugalmasságukat és hatékonyságukat. A csapatok nyomon követhetik a módosításokat, és szabályozhatják, hogy mely elemek helyezhetők át éles környezetbe az adattárakban található kóddal, és verziókövetési rendszerekkel kezelhetik azokat.
  • A teams a négyszemű alapelvet követve társprogramozást vagy társértékelést használhat annak érdekében, hogy a kódmódosítások soha ne legyenek egyedül. A társprogramozás és a társértékelés javítja a kód minőségét, lehetővé teszi a csapatok számára a változásokért való felelősség megosztását, valamint a csapat tudásának növelését a megállapodásokkal és az üzembe helyezéssel kapcsolatban. A kódismétléssel a csapattagok új kódolási és automatizálási technikákat és módszereket tanulhatnak meg.
  • A Teamsnek a Githez hasonló verziókövetési rendszereket kell használnia a Git-adattárakkal együtt a társellenőrzés kikényszerítéséhez. A Git-adattárak lehetővé teszik a csapatok számára, hogy fontos ágakat definiáljanak, és fiókszabályzatokkal védjék őket. A szabályzat használatával megkövetelheti a kódmódosításokat ezeken az ágakon, hogy megfeleljenek bizonyos feltételeknek, például a csoporttagok minimális számának jóváhagyását, mielőtt védett ágba egyesülnének.
  • A csapatoknak össze kell kapcsolniuk az EaC módszertanát és a változás-felülvizsgálati folyamatot egy folyamatos integrációs és folyamatos kézbesítési (CI/CD) folyamattal. Minden kódmódosításnak automatikusan aktiválnia kell egy CI-folyamatot, amely statikus kódelemzést, érvényesítést és tesztelést hajt végre. A CI biztosítja, hogy a fejlesztők korán ellenőrizzek a kódjukat (amelyet gyakran sikertelen gyors vagy bal oldali tesztelésnek neveznek) olyan hibák esetén, amelyek későbbi problémákat okozhatnak. Attól függően, hogy a csapat milyen elágaztatási stratégiát használ, a fontos ágak módosításainak különböző környezetekben kell üzembe helyezést aktiválnia. A módosítások jóváhagyása és egyesítése mainután a CD-folyamat üzembe helyezi ezeket a módosításokat az éles környezetben. Ez a kódkezelő rendszer egyetlen igazságforrást biztosít a csapatnak az egyes környezetekben futó adatokhoz.
  • Annak érdekében, hogy a platform teljes mértékben önkiszolgáló legyen, és önkiszolgáló szolgáltatást biztosítson a számítási feladatokért felelős csapatok számára, a platformcsapatnak minden (gyakran extrém automatizálásnak nevezett) automatizálásán kell dolgoznia, a kiépítéstől a konfiguráción és a platformkezelésen át a számítási feladatokért felelős csapatok célzónás előfizetésének kiépítéséig. Az extrém automatizálás lehetővé teszi a platformcsapat számára, hogy a platform üzembe helyezése, konfigurálása és kezelése helyett az érték biztosítására összpontosítson. Az extrém automatizálás emellett egy önfejlesztő ciklust is létrehoz, amely több időt biztosít a csapatnak az automatizálás további kiépítésére.
  • Mivel a platformcsapatok automatizálják az üzemeltetési tevékenységeket és csökkentik az emberi beavatkozást, a fontos feladatokra kell összpontosítaniuk, amelyek lehetővé teszik és felgyorsítják a számítási feladatok csapatának innovációját az Azure-ban. Ennek eléréséhez a platformcsapatnak a platform eszközeinek, szkriptjeinek és képességeinek fejlesztései során több fejlesztési és fejlesztési cikluson kell átesnie.
  • A csapatnak több lehetősége is van az Azure Landing Zone üzembe helyezésének megkezdésére. Ezek a lehetőségek a csapat jelenlegi képességeitől függenek, és a csapat fejlődésével növekedhetnek. Pontosabban a platform üzembe helyezéséhez a Portál, a Bicep vagy a Terraform-alapú szolgáltatások közül választhatunk a teams IaC-jártasságától és eszközhasználati előnyétől függően.
    • Az új és feltörekvő platformcsapatok, amelyek még mindig ismerkednek az infrastruktúrával mint kóddal (IaC), és jobban ismerik az erőforrások üzembe helyezését és kezelését szolgáló portált, az Azure célzónagyorsítót használhatják az indításhoz, amely támogatja a továbbra is ClickOps-megközelítést használó csapatokat. A ClickOps az erőforrások kiépítésének, konfigurálásának és kezelésének folyamata a portálokra, felügyeleti konzolokra és varázslókra kattintva. Ez a gyorsító lehetővé teszi a csapat számára, hogy a portált kezdeti üzembehelyezési eszközként használja, és a platformfejlesztés fejlettségének növekedésével fokozatosan tovább használhatja az Azure CLI-t, a PowerShellt vagy az IaC-t.
    • Az AzOps-megoldás lehetővé teszi a csapatok számára a platformautomatizálási és felügyeleti gyakorlat fejlesztését a ClickOpstól a DevOps-kompatibilisig. A csapat áttérhet a személyes fiókhoz való hozzáférésről a csak a CI/CD-re támaszkodó DevOps-alapelvek és eljárások használatára az AzOps és az IaC használatával. Az AzOps lehetővé teszi, hogy csapata saját architektúrát hozzon létre, használja az Azure Landing Zone Portalgyorsító által üzembe helyezett architektúrát (a kezdeti portálalapú üzembe helyezés után, mivel az AzOps-integráció nem része az ALZ Portal felületének), integrálható egy barnamezős üzembe helyezéssel, vagy egyéni sablonokkal (Bicep vagy ARM) építheti és telepítheti a platformot.
    • A már meglévő készségekkel és képességekkel rendelkező platformcsapatok a DevOps alapelveit és gyakorlatait követve kodifikált megközelítést alkalmazhatnak. A csapatnak erősen kell támaszkodnia az IaC-re és a modern fejlesztési eljárásokra, áttérve az Azure-hozzáférés személyes fiókokon való használatára, és az összes művelet CI/CD-folyamaton keresztüli futtatására. A csapatnak IaC-alapú gyorsítókat kell használnia, például az ALZ-Bicep-et vagy az Azure-beli célzónák Terraform modulját az áttérés felgyorsításához.
  • Az IaC-alapú gyorsítók felügyeleti hatóköre korlátozott. Az új verziók további képességeket és nagyobb erőforrás-kezelési képességet biztosítanak. Gyorsító használata esetén a csapatnak érdemes megfontolnia egy olyan rétegzett megközelítést, amely egy gyorsítóval kezdődik, majd hozzáad egy automatizálási réteget. Az automatizálási réteg olyan képességeket biztosít, amelyekre a csapatnak szüksége van ahhoz, hogy teljes mértékben támogassa a számítási feladatokat végző csapatokat olyan platformfunkciókkal, mint a tartományvezérlő üzembe helyezése az örökölt alkalmazásokhoz.
  • Amikor a platformcsapat devOps-megközelítésre vált, létre kell hozniuk egy folyamatot a vészhelyzeti javítások kezeléséhez. A Privileged Identity Management (PIM) jogosult engedélyekkel kérhetnek hozzáférést a javítások végrehajtásához, és később visszahozhatják a kódba a konfigurációs eltérés korlátozása érdekében, vagy kóddal implementálhatnak egy gyorsjavítást. A csapatnak mindig regisztrálnia kell a gyors javításokat a hátralékban, hogy később átdolgozhassák az egyes javításokat, és korlátozhassák a technikai adósságukat. A túl sok technikai adósság a jövőbeli lassulást eredményezi, mivel egyes platformkódok nem teljes körűen áttekinthetők, és nem felelnek meg a csapat kódolási irányelveinek és alapelveinek.
  • Az Azure Policies használatával automatizálhatja a platformot. Fontolja meg az IaC használatát az Azure-szabályzatok üzembe helyezéséhez és kezeléséhez, amelyet gyakran szabályzat-kódnak (PaC) neveznek. Ezek a szabályzatok lehetővé teszik olyan tevékenységek automatizálását, mint a naplógyűjtés. Számos PaC-keretrendszer is implementál egy kivételi folyamatot, ezért tervezze meg, hogy a számítási feladatokat végző csapatok kivételeket kérjenek a szabályzatok alól.
  • A "Szabályzatalapú irányítás" használatával jelezheti a számítási feladatokat végző csapatoknak, amikor olyan erőforrásokat próbálnak üzembe helyezni, amelyek nem felelnek meg a biztonsági vezérlőknek. Fontolja meg a deny szabályzatok ilyen helyzetekre való üzembe helyezését, amely lehetővé teszi, hogy a számítási feladatok csapatai a Mindent kódként is kezeljék, és elkerüljék a konfigurációs eltérést, amikor a kód egy dolgot deklarál, és a házirend módosított egy beállítást az üzembe helyezéskor. Kerülje a effektusok használatátmodify, például ha egy számítási feladatokkal foglalkozó csapat olyan tárfiókot helyez üzembe a kódban meghatározottak szerintsupportOnlyHttpsTraffic = false, ahol true a modify szabályzat az üzembe helyezéskor a megfelelőség érdekében módosul. Ez azt eredményezi, hogy a kód eltér az üzembe helyezetttől.

Platformautomatizálási tervezési javaslat

  • Az Azure-platform, a dokumentáció, az üzembe helyezés és a tesztelési folyamat teljes átláthatósága és konfigurációkövetése érdekében kövesse az Everything as Code megközelítést.
  • A verziókövetés használatával kezelheti az összes kódtárat, beleértve a következőket:
    • Infrastruktúra mint kód
    • Szabályzat kódként
    • Konfiguráció kódként
    • Üzembe helyezés kódként
    • Dokumentáció kódként
  • Implementálja a négyszemű elvet, valamint a társprogramozás vagy a társ-felülvizsgálat folyamatát annak biztosítása érdekében, hogy a csapat az éles környezetben való üzembe helyezés előtt minden kódmódosítást áttekintsen.
  • Alakítson ki egy elágaztatási stratégiát a csapat számára, és állítsa be a védeni kívánt ágak ágszabályzatait . Ágszabályzatok esetén a csapatoknak lekéréses kérelmeket kell használniuk az egyesítési módosítások elvégzéséhez.
  • Folyamatos integráció és folyamatos teljesítés (CI/CD) használatával automatizálhatja a kódtesztelést és az üzembe helyezést különböző környezetekben.
  • Mindent automatizálhat, például a platform kiépítését, konfigurálását és kezelését, valamint a kezdőzóna-előfizetések kiépítését a számítási feladatokat végző csapatok számára.
  • Az Azure Landing Zones üzembe helyezésének megkezdéséhez használja a csapat képességeinek megfelelő elérhető gyorsítókat.
  • Tervezze meg, hogy rétegzett üzembe helyezési megközelítéssel olyan képességeket ad hozzá, amelyeket nem fed le egy gyorsító, de amelyekre a számítási feladatok csapatainak teljes körű támogatásához szükség van.
  • Hozzon létre egy folyamatot a gyors javítások implementálásához kód használatával. A gyors javításokat mindig regisztrálja a csapat teendőlistája alatt, hogy az egyes javítások egy későbbi időpontban újradolgozhatók legyenek, és korlátozhatja a technikai adósságot.
  • Az infrastruktúra kódként való használata az Azure-szabályzatok üzembe helyezéséhez és kezeléséhez (más néven szabályzat mint kód)
  • Szabályzatok kivételi folyamatának implementálása. Tervezze meg, hogy a számítási feladatokat végző csapatok kivételeket kérjenek a szabályzatok alól, és szükség esetén készen állnak a csapatok letiltásának feloldására.
  • A "Szabályzatalapú irányítás" használatával letilthatja a számítási feladatokat végző csapatokat, amikor olyan erőforrásokat próbálnak üzembe helyezni, amelyek nem felelnek meg a biztonsági vezérlőknek. Ez segít csökkenteni a konfigurációs eltérést, ahol a kód más állapotot deklarál, mint az üzembe helyezés.

További információk