是否有野外文档列出了Azure应用服务计划(服务器场)支持的sku名称和层.
例如:名称:"S1",等级:"标准"= S1标准.
和名称:"Y1",等级:"动态"=功能消费计划.
支持的值列表(是否有Y2消费计划?)和服务器配置确实有助于规划.
在模板下面部署:
https://gist.github.com/rnkhouse/aea0a8fd395da37b19466348b919d620
错误:
"部署失败,状态码为:400,消息:部署模板验证失败:'资源'Microsoft.Network/virtualNetworks/mtes-dev-VNET'未在模板中定义.请参阅https://aka.ms/arm -template用于使用细节.'."
我已经在其他模板中创建了虚拟网络,并在此处使用相同的资源组.但是,我仍然犯了错误.请指教!
我很困惑在哪里使用变量以及在ARM模板中使用参数的位置.我们如何打这个电话?
引用的脚本使用两者.我更好奇使用变量的理由.
参考
示例服务Fabric Azure部署脚本
azure continuous-deployment azure-resource-manager azure-resource-group azure-template
我正在构建一组脚本和模板以在Azure中创建Service Fabric群集。我有一个脚本,该脚本创建密钥库和自签名证书,并将其成功上传到库中。另一个脚本创建了群集,但是在证书链接到虚拟机时出现了错误。该New-AzureRmResourceGroupDeployment命令的错误是:-
{
"status": "Failed",
"error": {
"code": "ResourceDeploymentFailure",
"message": "The resource operation completed with terminal provisioning state 'Failed'.",
"details": [
{
"code": "KeyVaultAccessForbidden",
"message": "Key Vault https://VAULT-NAME.vault.azure.net/secrets/clusterCert/SECRET-ID either has not been enabled for deployment or the vault id provided, /subscriptions/SUBSCRIPTION-ID/resourceGroups/jg-sf/providers/Microsoft.KeyVault/vaults/VAULTNAME, does not match the Key Vault's true resource id."
}
]
}
Run Code Online (Sandbox Code Playgroud)
}
VAULT-NAME,SUBSCRIPTION-ID和SECRET-ID均正确。密钥库已使用参数创建"enabledForTemplateDeployment": true,如以下屏幕截图所示。
我的脚本和模板可以在GitHub- https://github.com/goochjs/azure-testbed中看到。
我如何诊断问题?
谢谢,
杰里米
azure azure-resource-manager azure-service-fabric azure-keyvault azure-template
如果我想为 Azure Active Directory 创建 ARM 模板,资源下的类型应该是什么?
是否有任何资源可以通过 ARM 模板在 Azure Active Directory 中添加用户/组/应用程序功能?
azure azure-active-directory azure-rm-template azure-template
创建需要安装位于 Azure 密钥保管库内的 SSL 证书的 ARM 模板。如果我用指纹指定证书,它工作正常:
https://contoso.vault.azure.net/secrets/web01-test-contoso-com/968bf207451149d3aceb390065af9d3a
Run Code Online (Sandbox Code Playgroud)
但由于证书是在滴答作响的时钟上,这对可能过时的依赖项进行硬编码到 ARM 模板中。我宁愿只指定最新版本(就像它在门户中显示的那样)。但是,我还没有找到任何说明如何做到这一点的文档,甚至没有提到可能的话。
我使用以下方法进行了几个实验:
https://contoso.vault.azure.net/secrets/web01-test-contoso-com
Run Code Online (Sandbox Code Playgroud)
和
https://contoso.vault.azure.net/secrets/web01-test-contoso-com/latest
Run Code Online (Sandbox Code Playgroud)
但是在这两种情况下,我都收到了相同的错误消息:
message '{
"error": {
"code": "InvalidParameter",
"message": "https://contoso.vault.azure.net/secrets/web01-test-contoso-com/latest is
not a valid versioned Key Vault Secret URL. It should be in the format
https://<vaultEndpoint>/secrets/<secretName>/<secretVersion>.",
"target": "certificateUrl"
}
}'
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:如何以获取最新版本的方式引用证书?
为清楚起见,我secrets将 ARM 模板部分中的 URL用于 VM,如下所示,它从 Azure 密钥保管库获取证书并将其安装到 Windows 证书存储中。
"secrets": [
{
"sourceVault": {
"id": "[resourceId(parameters('keyVaultResourceGroupName'), 'Microsoft.KeyVault/vaults', parameters('keyVaultName'))]"
},
"vaultCertificates": [
{
"certificateUrl": "https://contoso.vault.azure.net/secrets/web01-test-contoso-com/latest",
"certificateStore": "My"
}
]
}
]
Run Code Online (Sandbox Code Playgroud)
注意:我觉得奇怪的是,您可以指定要安装的操作系统的最新版本,但不能指定安装最新版本的证书。
azure azure-resource-manager azure-keyvault azure-rm-template azure-template
我正在尝试构建一个 ARM 模板并不断收到错误消息:
'The template resource 'udr-sub-w05-w05-w05-agw-10.10.10.32/27' for type
'Microsoft.Network/routeTables' at line '141' and column '5' 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.
Run Code Online (Sandbox Code Playgroud)
创建路由表代码的嵌套模板如下:
{
"name": "[variables('routeTable1')]",
"type": "Microsoft.Network/routeTables",
"apiVersion": "[variables('routeTableApiVersion')]",
"location": "[resourceGroup().location]",
"properties": {
"routes": [
],
"disableBgpRoutePropagation": false
}
},
{
"name": "[variables('routeTable2')]",
"type": "Microsoft.Network/routeTables",
"apiVersion": "[variables('routeTableApiVersion')]",
"location": "[resourceGroup().location]",
"properties": {
"routes": [ …Run Code Online (Sandbox Code Playgroud) azure azure-resource-manager azure-rm-template azure-template
我通过 ARM 模板创建了一个 oms 工作区,并通过 azure devops 将它们部署到 azure。因为我有自动化的心态,所以我也通过 azure devops 部署了虚拟机 ARM。
因为我不想部署 OMS 工作区,然后去门户并复制工作区 id 将其粘贴到虚拟机的 arm 模板参数中,以将 VM 扩展指向正确的工作区。
我现在的问题是是否可以将这些二合一部署连接起来以部署 oms 工作区并将工作区 ID 导出到 vm arm 部署。
这样我就跳过了手动步骤并自动化了整个部署。
来源:我找到了一个自动思考的家伙,但他的问题没有正确的答案。 https://github.com/MicrosoftDocs/azure-docs/issues/13787
有没有人知道这是否可能?
我在 Azure DevOps 中有一个管道。在构建和测试之后,我创建了 Azure 资源以便在那里部署应用程序。
我为此使用了Azure 资源组部署任务。它有效,但在日志中我只看到这个(对于我创建的所有资源):
******************************************************************************
Starting: Create Azure Resources
******************************************************************************
==============================================================================
Task : Azure Resource Group Deployment
Description : Deploy an Azure resource manager (ARM) template to a resource group. You can also start, stop, delete, deallocate all Virtual Machines (VM) in a resource group
Version : 2.147.2
Author : Microsoft Corporation
Help : [More Information](https://aka.ms/argtaskreadme)
==============================================================================
Checking if the following resource group exists: awesomeApp42.
Resource group exists: true.
Creating deployment parameters.
The detected …Run Code Online (Sandbox Code Playgroud) azure azure-devops azure-rm-template azure-pipelines azure-template
我正在编写一个powershell脚本,以使用New-AzureRmResourceGroupDeployment cmdlet创建VM,如下所示。
New-AzureRmResourceGroupDeployment -Name VmDeployment `
-TemplateFile C:\template\template.json `
-TemplateParameterFile C:\template\parameters.json
Run Code Online (Sandbox Code Playgroud)
这用于创建VM。在中parameters.json,有些参数(例如virtualMachineName)networkInterfaceName等已进行了硬编码。
现在,我正在尝试使这些脚本自动化,即,当满足某些条件时,它们可以通过工具自行运行。
我的要求是,无论何时运行此脚本,都必须增加VMName中的数字。假设VM Name现在是VMName1,它必须是VMName2脚本下次运行时的时间。VMName3下次运行脚本时类似。由于virtualMachineName参数是硬编码的,所以现在不会发生这种情况。无论如何,我可以virtualMachineName在脚本本身中将其作为参数传递,而不是从json文件中获取。
任何指导都将受到高度赞赏。谢谢!
azure azure-virtual-machine azure-resource-group azure-template