Vysvětlení pořadí nasazení ve službě Azure Blueprints

Důležité

11. července 2026 budou plány Blueprints (Preview) zastaralé. Migrujte existující definice a přiřazení podrobných plánů do specifikací šablon a zásobníků nasazení. Artefakty podrobného plánu se mají převést na šablony ARM JSON nebo soubory Bicep používané k definování zásobníků nasazení. Informace o tom, jak vytvořit artefakt jako prostředek ARM, najdete tady:

Azure Blueprints používá pořadí pořadí k určení pořadí vytváření prostředků při zpracování přiřazení definice podrobného plánu. Tento článek vysvětluje následující koncepty:

  • Výchozí pořadí pořadí, které se používá
  • Jak přizpůsobit objednávku
  • Způsob zpracování přizpůsobené objednávky

V příkladech JSON jsou proměnné, které je potřeba nahradit vlastními hodnotami:

  • Proměnnou {YourMG} nahraďte názvem skupiny pro správu.

Výchozí pořadí pořadí

Pokud definice podrobného plánu neobsahuje žádnou direktivu pro pořadí nasazení artefaktů nebo pokud je direktiva null, použije se následující pořadí:

  • Artefakty přiřazení rolí na úrovni předplatného seřazené podle názvu artefaktu
  • Artefakty přiřazení zásad na úrovni předplatného seřazené podle názvu artefaktu
  • Artefakty Šablony Azure Resource Manager (šablony ARM) na úrovni předplatného seřazené podle názvu artefaktu
  • Artefakty skupiny prostředků (včetně podřízených artefaktů) seřazené podle zástupného názvu

V rámci každého artefaktu skupiny prostředků se pro vytváření artefaktů v této skupině prostředků používá následující pořadí pořadí:

  • Artefakty přiřazení podřízené role skupiny prostředků seřazené podle názvu artefaktu
  • Artefakty přiřazení podřízených zásad skupiny prostředků seřazené podle názvu artefaktu
  • Podřízené artefakty Azure Resource Manager (šablony ARM) skupiny prostředků seřazené podle názvu artefaktu

Poznámka

Použití artifacts() vytvoří implicitní závislost na artefaktu, na který se odkazuje.

Přizpůsobení pořadí sekvencování

Při vytváření rozsáhlých definic podrobných plánů může být nutné, aby se prostředky vytvářely v určitém pořadí. Nejběžnější způsob použití tohoto scénáře je, když definice podrobného plánu obsahuje několik šablon ARM. Azure Blueprints tento model zpracovává tak, že umožňuje definovat pořadí pořadí.

Řazení se provádí definováním dependsOn vlastnosti ve formátu JSON. Definice podrobného plánu pro skupiny prostředků a objekty artefaktů tuto vlastnost podporují. dependsOn je pole řetězců názvů artefaktů, které je potřeba před vytvořením konkrétního artefaktu vytvořit.

Poznámka

Při vytváření objektů podrobného plánu získá každý prostředek artefaktu svůj název z názvu souboru, pokud používáte PowerShell, nebo z koncového bodu adresy URL, pokud používáte rozhraní REST API. odkazy resourceGroup v artefaktech musí odpovídat odkazům definovaným v definici podrobného plánu.

Příklad – seřazená skupina prostředků

Tato ukázková definice podrobného plánu obsahuje skupinu prostředků, která definovala vlastní pořadí deklarováním hodnoty pro dependsOnspolečně se standardní skupinou prostředků. V tomto případě se artefakt s názvem assignPolicyTags zpracuje před skupinou prostředků ordered-rg . Standard-rg se zpracuje podle výchozího pořadí pořadí.

{
    "properties": {
        "description": "Example blueprint with custom sequencing order",
        "resourceGroups": {
            "ordered-rg": {
                "dependsOn": [
                    "assignPolicyTags"
                ],
                "metadata": {
                    "description": "Resource Group that waits for 'assignPolicyTags' creation"
                }
            },
            "standard-rg": {
                "metadata": {
                    "description": "Resource Group that follows the standard sequence ordering"
                }
            }
        },
        "targetScope": "subscription"
    },
    "type": "Microsoft.Blueprint/blueprints"
}

Příklad – artefakt s vlastním pořadím

Tento příklad je artefakt zásad, který závisí na šabloně ARM. Ve výchozím pořadí by se artefakt zásad vytvořil před šablonou ARM. Toto řazení umožňuje artefaktu zásad počkat na vytvoření šablony ARM.

{
    "properties": {
        "displayName": "Assigns an identifying tag",
        "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/2a0e14a6-b0a6-4fab-991a-187a4f81c498",
        "resourceGroup": "standard-rg",
        "dependsOn": [
            "customTemplate"
        ]
    },
    "kind": "policyAssignment",
    "type": "Microsoft.Blueprint/artifacts"
}

Příklad – artefakt šablony na úrovni předplatného v závislosti na skupině prostředků

Tento příklad je určený pro šablonu ARM nasazenou na úrovni předplatného, která závisí na skupině prostředků. Ve výchozím pořadí by se artefakty na úrovni předplatného vytvořily před všemi skupinami prostředků a podřízenými artefakty v těchto skupinách prostředků. Skupina prostředků se definuje v definici podrobného plánu takto:

"resourceGroups": {
    "wait-for-me": {
        "metadata": {
            "description": "Resource Group that is deployed prior to the subscription level template artifact"
        }
    }
}

Artefakt šablony na úrovni předplatného v závislosti na skupině prostředků wait-for-me se definuje takto:

{
    "properties": {
        "template": {
            ...
        },
        "parameters": {
            ...
        },
        "dependsOn": ["wait-for-me"],
        "displayName": "SubLevelTemplate",
        "description": ""
    },
    "kind": "template",
    "type": "Microsoft.Blueprint/blueprints/artifacts"
}

Zpracování přizpůsobené sekvence

Během procesu vytváření se k vytvoření grafu závislostí artefaktů podrobných plánů používá topologické řazení. Tato kontrola zajistí, že se podporují všechny úrovně závislostí mezi skupinami prostředků a artefakty.

Pokud je deklarována závislost artefaktů, která nezmění výchozí pořadí, neprovedou se žádné změny. Příkladem je skupina prostředků, která závisí na zásadách na úrovni předplatného. Dalším příkladem je přiřazení podřízené zásady skupiny prostředků standard-rg, které závisí na přiřazení podřízené role skupině prostředků standard-rg. V obou případech dependsOn by se nezměnilo výchozí pořadí sekvencování a neprovedou se žádné změny.

Další kroky