Nasazení šablon v různých oborech

Dokončeno

Teď rozumíte různým rozsahům, ve kterých můžete nasazovat prostředky. V této lekci se dozvíte, jak začít psát soubory Bicep pro nasazení v těchto oborech.

Určení cílového oboru pro soubor Bicep

Bicep potřebuje znát rozsah, ve kterém je soubor nasazený. Tyto informace jsou důležité, protože Bicep potřebuje zajistit, aby prostředky, které nasazujete, byly platné pro obor, který používáte. Například rozšíření Bicep pro Visual Studio Code vás upozorní, pokud se pokusíte definovat prostředek v nepodporované oblasti.

Pomocí klíčového slova targetScope dejte Bicep vědět, že prostředky v souboru jsou určené pro konkrétní obor. Tady je příklad souboru Bicep, který nasazuje prostředky v rozsahu skupiny pro správu:

targetScope = 'managementGroup'

resource policyDefinition 'Microsoft.Authorization/policyDefinitions@2024-05-01' = {
  // ...
}

Všimněte si, že instruujete Bicep, aby nasadil prostředky na úrovni skupiny pro správu, ale nespecifikujete, kterou skupinu pro správu . Když šablonu nasadíte, sdělíte Bicep přesně, do které skupiny pro správu chcete prostředky nasadit. Rutiny Azure CLI a Azure PowerShellu poskytují argumenty pro zadání těchto informací.

targetScope souboru můžete nastavit na resourceGroup, subscription, managementGroupnebo tenant. Pokud nezadáte cílový obor, Bicep předpokládá rozsah resourceGroup.

Vytvořte skupiny prostředků

Teď, když rozumíte tomu, jak vytvářet nasazení v různých oborech, zkuste toto porozumění použít k vytvoření skupiny prostředků, což je prostředek s vymezeným předplatným:

targetScope = 'subscription'

resource resourceGroup 'Microsoft.Resources/resourceGroups@2024-07-01' = {
  name: 'example-resource-group'
  location: 'westus'
}

V tomto příkladu si všimněte, že soubor Bicep má targetScope ve formátu subscription, což znamená, že Bicep ve výchozím nastavení považuje všechny prostředky v souboru za nastavené na úroveň předplatného.

Poznámka

V tomto modulu se dozvíte, jak pomocí Bicep vytvořit předplatná a skupiny pro správu Azure.

Odeslat nasazení

Když zahájíte nasazení, musíte Azure sdělit, ve kterém oboru ho chcete nasadit. To znamená, že pro každý obor nasazení použijete jiný příkaz Azure CLI, jak je znázorněno tady:

Nasazení v tomto rozsahu: Spusťte tento příkaz Azure CLI:
Skupina prostředků az deployment group create
Předplatné az deployment sub create
Skupina pro správu az deployment mg create
Nájemce az deployment tenant create

Když zahájíte nasazení, musíte Azure sdělit, ve kterém oboru ho chcete nasadit. To znamená, že pro každý obor nasazení použijete jinou rutinu PowerShellu, jak je znázorněno tady:

Nasadit v tomto rozsahu: Použijte tuto rutinu PowerShell:
Skupina prostředků New-AzResourceGroupDeployment
Předplatné New-AzSubscriptionDeployment
Skupina pro správu New-AzManagementGroupDeployment
Nájemce New-AzTenantDeployment

Azure ukládá metadata o každém nasazení. Na rozdíl od nasazení v oboru skupiny prostředků musíte při nasazení v jiných oborech zadat některé konkrétní informace, aby Azure mohla metadata správně uložit.

  • umístění: Metadata nasazení musí být uložena v zadaném umístění. Nemusíte zadávat umístění pro nasazení oboru skupiny prostředků, protože metadata nasazení používají stejné umístění jako skupina prostředků. Když ale vytvoříte nasazení v rámci předplatného, skupiny pro správu nebo nájemce, musíte zadat oblast Azure, ve které je uloženo metadata o nasazení. Prostředky pro vaše nasazení v těchto oborech se nevytvořily vždy ve stejném umístění, které jste zadali pro metadata.

  • Název: Všechna nasazení v Azure mají název. Azure můžete požádat o informace o nasazení pomocí jejího názvu. Pokud k odeslání nasazení použijete Azure CLI nebo Azure PowerShell, nemusíte zadávat název. Pokud to ale neuděláte, název souboru šablony se použije jako název nasazení.

Kombinace oboru, umístění a názvu nasazení musí být jedinečná. Řekněme například, že vytvoříte nasazení předplatného s názvem my-deployment a použijete umístění USA – východ k uložení metadat. Nemůžete vytvořit další nasazení ve stejném předplatném, které má název my-deployment, i když je například v Západní Evropě. Pokud vytvoříte jiné nasazení s názvem my-deployment ve východní části USA, přepíše stávající nasazení.