使用 Azure Resource Manager 模板创建包含主题和订阅的服务总线命名空间

本文介绍如何使用创建包含主题和订阅的服务总线命名空间的 Azure Resource Manager 模板。你将了解如何定义要部署的资源以及如何定义执行部署时指定的参数。可将此模板用于自己的部署,或自定义此模板以满足要求

有关创建模板的详细信息,请参阅创作 Azure Resource Manager 模板

有关完整的模板,请参阅包含主题和订阅的服务总线命名空间模板。

你将部署什么内容?

使用此模板,你将部署包含主题和订阅的服务总线命名空间。

服务总线主题和订阅以“发布/订阅”模式提供一对多的通信形式。

若要自动运行部署,请单击以下按钮:

部署到 Azure

参数

使用 Azure 资源管理器,可以定义在部署模板时想要指定的值的参数。该模板具有一个名为 Parameters 的部分,其中包含所有参数值。你应该为随着要部署的项目或要部署到的环境而变化的值定义参数。不要为永远保持不变的值定义参数。每个参数值可在模板中用来定义所部署的资源。

模板定义以下参数。

serviceBusNamespaceName

要创建的服务总线命名空间的名称。

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

serviceBusTopicName

在服务总线命名空间中创建的主题的名称。

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

serviceBusSubscriptionName

在服务总线命名空间中创建的订阅的名称。

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

serviceBusApiVersion

模板的服务总线 API 版本。

    "serviceBusApiVersion": {
    "type": "string"
    }

要部署的资源

创建类型为 Messaging 的包含主题和订阅的标准服务总线命名空间。

    "resources ": [{
            "apiVersion": "[variables('sbVersion')]",
            "name": "[parameters('serviceBusNamespaceName')]",
            "type": "Microsoft.ServiceBus/Namespaces",
            "location": "[variables('location')]",
            "kind": "Messaging",
            "sku": {
                "name": "StandardSku",
                "tier": "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": {}
                }]
            }]
        }]

运行部署的命令

若要将资源部署到 Azure,必须登录到 Azure 帐户,并且必须使用 Azure Resource Manager 模块。 若要了解配合使用 Azure Resource Manager 和 Azure PowerShell 或 Azure CLI 的相关信息,请参阅:

以下示例假定你的帐户中已具有一个指定名称的资源组。

PowerShell

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

Azure CLI

    azure config mode arm

    azure group deployment create <my-resource-group> <my-deployment-name> --template-uri <https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/201-servicebus-create-topic-and-subscription/azuredeploy.json>

后续步骤

现在,你已使用 Azure Resource Manager 创建并部署了资源,请通过查看以下文章了解如何管理这些资源: