问题标签 [azure-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.

0 投票
1 回答
92 浏览

json - 当我部署我的 Azure ARM 模板时,它会创建一个存储,而不是一个警报

我为警报创建了一个 Azure 模板,因为我想同时上传带有新微服务的脚本 (.json)。但是如果我部署这个 .json 文件,它会创建一个新的存储,而不是一个警报。我使用了 Powershell 命令New-AzureRmResourceGroupDeployment -Name ExampleDeployment -ResourceGroupName ExampleResourceGroup -TemplateFile c:\MyTemplates\storage.json -storageAccountType Standard_GRS。在我的模板中,我需要定义参数kind,它只能接受值为Storageor Blobstorage,但我不想要这两个。那么我如何通过使用脚本 .json 文件来创建警报,并且是否有人有模板,因为 MS 没有提供正确的模板。

编辑:这是 .json 文件:

0 投票
1 回答
748 浏览

azure - Azure RM 模板。在不删除子网的情况下更改 vNet 的 DNS 服务器

我正在创建一个 ARM 模板,将可变数量的备份域控制器部署到现有的虚拟网络。我需要更改现有虚拟网络的 DNS 服务器。问题是我的虚拟网络彼此具有完全不同的子网,当我部署以下资源时,现有子网消失了。如何只更改虚拟网络的 DNS 服务器属性,而不影响其他属性?

我知道我可以指定现有子网,但是我有很多子网名称和地址范围完全不同的虚拟网络,通过参数指定它们将是一场噩梦。

0 投票
2 回答
1095 浏览

azure - 天蓝色自动化帐户中的 sku.family 和 sku.capacity 属性可以传递哪些值

这是用于创建 azure 自动化帐户的模板格式资源的链接。什么是自动化账户的 sku 、 sku.family 和 sku.capacity?

https://docs.microsoft.com/en-us/azure/templates/microsoft.automation/automationaccounts/jobschedules

通常我们可以在没有 sku.family 和 sku.capacity 属性的情况下创建 azure 自动化。但是可以传递给这些资源以创建 arm 模板的可能值是什么。

可以传递的 sku.family 及其对应的 sku.capacity 可能是什么???

sku.family 和 sku.capacity 一般用于 azure Resources 有什么用???

0 投票
1 回答
207 浏览

azure - Azure 模板中的引用模板

我有一个存储在 Azure 模板中的 ARM 模板。

有没有办法从脚本中引用这个模板(在 Azure Cloud Shell 或本地机器上的 PowerShell/CLI 中)?现在看来,部署模板的唯一方法是通过 Azure 门户 UI。

更新

我想澄清我在问什么。我专门询问Azure Templates (Preview)服务。似乎一旦将模板存储在模板服务中,访问它的唯一方法就是通过 Azure 门户。

例如,假设我正在 Azure 门户中创建一个 VM。我可以将 ARM 模板保存到 Templates 服务,如下图所示。

您可以单击Download Template and parameters链接,在下一页单击Add to library以将模板保存到模板服务(可以在 Azure 门户中通过“所有服务”>“模板”过滤器找到模板服务)。

我在 edX.org 上做课程:自动化 Azure 工作负载,它正在谈论这项服务,这就是我对这项服务感兴趣的原因。

创建 VM 窗格

在此处输入图像描述

在此处输入图像描述

0 投票
2 回答
1669 浏览

azure - 如何在 ARM 模板中多次运行相同的脚本?

我有一个用于在 ARM 模板中安装 VSTS 构建代理的 powershell 脚本。此模板基于此处的 azure 快速入门模板。

我想使用该"copy"函数多次运行脚本,因为我想在部署 VM 时安装 10 个代理。当我尝试部署我的模板时,我收到此错误:

我的问题是,我怎样才能安装 10 个具有该copy功能的构建代理,以便我拥有vsts-agent-1, vsts-agent-2, etc

这是模板的相关片段:

编辑1

我已更新模板并将子资源移出,以便子资源与父资源处于同一级别。此部分现在如下所示:

但是,当我尝试部署时,出现此错误:

Error: Code=InvalidTemplate; Message=Deployment template validation failed: The template resource 'CustomScript' for type 'Microsoft.Compute/virtualMachines/extensions' at line '247' and column '9' has incorrect segment lengths. A nested resource type must have identical number of segments as its resource name. A root resource type must have segment length one greater than its resource name.

0 投票
1 回答
625 浏览

azure - 如何使用 ARM 模板启用 SQL 身份验证?

我有一个 ARM 模板,它使用以下图像部署多个 Azure VM:

SQLIaaS VM 扩展没有让 SQL Server 处于 SQL 身份验证模式,也没有创建 SQL 身份验证帐户。否则一切正常。这是 ARM 模板的 SQLIaaS 部分的片段。为什么没有设置 SQL Auth 的任何想法?

0 投票
1 回答
600 浏览

powershell - 创建或更新策略的输入格式不正确(PowerShell 脚本中的 .json 模板)

我正在尝试从 powershell 脚本部署资源组。该脚本从 .json 模板中获取参数等。

对于另一个资源组它工作正常(我只需要插入“adminPassword”参数),但现在我有另一个资源组,我无法从这个脚本重新部署。首先我想我只需要在之前添加参数,但是这个模板有不同的结构等等。所以这意味着我找不到插入参数的地方。

但这不是问题。当我运行脚本时,我收到以下错误:

(抱歉格式不好)

我查看了模板,powershell 不喜欢的参数之一如下:

这就像 Microsoft 的文档(https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-template-deploy

因此,我不知道为什么这不起作用,对于其他资源组及其模板起作用。

我希望你能理解我的问题。

提前致谢!

PS模板:{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "virtualNetworks_alp_prd_core_vnet1_name": { "defaultValue": "alp-prd-core-vnet1", "type": "String" }, "vaults_alp_prd_core_rsvault1_name": { "defaultValue": "alp-prd-core-rsvault1", "type": "String" }, "subnets_internal_name": { "defaultValue": "internal", "type": "String" }, "backupPolicies_DefaultPolicy_name": { "defaultValue": "DefaultPolicy", "type": "String" }, "backupPolicies_HourlyLogBackup_name": { "defaultValue": "HourlyLogBackup", "type": "String" }, "backupPolicies_%name%_Backup_Policy_name": { "defaultValue": "%name%-Backup-Policy", "type": "String" }, "replicationAlertSettings_defaultAlertSetting_name": { "defaultValue": "defaultAlertSetting", "type": "String" }, "virtualNetworkPeerings_alp_prd_core_vnet1_Net_Sync_name": { "defaultValue": "alp-prd-core-vnet1-Net-Sync", "type": "String" }, "virtualNetworks_alp_prd_core_vnet1_id": { "defaultValue": "/subscriptions/%subsciptionID%/resourceGroups/NemetschekgroupAD/providers/Microsoft.Network/virtualNetworks/Net-Sync", "type": "String" }, "virtualNetworkPeerings_alp_prd_core_vnet1_Net_Sync_id": { "defaultValue": "/subscriptions/%subsciptionID%/resourceGroups/NemetschekgroupAD/providers/Microsoft.Network/virtualNetworks/Net-Sync", "type": "String" } }, "variables": {}, "resources": [ { "comments": "Generalized from resource: '/subscriptions/%subsciptionID%/resourceGroups/alp-prd-core-rg/providers/Microsoft.Network/virtualNetworks/alp-prd-core-vnet1'.", "type": "Microsoft.Network/virtualNetworks", "name": "[parameters('virtualNetworks_alp_prd_core_vnet1_name')]", "apiVersion": "2018-02-01", "location": "westeurope", "scale": null, "properties": { "provisioningState": "Succeeded", "resourceGuid": "940c1d33-bbf4-4b01-a331-8096e8066a0a", "addressSpace": { "addressPrefixes": [ "10.11.0.112/28" ] }, "subnets": [ { "name": "internal", "etag": "W/\"b5fce13f-36b0-4d55-aa19-755a78b696f2\"", "properties": { "provisioningState": "Succeeded", "addressPrefix": "10.11.0.112/28" } } ], "virtualNetworkPeerings": [ { "name": "[concat(parameters('virtualNetworks_alp_prd_core_vnet1_name'),'-Net-Sync')]", "etag": "W/\"b5fce13f-36b0-4d55-aa19-755a78b696f2\"", "properties": { "provisioningState": "Succeeded", "peeringState": "Connected", "remoteVirtualNetwork": { "id": "[parameters('virtualNetworks_alp_prd_core_vnet1_id')]" }, "allowVirtualNetworkAccess": true, "allowForwardedTraffic": false, "allowGatewayTransit": false, "useRemoteGateways": true, "remoteAddressSpace": { "addressPrefixes": [ "10.11.0.0/28", "10.11.0.16/28" ] } } } ], "enableDdosProtection": false, "enableVmProtection": false }, "dependsOn": [] }, { "comments": "Generalized from resource: '/subscriptions/%subsciptionID%/resourceGroups/alp-prd-core-rg/providers/Microsoft.RecoveryServices/vaults/alp-prd-core-rsvault1'.", "type": "Microsoft.RecoveryServices/vaults", "sku": { "name": "RS0", "tier": "Standard" }, "name": "[parameters('vaults_alp_prd_core_rsvault1_name')]", "apiVersion": "2018-01-10", "location": "westeurope", "scale": null, "properties": {}, "dependsOn": [] }, { "comments": "Generalized from resource: '/subscriptions/%subsciptionID%/resourceGroups/alp-prd-core-rg/providers/Microsoft.Network/virtualNetworks/alp-prd-core-vnet1/subnets/internal'.", "type": "Microsoft.Network/virtualNetworks/subnets", "name": "[concat(parameters('virtualNetworks_alp_prd_core_vnet1_name'), '/', parameters('subnets_internal_name'))]", "apiVersion": "2018-02-01", "scale": null, "properties": { "provisioningState": "Succeeded", "addressPrefix": "10.11.0.112/28" }, "dependsOn": [ "[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworks_alp_prd_core_vnet1_name'))]" ] }, { "comments": "Generalized from resource: '/subscriptions/%subsciptionID%/resourceGroups/alp-prd-core-rg/providers/Microsoft.Network/virtualNetworks/alp-prd-core-vnet1/virtualNetworkPeerings/alp-prd-core-vnet1-Net-Sync'.", "type": "Microsoft.Network/virtualNetworks/virtualNetworkPeerings", "name": "[concat(parameters('virtualNetworks_alp_prd_core_vnet1_name'), '/', parameters('virtualNetworkPeerings_alp_prd_core_vnet1_Net_Sync_name'))]", "apiVersion": "2018-02-01", "scale": null, "properties": { "provisioningState": "Succeeded", "peeringState": "Connected", "remoteVirtualNetwork": { "id": "[parameters('virtualNetworkPeerings_alp_prd_core_vnet1_Net_Sync_id')]" }, "allowVirtualNetworkAccess": true, "allowForwardedTraffic": false, "allowGatewayTransit": false, "useRemoteGateways": true, "remoteAddressSpace": { "addressPrefixes": [ "10.11.0.0/28", "10.11.0.16/28" ] } }, "dependsOn": [ "[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworks_alp_prd_core_vnet1_name'))]" ] }, { "comments": "Generalized from resource: '/subscriptions/%subsciptionID%/resourcegroups/alp-prd-core-rg/providers/Microsoft.RecoveryServices/vaults/alp-prd-core-rsvault1/backupPolicies/%name%-Backup-Policy'.", "type": "Microsoft.RecoveryServices/vaults/backupPolicies", "name": "[concat(parameters('vaults_alp_prd_core_rsvault1_name'), '/', parameters('backupPolicies_%name%_Backup_Policy_name'))]", "apiVersion": "2016-12-01", "scale": null, "properties": { "backupManagementType": "AzureIaasVM", "protectedItemsCount": 0 }, "dependsOn": [ "[resourceId('Microsoft.RecoveryServices/vaults', parameters('vaults_alp_prd_core_rsvault1_name'))]" ] }, { "comments": "Generalized from resource: '/subscriptions/%subsciptionID%/resourcegroups/alp-prd-core-rg/providers/Microsoft.RecoveryServices/vaults/alp-prd-core-rsvault1/backupPolicies/HourlyLogBackup'.", "type": "Microsoft.RecoveryServices/vaults/backupPolicies", "name": "[concat(parameters('vaults_alp_prd_core_rsvault1_name'), '/', parameters('backupPolicies_HourlyLogBackup_name'))]", "apiVersion": "2016-12-01", "scale": null, "properties": { "backupManagementType": "AzureWorkload", "protectedItemsCount": 0 }, "dependsOn": [ "[resourceId('Microsoft.RecoveryServices/vaults', parameters('vaults_alp_prd_core_rsvault1_name'))]" ] }, { "comments": "Generalized from resource: '/subscriptions/%subsciptionID%/resourcegroups/alp-prd-core-rg/providers/Microsoft.RecoveryServices/vaults/alp-prd-core-rsvault1/backupPolicies/DefaultPolicy'.", "type": "Microsoft.RecoveryServices/vaults/backupPolicies", "name": "[concat(parameters('vaults_alp_prd_core_rsvault1_name'), '/', parameters('backupPolicies_DefaultPolicy_name'))]", "apiVersion": "2016-12-01", "scale": null, "properties": { "backupManagementType": "AzureIaasVM", "protectedItemsCount": 0 }, "dependsOn": [ "[resourceId('Microsoft.RecoveryServices/vaults', parameters('vaults_alp_prd_core_rsvault1_name'))]" ] }, { "comments": "Generalized from resource: '/Subscriptions/%subsciptionID%/resourceGroups/alp-prd-core-rg/providers/Microsoft.RecoveryServices/vaults/alp-prd-core-rsvault1/replicationAlertSettings/defaultAlertSetting'.", "type": "Microsoft.RecoveryServices/vaults/replicationAlertSettings", "name": "[concat(parameters('vaults_alp_prd_core_rsvault1_name'), '/', parameters('replicationAlertSettings_defaultAlertSetting_name'))]", "apiVersion": "2018-01-10", "scale": null, "properties": { "sendToOwners": "DoNotSend", "customEmailAddresses": [], "locale": "" }, "dependsOn": [ "[resourceId('Microsoft.RecoveryServices/vaults', parameters('vaults_alp_prd_core_rsvault1_name'))]" ] } ] }

0 投票
2 回答
644 浏览

azure - 修改/更换探针导致 CannotModifyRuleUsedByProbeUsedByVMSS

我创建了一个带有负载平衡器的 vmss 和为 http 80 地址配置的探针/

我现在已经使用专用的活动路由更新了我的应用程序,例如/api/alive,它可以更快地回复基本 url,这就是我想用作负载平衡规则的探针的那个。

我已经用新的探测详细信息更新了我的模板(基础是https://github.com/Azure/vm-scale-sets/blob/master/preview/upgrade/autoupdate.json),但我不断收到以下信息错误:

无论我尝试哪种方式,删除所有探针,仅修改探针的详细信息,我都会不断收到此错误。

我们是否打算让规模集中的所有 VM 来更新探测?还有其他方法吗?非常感谢您提前提供的任何帮助。

更新

之前的模板:https ://pastebin.com/YisgUbRk

之后的模板:https ://pastebin.com/2VmgPMur

我正在尝试用saProbe规则和 VMSS替换规则httpProbesshProbeVMSS。

我也尝试将 VMSS 探测保留为saProbe并将其添加httpProbe到 LB 规则中,但这也不起作用,得到了同样的错误。

这是 saProbe https://pasteboard.co/HuKMcwA.png的当前设置,它们与粘贴后的内容相匹配。

更新 2

试图保持saProbeLB 规则,但将 VM 探测更改为sshProbe,结果相同,webhttpslb规则错误相同。

关于如何优雅地更换探头的任何建议?没有负载均衡和虚拟机停机时间?

更新 3

尼尔,确实是正确的(好地方!)还有一个我没有注意到的额外变化。

但是,现在很明显,我实际上想要实现的目标可能是不可能的。我将 saProbe 保留在 LB 规则上,但将 VMSS 探针更改为sshProbe并收到此错误:

"error": { "details": [], "code": "CannotUseInactiveHealthProbe", "message": "VM scale set /subscriptions/SUBID/resourceGroups/GROUPNAME/providers/Microsoft.Compute/virtualMachineScaleSets/RESNAME cannot use probe /subscriptions/SUBID/resourceGroups/GROUPNAME/providers/Microsoft.Network/loadBalancers/RESNAME-lb/probes/sshProbe as a HealthProbe because load balancing rules (weblb, webhttpslb) that send traffic to the scale set IPs in backend address pools (RESNAME-bepool) do not use this probe." }

谁能证实这一点?如果我添加一个虚拟规则来激活sshProbe? 这种情况的最佳实践是什么?

更新 4

是的,首先从 VMSS 中移除探针是关键。不得不运行模板几次,但现在最终只包括httpProbe附加到规则和 VMSS。

0 投票
1 回答
63 浏览

json - 如何使用 Json 模板 Azure 将 Runbook 操作添加到度量规则(经典)?

我有一个关于如何将 Runbook 操作添加到我的指标警报的问题,有很多关于向所有者发送电子邮件的文档,但没有一个说明操作 Runbook。

这是我创建指标警报的模板:

没有关于添加 RuleAction 的文档,并且在使用 Json 模板创建虚拟机后我卡在了这一点上。

谢谢你。

0 投票
1 回答
507 浏览

azure - Azure 资源在部署时找不到依赖关系

我正在尝试使用模板部署 Azure Windows VM 并不断遇到错误code: InvalidResourceReference Resource X referenced by Resource Y was not found。资源 X 是Microsoft.Network/networkSecurityGroups(命名为“FBI”),资源 Y 是Microsoft.Network/networkInterfaces(命名为 vInterface)。

我所有需要的资源都是在此部署期间创建的,它们的依赖项在模板中设置。我做的第一件事是确认我的 FBI 资源存在,它确实做到了:

在此处输入图像描述

接下来,我确保我的 FBI 安全组在 vInterface 中被列为依赖项,以确保在创建 vInterface 之前首先创建 FBI,它是:

我可以确认这两个资源的位置相同。一切看起来都不错,但我不知道为什么我的 vInterface 找不到/看到我的 FBI 安全组。

以下是完整的错误消息供参考: