Co jsou zásobníky nasazení?

Dokončeno

Zásobník nasazení Azure je typ prostředku Azure, který umožňuje spravovat životní cyklus kolekce prostředků Azure jako jednu atomické jednotky, a to i v případě, že pokrývají více skupin prostředků nebo předplatných. Umožňuje konzistentní a opakovatelná nasazení, zjednodušuje správu a umožňuje efektivní škálování a aktualizaci prostředků.

V této lekci se dozvíte o organizaci prostředků v Azure a o tom, jak vám zásobníky nasazení můžou pomoct spravovat prostředky způsoby, které ještě nebyly možné.

Organizace prostředků

Existuje mnoho způsobů, jak uspořádat prostředky v Azure. Můžete se rozhodnout uspořádat prostředky na základě prostředí (produkčního, přípravného, vývojového), životního cyklu aplikace nebo funkce (například připojení nebo výpočetních prostředků). Na tato rozhodnutí mají vliv faktory, jako je velikost vaší organizace, počet aplikací a rezidence dat, a pro každý scénář existují obecné osvědčené postupy.

V prostředích nasazení je můžete rozdělit do různých předplatných nebo dokonce do skupin pro správu. Všechny komponenty aplikace můžou existovat v jedné skupině prostředků, více skupinách prostředků nebo dokonce v několika předplatných. Osvědčené postupy pro organizaci prostředků Azure navrhují uspořádání prostředků do skupin prostředků na základě životního cyklu a zabezpečení.

Jedna aplikace skupiny prostředků

Při použití jedné skupiny prostředků pro vaši aplikaci je vhodné použít jednu skupinu prostředků. Pokud s Azure teprve začínáte a teprve začínáte s vývojovým prostředím nebo nasazujete produkční aplikaci bez mnoha prostředků, může fungovat jedna skupina prostředků.

Skupina prostředků se často používá jako hranice zabezpečení pro oprávnění. Pokud vaše požadavky na zabezpečení nejsou přísné, můžete spravovat jedno přiřazení řízení přístupu na základě role (RBAC) v oboru skupiny prostředků.

Řekněme, že vaše aplikace se skládá ze služby App Service, Application Insights a databáze SQL nasazené do jedné skupiny prostředků. Vaše organizace má samostatné týmy pro správu výpočetních, webových aplikací a databází. Pokud zásady zabezpečení vaší organizace vyžadují podrobné řízení přístupu na základě role( RBAC), je nutné místo oboru skupiny prostředků nastavit obor oprávnění v oboru prostředků.

Diagram představující aplikaci s prostředky nasazenými do jedné skupiny prostředků

V průběhu času je možné, že prostředky nesouvisející s aplikací se také nasadí do stejné skupiny prostředků. Kolega z vaší společnosti například nasadí novou službu Azure Key Vault a v době nasazení omylem zvolí nesprávnou skupinu prostředků. Tento scénář může ztěžovat určení, které prostředky patří do které aplikace, a potenciálně by mohly vést k problémům, jako je náhodné odstranění kritického prostředku.

Vícefaktorová aplikace skupiny prostředků

Co se stane, když se vaše aplikace škáluje do bodu, kde je potřeba provést změnu? Může být nutné vzít části aplikace a rozdělit je do samostatných skupin prostředků pro zjednodušené kontrolní mechanismy zabezpečení. Můžete například umístit všechny výpočetní prostředky do skupiny výpočetních prostředků, prostředky aplikace do skupiny prostředků aplikace a všechny databáze do skupiny prostředků databáze.

Diagram představující aplikaci s prostředky nasazenými do více skupin prostředků

Tento model umožňuje vymezit oprávnění výpočetním, aplikačním a databázovým týmům na příslušné skupiny prostředků. I když tento postup může problém vyřešit, zavedli jste decentralizovanou správu. Vzhledem k tomu, že se většina nasazení v Azure vztahuje na skupinu prostředků, už nemáte možnost spravovat prostředky jako jednu jednotku.

Pokud jsou prostředky aplikace nasazené do samostatných skupin prostředků, může být obtížné určit, které prostředky jsou součástí aplikace. Značky Azure můžete použít k identifikaci prostředků v aplikaci, ale je možné, že prostředek není správně označený.

V modelu více prostředků může být potřeba provádět operace nasazení více než jednou. Když nasadíte prostředky v závislosti na způsobu nasazení, může být nutné spustit více příkazů nasazení. Většina nasazení v Azure je vymezená na skupinu prostředků, takže je potřeba nejprve nasadit síťové prostředky a pak prostředky vaší aplikace. Totéž platí pro operace odstranění. Pokud potřebujete odebrat všechny skupiny prostředků související s aplikací, možná budete muset provést více operací odstranění.

Zadání zásobníků nasazení

Zásobníky nasazení mění způsob, jakým přemýšlíte o organizaci prostředků napříč skupinami prostředků a předplatnými. Zásobník nasazení umožňuje seskupit všechny prostředky, které tvoří vaši aplikaci, bez ohledu na to, kde jsou v organizační hierarchii prostředků Azure. Můžete je spravovat jako jednu jednotku. Díky zásobníkům nasazení můžete provádět operace životního cyklu s kolekcí prostředků, které tvoří zásobník.

Zásobníky nasazení si můžete představit jako řadu ukazatelů, které seskupují prostředky vaší aplikace do jedné jednotky. Zásobníky nasazení je možné vytvářet v různých oborech, jako jsou skupiny prostředků, předplatná a skupiny pro správu.

Diagram znázorňující prostředky aplikace spravované zásobníkem nasazení a nasazený do více skupin prostředků

Podívejte se na příklad z předchozího příkladu. Nasazením aplikace a jejích prostředků s jedním zásobníkem vymezeným na úrovni předplatného a napříč skupinami prostředků teď můžete aplikaci spravovat jako jednu jednotku. Každá skupina prostředků a její prostředky jsou spravovány zásobníkem.

Použití zásobníků nasazení

Jaké operace je možné provádět se zásobníky nasazení? Můžete vytvářet, vypisovat, aktualizovat a odstraňovat zásobníky nasazení. U prostředků můžete zobrazit prostředky v zásobníku, přidávat a odebírat prostředky v zásobníku a chránit zásobník a jeho prostředky před odstraněním.

Vytvoření a nasazení zásobníku nasazení a jeho prostředků je téměř stejné jako standardní nasazení Azure a používá stejné šablony JSON ARM, soubory Bicep nebo specifikace šablon, na které jste zvyklí. Příklad:

Příkaz Azure CLI pro nasazení souboru Bicep do skupiny prostředků:

az deployment group create \
    --resource-group rg-depositsApplication \
    --template-file ./main.bicep

Příkaz Azure CLI pro vytvoření zásobníku nasazení v oboru skupiny prostředků:

az stack group create \
    --name stack-deposits \
    --resource-group rg-depositsApplication \
    --template-file ./main.bicep \
    --action-on-unmanage detachAll \
    --deny-settings-mode none

Zásobníky nasazení umožňují efektivní vyčištění prostředí. Zásobníky nasazení umožňují odstranit zásobník a všechny jeho prostředky prostřednictvím jediného volání rozhraní API, aniž byste museli rozumět závislostem. Tato funkce zjednodušuje odebrání prostředků spolehlivým způsobem, zlepšuje rychlost odebrání prostředků. Příklad:

Příkaz Azure CLI pro odstranění zásobníku nasazení v oboru skupiny prostředků spolu s jeho prostředky:

az stack group delete \
    --name stack-deposits \
    --resource-group rg-depositsApplication \
    --action-on-unmanage detachAll

Poznámka:

V rámci stávající strategie nasazení už můžete použít kompletní nasazení režimu. Pokud to uděláte, zvažte, že se zásobníky nasazení budou vyvíjet jako další vývoj, stejně jako bezpečnější možnost.

Spravované prostředky

Když odešlete soubor Bicep, šablonu JSON ARM nebo specifikaci šablony do zásobníku nasazení, bude zásobník zodpovědný za správu prostředků popsaných v souboru. Prostředky spravované zásobníkem se označují jako spravované prostředky, ale tyto prostředky se stále upravují prostřednictvím původních souborů šablony.

Pokud už prostředek není potřeba spravovat pomocí zásobníku nasazení, můžete ho upravit tak, aby už prostředek nezahrnul. Akce týkající se nespravovaného chování zásobníku nasazení určuje, co se stane s prostředkem, který se odebere z definice zásobníku nasazení. Toto chování, probírané dále v této lekci, určuje, jestli je prostředek, skupina prostředků nebo skupiny pro správu odpojený nebo odstraněný ze zásobníku.

Odepřít nastavení

Kromě toho můžete nakonfigurovat nastavení odepření zásobníku a jeho prostředků, které brání neoprávněným změnám. Tato přiřazení zamítnutí jsou přizpůsobitelná. Režim můžete nastavit na žádný příznak, odepřít odstranění nebo odepřít zápis a odstranění, což může vypadat podobně jako zámky Azure. Kromě toho můžete z přiřazení zamítnutí vyloučit konkrétní akce nebo instanční objekty. Zvažte možnost odepřít nastavení další vrstvy ochrany před náhodnými úpravami a odstraněními.