Definování prostředků

Dokončeno

Šablony Bicep jsou soubory, které vytváříte, které definují prostředky Azure, které se mají nasadit.

Vaše společnost toy potřebuje, abyste vytvořili opakovaně použitelnou šablonu Bicep pro uvedení produktu na trh. Šablona musí nasadit účet úložiště Azure a prostředky služby Aplikace Azure Service, které se použijí pro marketing jednotlivých nových produktů během jejího spuštění.

V této lekci se dozvíte, jak definovat prostředek v šabloně Bicep, jak fungují názvy zdrojů a jak můžete vytvářet prostředky, které spolu vzájemně souvisejí.

Poznámka:

Příkazy v této lekci jsou znázorněny pro ilustraci konceptů. Zatím nespouštět příkazy. Brzy si procvičíte, co se tady naučíte.

Definování prostředku

Hlavní věcí, kterou budete dělat se šablonami Bicep, je definování prostředků Azure. Tady je příklad toho, jak v Bicep vypadá typická definice prostředků. Tento příklad vytvoří účet úložiště s názvem toylaunchstorage.

resource storageAccount 'Microsoft.Storage/storageAccounts@2023-05-01' = {
  name: 'toylaunchstorage'
  location: 'westus3'
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
  properties: {
    accessTier: 'Hot'
  }
}

Pojďme se podrobněji podívat na některé klíčové části této definice prostředku:

  • Klíčové resource slovo na začátku říká Bicep, že se chystáte definovat prostředek.

  • V dalším kroku dáte prostředku symbolický název. V příkladu je storageAccountsymbolický název zdroje . Symbolické názvy se v rámci Bicep používají k odkazování na prostředek, ale v Azure se nikdy nezobrazí.

  • Microsoft.Storage/storageAccounts@2022-09-01je typ prostředku a verze rozhraní API prostředku. Microsoft.Storage/storageAccounts informuje Bicep, že deklarujete účet úložiště Azure. Datum 2022-09-01 je verze rozhraní API služby Azure Storage, které Bicep používá při vytváření prostředku.

    Tip

    Rozšíření Bicep pro Visual Studio Code vám pomůže najít typy prostředků a verze rozhraní API pro prostředky, které vytvoříte. Pokud znáte šablony ARM, mějte na paměti, že verze rozhraní API odpovídá verzi, kterou byste tam použili.

  • Musíte deklarovat název prostředku, což je název, který bude účet úložiště přiřazený v Azure. Název prostředku nastavíte pomocí klíčového name slova.

    Důležité

    Symbolické názvy se používají jenom v šabloně Bicep a nezobrazují se v Azure. Názvy prostředků se zobrazují v Azure.

  • Potom nastavíte další podrobnosti o prostředku, jako je jeho umístění, skladová položka (cenová úroveň) a druh prostředku. Existují také vlastnosti, které můžete definovat, které se pro každý typ prostředku liší. Různé verze rozhraní API můžou také představovat různé vlastnosti. V tomto příkladu nastavujeme úroveň přístupu účtu úložiště na Hotúroveň přístupu .

Tip

Názvy prostředků často obsahují pravidla, která musíte dodržovat, například maximální délku, povolené znaky a jedinečnost ve všech Azure. Požadavky na názvy prostředků se pro každý typ prostředku Azure liší. Než je přidáte do šablony, nezapomeňte porozumět omezením a požadavkům na pojmenování.

Co se stane, když prostředky vzájemně závisejí?

Šablona Bicep obvykle obsahuje několik prostředků. Často potřebujete prostředek, který bude záviset na jiném prostředku. Možná budete muset extrahovat některé informace z jednoho prostředku, abyste mohli definovat jiné. Pokud nasazujete webovou aplikaci, budete muset před přidáním aplikace vytvořit serverovou infrastrukturu. Tyto relace se nazývají závislosti.

Budete muset nasadit aplikaci služby App Service pro šablonu, která pomůže s spuštěním produktu toy, ale k vytvoření aplikace App Service musíte nejprve vytvořit plán služby App Service. Plán služby App Service představuje prostředky hostující server a deklaruje se jako v tomto příkladu:

resource appServicePlan 'Microsoft.Web/serverFarms@2023-12-01' = {
  name: 'toy-product-launch-plan'
  location: 'westus3'
  sku: {
    name: 'F1'
  }
}

Tato definice prostředku říká Bicep, že chcete nasadit plán služby App Service s typem Microsoft.Web/serverFarmsprostředku. Zdroj plánu má název toy-product-launch-plana nasadí se do oblasti USA – západ 3. Používá cenovou skladovou položku F1, což je úroveň Free služby App Service.

Teď, když jste deklarovali plán služby App Service, je dalším krokem deklarace aplikace:

resource appServiceApp 'Microsoft.Web/sites@2023-12-01' = {
  name: 'toy-product-launch-1'
  location: 'westus3'
  properties: {
    serverFarmId: appServicePlan.id
    httpsOnly: true
  }
}

Tato šablona dává Azure pokyn k hostování aplikace v plánu, který jste vytvořili. Všimněte si, že definice plánu obsahuje symbolický název plánu služby App Service na tomto řádku: serverFarmId: appServicePlan.id. Tento řádek znamená, že Bicep získá ID prostředku plánu služby App Service pomocí id vlastnosti. V podstatě říkáme: ID serverové farmy této aplikace je ID plánu služby App Service definovaného dříve.

Tip

V Azure je ID prostředku jedinečným identifikátorem pro každý prostředek. ID prostředku zahrnuje ID předplatného Azure, název skupiny prostředků a název prostředku spolu s dalšími informacemi.

Deklarováním prostředku aplikace s vlastností, která odkazuje na symbolický název plánu, Azure rozumí implicitní závislosti mezi aplikací app Service a plánem. Když nasadí prostředky, Azure zajistí, že plán plně nasadí, než začne nasazovat aplikaci.