系统极客一直在努力
专注于操作系统及软件使用教程

创建Azure Resource Manager模板 – 1.简介

Azure Resource Manager模板

Azure Resource Manager (ARM) 并不是啥新鲜玩意儿,从 Build 2014 到如今,越来越多的 Azure 服务都得到了 ARM 的支持,微软最新预览的 Azure Stack 也支持 Azure Resource Manager (ARM) 模板部署。也就是说,无论使用公有云、私有云还是混合云的组织,管理员都有必要学习和使用 ARM 并自己编写部署模板。

微软的官方网站和社区都描述了使用 ARM 模板部署 Azure 云服务的实用性和重要性,这里系统极客不再赘述,我们所关注的是如何从头开始手动创建管理员所需的自定义 ARM 模板。

ARM 采用 JSON 格式的模板来执行云服务和资源部署,你可以在 Github 的 Azure Quickstart Templates 中找到许多模板示例。也可以把这些模板作为模子拿来创建自己所需的部署场景,或将它们作为学习 ARM 模板使用的最佳实践。

在我们正式开始讨论 ARM 模板语言之前,让我们先来回顾下部署模板的不同方法。虽然「如何部署」不是我们要讨论的重点,大家还是应知道创建好自定义模板后如何进行部署。

Azure Protal部署

在新版 Azure Protal 中可以直接使用「模板部署」

模板部署

大家已经看到,以上方式是一种基于图形界面的手动部署方法,在少量部署时非常有用,但不推荐管理员在进行大规模部署资源时使用。

Azure PowerShell部署

Azure PowerShell(1.0)是部署 ARM 模板的首选,管理员只需在 AzureRmResourceGroupDeployment cmdlet 中提供模板文件模板参数文件后便可使用。

Login-AzureRmAccount
New-AzureRmResourceGroup -Name ExampleResourceGroup -Location "East Asia"
New-AzureRmResourceGroupDeployment -Name ExampleDeployment -ResourceGroupName ExampleResourceGroup -TemplateFile C:\ARMTemplates\SingleVMDeploy.json -TemplateParameterFile C:\ARMTemplates\SingleVMDeploy-parameter.json

ARM REST API部署

ARM REST API Provides 中的模板部署 API 提供了以编程方式使用的 REST 接口,管理员可以用任何语言来部署自定义 ARM 模板。例如:你可以使用如下 API 请求一个部署模板。

https://management.azure.com/subscriptions/{subscription-id}/resourcegroups/{resource-group-name}/providers/microsoft.resources/deployments/{deployment-name}?api-version={api-version}

Deploy to Azure部署

还有一种常见的 ARM 资源部署方式为「点击部署」,该种方式将大多数 Azure Quickstart Templates 都做成了「Deploy to Azure」按钮

Deploy to Azure

大家可以点击这里找到现成的 ARM 模板并通过「Deploy to Azure」点击部署。

Visual Studio部署

对于开发人员创建的 ARM 自定义模板,可以直接使用 Visual Studio 进行测试和部署。Visual Studio 提供了相应的工具来完成部署任务,通过向导便可以使用 Visual Studio 编辑器自定义和部署模板。需要注意的是 VS 并没有在向导界面中列出所有可用的资源类型,对于缺少的资源类型可以引用 Schema 和资源定义

分享到:更多 ()