Vytvoření oboru názvů služby Service Bus s tématem, předplatným a pravidlem pomocí šablony Azure Resource Manager

Tento článek ukazuje, jak použít šablonu Azure Resource Manager, která vytvoří obor názvů služby Service Bus s tématem, předplatným a pravidlem (filtrem). Tento článek vysvětluje, jak určit, které prostředky se nasadí, a jak definovat parametry, které jsou zadané při spuštění nasazení. Tuto šablonu můžete použít pro vlastní nasazení nebo ji upravit, aby splňovala vaše požadavky.

Další informace o vytváření šablon najdete v tématu Tvorba šablon Azure Resource Manageru.

Další informace o praxi a vzorech pro zásady vytváření názvů prostředků Azure najdete v tématu Doporučené zásady vytváření názvů pro prostředky Azure.

Úplnou šablonu najdete v tématu Obor názvů služby Service Bus s tématem, předplatným a šablonou pravidla.

Poznámka

Ke stažení a nasazení jsou k dispozici následující šablony azure Resource Manager.

Pokud chcete vyhledat nejnovější šablony, přejděte do galerie Šablony azure pro rychlý start a vyhledejte Service Bus.

Co nasadíte?

Pomocí této šablony nasadíte obor názvů služby Service Bus s tématem, předplatným a pravidlem (filtrem).

Témata a předplatná služby Service Bus poskytují formu komunikace 1:N ve vzoru publikování a odběru . Při používání témat a odběrů spolu komponenty distribuované aplikace nekomunikují přímo, místo toho si vyměňují zprávy prostřednictvím tématu, které funguje jako zprostředkovatel. Odběr tématu se podobá virtuální frontě, která přijímá kopie zpráv odeslaných do tématu. Filtr odběru umožňuje určit, které zprávy odeslané do tématu se mají zobrazit v rámci odběru konkrétního tématu.

Co jsou pravidla (filtry)?

V mnoha scénářích musí být zprávy, které mají specifické vlastnosti, zpracovány různými způsoby. Pokud chcete povolit toto vlastní zpracování, můžete nakonfigurovat odběry tak, aby vyhledály zprávy s konkrétními vlastnostmi, a pak tyto vlastnosti upravovaly. Přestože odběry služby Service Bus vidí všechny zprávy odeslané do tématu, můžete do fronty virtuálních odběrů zkopírovat jenom podmnožinu těchto zpráv. K tomu slouží filtry předplatného. Další informace o pravidlech (filtrech) najdete v tématu Pravidla a akce.

Pokud chcete nasazení spustit automaticky, klikněte na následující tlačítko:

Nasazení do Azure

Parametry

Pomocí Azure Resource Manager definujte parametry pro hodnoty, které chcete zadat při nasazení šablony. Šablona obsahuje část Parameters, která obsahuje všechny hodnoty parametrů. Definujte parametr pro hodnoty, které se liší v závislosti na projektu, který nasazujete, nebo v závislosti na prostředí, do kterého nasazujete. Nedefinujte parametry pro hodnoty, které jsou vždy stejné. Každá hodnota parametru se v šabloně použije k definování nasazovaných prostředků.

Šablona definuje následující parametry:

serviceBusNamespaceName

Název oboru názvů služby Service Bus, který se má vytvořit.

"serviceBusNamespaceName": {
"type": "string"
}

serviceBusTopicName

Název tématu vytvořeného v oboru názvů služby Service Bus.

"serviceBusTopicName": {
"type": "string"
}

serviceBusSubscriptionName

Název předplatného vytvořeného v oboru názvů služby Service Bus.

"serviceBusSubscriptionName": {
"type": "string"
}

serviceBusRuleName

Název pravidla (filtru) vytvořeného v oboru názvů služby Service Bus.

   "serviceBusRuleName": {
   "type": "string",
  }

serviceBusApiVersion

Verze rozhraní API služby Service Bus šablony

"serviceBusApiVersion": {
       "type": "string",
       "defaultValue": "2017-04-01",
       "metadata": {
           "description": "Service Bus ApiVersion used by the template"
       }

Prostředky k nasazení

Vytvoří standardní obor názvů služby Service Bus typu Zasílání zpráv s tématy a předplatnými a pravidly.

 "resources": [{
        "apiVersion": "[variables('sbVersion')]",
        "name": "[parameters('serviceBusNamespaceName')]",
        "type": "Microsoft.ServiceBus/Namespaces",
        "location": "[variables('location')]",
        "sku": {
            "name": "Standard",
        },
        "resources": [{
            "apiVersion": "[variables('sbVersion')]",
            "name": "[parameters('serviceBusTopicName')]",
            "type": "Topics",
            "dependsOn": [
                "[concat('Microsoft.ServiceBus/namespaces/', parameters('serviceBusNamespaceName'))]"
            ],
            "properties": {
                "path": "[parameters('serviceBusTopicName')]"
            },
            "resources": [{
                "apiVersion": "[variables('sbVersion')]",
                "name": "[parameters('serviceBusSubscriptionName')]",
                "type": "Subscriptions",
                "dependsOn": [
                    "[parameters('serviceBusTopicName')]"
                ],
                "properties": {},
                "resources": [{
                    "apiVersion": "[variables('sbVersion')]",
                    "name": "[parameters('serviceBusRuleName')]",
                    "type": "Rules",
                    "dependsOn": [
                        "[parameters('serviceBusSubscriptionName')]"
                    ],
                    "properties": {
                        "filterType": "SqlFilter",
                        "sqlFilter": {
                            "sqlExpression": "StoreName = 'Store1'",
                            "requiresPreprocessing": "false"
                        },
                        "action": {
                            "sqlExpression": "set FilterTag = 'true'"
                        }
                    }
                }]
            }]
        }]
    }]

Syntaxi a vlastnosti JSON najdete v tématu Obory názvů, témata, předplatná a pravidla.

Příkazy pro spuštění nasazení

Pokud chcete nasadit prostředky do Azure, musíte být přihlášení k účtu Azure a používat modul Azure Resource Manager. Další informace o použití Azure Resource Manageru s Azure PowerShellem nebo Azure CLI najdete v tématech:

Následující příklady předpokládají, že v účtu již máte skupinu prostředků s daným názvem.

PowerShell

New-AzureResourceGroupDeployment -Name \<deployment-name\> -ResourceGroupName \<resource-group-name\> -TemplateUri <https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/quickstarts/microsoft.servicebus/servicebus-create-topic-subscription-rule/azuredeploy.json>

Azure CLI

az deployment group create -g \<my-resource-group\> --template-uri <https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/quickstarts/microsoft.servicebus/servicebus-create-topic-subscription-rule/azuredeploy.json>

Další kroky

Informace o správě těchto prostředků najdete v těchto článcích: