问题标签 [arm-template]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
json - 在 ARM 模板之间共享变量或常量
我正在考虑定义 API 版本号,看起来我在所有链接模板中引用的某些模板中不断重复,但看起来我这样做有困难,我不确定这是否应该是可能的,更不用说如何去做吧。
例如, intazuredeploy-shared.json
我可以做类似的事情
然后azuredeploy.json
我可以像这样使用它
第一个绊脚石是需要有一个resources
部分。这让我想知道我是否引用了错误的架构,或者是否应该引用一个架构。如果我创建了一些我认为是虚拟资源的东西并提供了这个想法,那么应该如何azuredeploy.json
引用这个文件?
我可以做类似的事情,"[concat(parameters('_artifactsLocation'), '/ProjectName/Templates/azuredeploy-shared-json', parameters('_artifactsLocationSasToken'))]"
但我不知道它在哪里或如何以及应该仍然有效。因此,工作指针在这方面表示赞赏。我确实看到了How to pass variables between templates - ARM json,但不幸的是我不明白它应该如何工作,也没有链接的 Azure 示例。
azure - 使用现有 Azure SQL Server 的 Web 应用程序 + SQL 数据库的 ARM 模板
我们正在使用Visual Studio Team Services 发布功能,我正在构建一个完全自动化的 CI/CD 管道。
我使用 VS 模板创建了一个Azure 资源管理器模板,该模板创建了典型的SaaS工件,即 Web 应用程序 + SQL 数据库。
我创建了三个标准VSTS发布环境 dev、staging 和 prod。每个环境现在都使用ARM模板在 azure 中创建一个隔离的产品环境。
因为每个产品环境/ARM 模板还创建了一个 Azure SqlServer,所以在 2 个VSTS项目之后,我已经达到了每个 Azure 帐户 6 个 Azure SQL Server 的限制。
在我按帐户达到六个 Azure SQL Server 的限制后,我觉得为每个 VSTS 发布环境创建一个 Azure SQL Server 走错了路。
我应该如何通过使用VSTS和ARM模板来部署这种简单的 Azure PaaS / SaaS 应用程序,而不会让自己陷入困境?
欣赏
azure - Azure 资源管理器模板参数
我正在尝试使用 Azure 资源管理器模板。
因此,为了制作任何新资源,我试图找出所有参数是必需的,以及它们是强制性的还是可选的。但无法获得相同的任何文档。
我正在寻找与 AWS 有点相似的文档。为了更好地了解资源的网站。
提前致谢!!
编辑 我一般不是在寻找传递给模板的参数。我想要的是资源参数。每个资源的属性标签下给出的参数
示例 - 在下面的资源“virtualNetworks”中有资源参数,如addressSpace、subnets。 虚拟网络
java - 使用 Azure 资源管理器模板从存储中复制文件?
我希望将文件从我的存储帐户复制到使用 ARM 模板创建的 VM?
我已经创建了存储帐户并将文件添加到存储帐户。我正忙于创建模板,但没有看到将文件从存储帐户复制到创建 VirtualMachine 时创建的 OSDisk 的任何选项。
更新 我觉得我应该提供一些我想要实现的背景:
- 我想创建 ARM deploy.json 和 parameters.json
- 使用上面的 JSON 我想使用 Azure Java SDK 在 Azure 中创建 VM
- 在 JSON 中,我将使用 docker 扩展来构建 docker 容器
- docker 容器将使用来自 DockerHub 的基础镜像,然后将使用 DockerExtension 支持的 compose 进行自定义
- 我需要从存储帐户复制某些文件,以便 Docker 扩展可以在构建自定义 docker 容器时将这些文件用作 docker compose 的一部分
- Java SDK 将根据用户输入做出某些决定,然后为 Azure Java SDK 生成 parameters.json
因此,基于此,我需要在 azure docker 扩展执行之前以某种方式将文件从存储复制到 VM。
azure - 使用 ARM 重新部署 VM 规模集时出错
我在 ARM 模板中使用带有应用程序网关的 VM 规模集。第一次部署工作正常。重新部署模板时,我收到错误消息:“一个后端地址池最多可以有一个 VM 规模集”。
IpConfiguration /subscriptions/.../resourceGroups/.../providers/Microsoft.Compute/virtualMachineScaleSets/.../updateGroups/.../networkInterfaceConfigurations/.../ipConfigurations/... 无法引用后端地址池/subscriptions /.../resourceGroups/.../providers/Microsoft.Network/applicationGateways/.../backendAddressPools/... 因为它包含另一个 VM 规模集。一个后端地址池最多可以有一个 VM 规模集。(代码:ApplicationGatewayBackendAddressPoolCanHaveAtMostOneVMScaleSet)
这个问题的根本原因是什么?
澄清:通过重新部署我的意思是:我想更新现有的部署。我不想重复。
azure - 将可用性集添加到 Azure 虚拟机模板创建
我可以从下面的模板中创建具有特定 VHD 的 Azure VM,但我如何也将其添加到可用性集中。创建 VM 后我无法执行此操作,因此我需要在此处执行此操作。
azure - 使用异地复制创建存储的 ARM 模板
这是创建存储帐户的 ARM 模板
工作得很好,但是当我尝试使用帐户类型 Standard_RAGRS 进行地理复制时,它会返回一个错误:
'名为.....的存储帐户已存在于订阅下。'
我究竟做错了什么?
谢谢
azure - 如何在 ARM 模板中动态生成流量管理器端点?
我有一个 ARM 模板,它使用该构造创建任意数量的 Azure webapp copy
,如下所示(删除了不相关的部分):
我还想为创建的每个网站创建一个带有端点的流量管理器配置文件。但是,似乎没有办法copy
在流量管理器资源的endpoints
参数中使用。我见过的所有示例都明确列出了端点,但我不知道提前创建了多少 web 应用程序,所以这对我不起作用。
如何在模板中动态生成端点?我试过copy
在资源中使用一个语句trafficManagerProfiles
,但这会创建多个配置文件,每个配置文件都有一个端点。
azure-logic-apps - Azure 逻辑应用的字符串连接问题
我正在创建一个部署 Web 应用程序(一个 Mvc Api)和一个逻辑应用程序的 ARM 模板。
我试图在逻辑应用程序中定义一个 HTTP 操作,以便它动态连接 Api 的基本 Uri 以及使用splitOn
and的当前项目的属性@triggerBody()
。基本 Uri 本身是从 ARM 模板中的一组参数连接到一个变量中的variables('hockeyAppAPISettings').Uri
。
这是动作定义的相关片段:
该"uri"
部分是我正在努力解决的问题。在整个过程中,我以不同的模式散布了各种转义字符(\
和@
)。
我要么无法使部署成功,但出现以下部署错误:
无法解析模板语言表达式 'concat(variables('apiSettings').Uri, '//@{triggerBody()[/'Id/']}//ScanningInProgress')':预期的令牌 'RightParenthesis' 和实际的 'Identifier '。有关使用详情,请参阅 http://aka.ms/arm-template-expressions ..'。
或者,如果我让部署工作,然后在部署后查看门户中的代码,则字符串连接似乎无法正常工作。该变量不会转换为其值。
我已经验证,如果我直接(通过门户 HTML 编辑器)使用此编辑 Uri:"uri" : "https://edited.azurewebsites.net/api/Packages/@{triggerBody()['Id']}/ScanningInProgress"
逻辑应用程序将为来自 HTTP 触发器的每个项目进行补丁调用。
我究竟做错了什么?
azure - 如何在 ARM 模板中设置服务总线逻辑应用操作的连接字符串?
我正在尝试部署一个 Azure 逻辑应用,其中包含使用 ARM 模板在服务总线上发送消息的操作。
除了部署逻辑应用之外,ARM 模板还部署了一个服务总线命名空间、一个队列和两个 AuthorizationRule(一个用于发送,一个用于侦听)。
我想动态设置发送服务总线消息操作的连接信息,以使用为支持发送的 AuthorizationRule 生成的连接字符串。
当我在门户编辑器中创建它(指定用于发送的连接字符串)时,我注意到在代码视图中生成了以下内容......
},
我假设连接信息以某种方式隐藏在@parameters('$connections')['servicebus']['connectionId']"
然后,我使用resources.azure.com导航到逻辑应用程序,以查看是否可以获得有关如何@parameters('$connections')['servicebus']['connectionId']"
定义的更多详细信息。
我找到了这个:
但我仍然看不到连接字符串的设置位置。
在哪里可以使用类似以下内容在 ARM 模板中设置服务总线操作的连接字符串?
编辑:另外,我提到的似乎是github 上的一个有前途的 Azure 快速入门(基于标题),但我无法理解它。它似乎使用较旧的 schema 2014-12-01-preview
,并且“queueconnector”引用了 Api Gateway。如果这个场景有更新的例子,我很乐意看到它。