Microsoft 上的 OperationTimedOut。DBforMySQL/servers 手臂部署
OperationTimedOut on Microsoft.DBforMySQL/servers arm deployment
我一直在尝试部署以下 arm 模板(为简洁起见删除了成功部署的资源)几次。
我总是在 MySQL 部署部分收到以下错误。
New-AzureRmResourceGroupDeployment : 9:21:31 AM - Resource Microsoft.DBforMySQL/servers 'webarm01' failed with
message '{
"status": "Failed",
"error": {
"code": "ResourceDeploymentFailure",
"message": "The resource operation completed with terminal provisioning state 'Failed'.",
"details": [
{
"code": "OperationTimedOut",
"message": "The operation timed out and automatically rolled back. Please retry the operation."
}
]
}
}'
这是手臂模板
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"administratorLogin": {
"type": "String"
},
"administratorLoginPassword": {
"type": "SecureString"
},
"servers_analytics_name": {
"defaultValue": "analyticsarmmodel",
"type": "String"
},
"databases_analytics_name": {
"defaultValue": "analytics",
"type": "String"
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"variables": {
"databases_sys_name": "sys",
"databases_mysql_name": "mysql",
"databases_information_schema_name": "information_schema",
"databases_performance_schema_name": "performance_schema",
"firewallRules_AllowAllWindowsAzureIps_name": "AllowAllWindowsAzureIps"
},
"resources": [
{
"type": "Microsoft.DBforMySQL/servers",
"sku": {
"name": "B_Gen5_1",
"tier": "Basic",
"family": "Gen5",
"capacity": 1
},
"name": "[parameters('servers_analytics_name')]",
"apiVersion": "2017-12-01-preview",
"location": "[parameters('location')]",
"scale": null,
"properties": {
"administratorLogin": "[parameters('administratorLogin')]",
"administratorLoginPassword": "[parameters('administratorLoginPassword')]",
"storageProfile": {
"storageMB": 5120,
"backupRetentionDays": 7,
"geoRedundantBackup": "Disabled"
},
"version": "5.7",
"sslEnforcement": "Disabled"
},
"dependsOn": []
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_information_schema_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', parameters('databases_analytics_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_mysql_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "latin1",
"collation": "latin1_swedish_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_performance_schema_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_sys_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/firewallRules",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('firewallRules_AllowAllWindowsAzureIps_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"startIpAddress": "0.0.0.0",
"endIpAddress": "0.0.0.0"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
}
]
}
我的问题:如何使用 arm 部署 MySQL 服务器,+ 数据库而不 运行 超时?
在与 Microsoft 进行一些内部讨论后,似乎即使 administratorLoginPassword 参数被标记为安全字符串类型,您也应该传入明文密码。
安全字符串太长会导致部署挂起。
Microsoft 正在研究更好的错误消息并最终正确支持安全字符串。
此外,一些参数可能会发生冲突,这是一个适合我的更新模板。
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"administratorLogin": {
"type": "String"
},
"administratorLoginPassword": {
"type": "SecureString"
},
"servers_analytics_name": {
"defaultValue": "analyticsarmmodel",
"type": "String"
},
"databases_analytics_name": {
"defaultValue": "analytics",
"type": "String"
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"variables": {
"databases_sys_name": "sys",
"databases_mysql_name": "mysql",
"databases_performance_schema_name": "performance_schema",
"firewallRules_AllowAllWindowsAzureIps_name": "AllowAllWindowsAzureIps"
},
"resources": [
{
"type": "Microsoft.DBforMySQL/servers",
"sku": {
"name": "B_Gen5_1",
"tier": "Basic",
"family": "Gen5",
"capacity": 1
},
"name": "[parameters('servers_analytics_name')]",
"apiVersion": "2017-12-01-preview",
"location": "[parameters('location')]",
"scale": null,
"properties": {
"administratorLogin": "[parameters('administratorLogin')]",
"administratorLoginPassword": "[parameters('administratorLoginPassword')]",
"storageProfile": {
"storageMB": 5120,
"backupRetentionDays": 7,
"geoRedundantBackup": "Disabled"
},
"version": "5.7",
"sslEnforcement": "Disabled"
},
"dependsOn": []
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_information_schema_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', parameters('databases_analytics_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_mysql_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "latin1",
"collation": "latin1_swedish_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/firewallRules",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('firewallRules_AllowAllWindowsAzureIps_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"startIpAddress": "0.0.0.0",
"endIpAddress": "0.0.0.0"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
}
]
}
我一直在尝试部署以下 arm 模板(为简洁起见删除了成功部署的资源)几次。
我总是在 MySQL 部署部分收到以下错误。
New-AzureRmResourceGroupDeployment : 9:21:31 AM - Resource Microsoft.DBforMySQL/servers 'webarm01' failed with
message '{
"status": "Failed",
"error": {
"code": "ResourceDeploymentFailure",
"message": "The resource operation completed with terminal provisioning state 'Failed'.",
"details": [
{
"code": "OperationTimedOut",
"message": "The operation timed out and automatically rolled back. Please retry the operation."
}
]
}
}'
这是手臂模板
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"administratorLogin": {
"type": "String"
},
"administratorLoginPassword": {
"type": "SecureString"
},
"servers_analytics_name": {
"defaultValue": "analyticsarmmodel",
"type": "String"
},
"databases_analytics_name": {
"defaultValue": "analytics",
"type": "String"
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"variables": {
"databases_sys_name": "sys",
"databases_mysql_name": "mysql",
"databases_information_schema_name": "information_schema",
"databases_performance_schema_name": "performance_schema",
"firewallRules_AllowAllWindowsAzureIps_name": "AllowAllWindowsAzureIps"
},
"resources": [
{
"type": "Microsoft.DBforMySQL/servers",
"sku": {
"name": "B_Gen5_1",
"tier": "Basic",
"family": "Gen5",
"capacity": 1
},
"name": "[parameters('servers_analytics_name')]",
"apiVersion": "2017-12-01-preview",
"location": "[parameters('location')]",
"scale": null,
"properties": {
"administratorLogin": "[parameters('administratorLogin')]",
"administratorLoginPassword": "[parameters('administratorLoginPassword')]",
"storageProfile": {
"storageMB": 5120,
"backupRetentionDays": 7,
"geoRedundantBackup": "Disabled"
},
"version": "5.7",
"sslEnforcement": "Disabled"
},
"dependsOn": []
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_information_schema_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', parameters('databases_analytics_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_mysql_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "latin1",
"collation": "latin1_swedish_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_performance_schema_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_sys_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/firewallRules",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('firewallRules_AllowAllWindowsAzureIps_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"startIpAddress": "0.0.0.0",
"endIpAddress": "0.0.0.0"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
}
]
}
我的问题:如何使用 arm 部署 MySQL 服务器,+ 数据库而不 运行 超时?
在与 Microsoft 进行一些内部讨论后,似乎即使 administratorLoginPassword 参数被标记为安全字符串类型,您也应该传入明文密码。
安全字符串太长会导致部署挂起。
Microsoft 正在研究更好的错误消息并最终正确支持安全字符串。
此外,一些参数可能会发生冲突,这是一个适合我的更新模板。
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"administratorLogin": {
"type": "String"
},
"administratorLoginPassword": {
"type": "SecureString"
},
"servers_analytics_name": {
"defaultValue": "analyticsarmmodel",
"type": "String"
},
"databases_analytics_name": {
"defaultValue": "analytics",
"type": "String"
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"variables": {
"databases_sys_name": "sys",
"databases_mysql_name": "mysql",
"databases_performance_schema_name": "performance_schema",
"firewallRules_AllowAllWindowsAzureIps_name": "AllowAllWindowsAzureIps"
},
"resources": [
{
"type": "Microsoft.DBforMySQL/servers",
"sku": {
"name": "B_Gen5_1",
"tier": "Basic",
"family": "Gen5",
"capacity": 1
},
"name": "[parameters('servers_analytics_name')]",
"apiVersion": "2017-12-01-preview",
"location": "[parameters('location')]",
"scale": null,
"properties": {
"administratorLogin": "[parameters('administratorLogin')]",
"administratorLoginPassword": "[parameters('administratorLoginPassword')]",
"storageProfile": {
"storageMB": 5120,
"backupRetentionDays": 7,
"geoRedundantBackup": "Disabled"
},
"version": "5.7",
"sslEnforcement": "Disabled"
},
"dependsOn": []
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_information_schema_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', parameters('databases_analytics_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "utf8",
"collation": "utf8_general_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/databases",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('databases_mysql_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"charset": "latin1",
"collation": "latin1_swedish_ci"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
},
{
"type": "Microsoft.DBforMySQL/servers/firewallRules",
"name": "[concat(parameters('servers_analytics_name'), '/', variables('firewallRules_AllowAllWindowsAzureIps_name'))]",
"apiVersion": "2017-12-01-preview",
"scale": null,
"properties": {
"startIpAddress": "0.0.0.0",
"endIpAddress": "0.0.0.0"
},
"dependsOn": [
"[resourceId('Microsoft.DBforMySQL/servers', parameters('servers_analytics_name'))]"
]
}
]
}