sql-server - Azure SQL Server ARM 模板部署错误消息
问题描述
使用门户的导出模板为单个 Azure SQL Server 部署 ARM 模板时,我收到这些我无法理解/分类/解决的错误。它想从我这里得到什么???
New-AzureRmResourceGroupDeployment : ... 资源 Microsoft.Sql/servers... - ./advisors 'sqls01/DbParameterization' 失败 - ./advisors 'sqls01/DefragmentIndex' 失败 - ./vulnerabilityAssessments 'sqls01/Default' 失败 - ./databases /auditingPolicies 'sqls01/master/Default' 失败 - ./databases/auditingSettings 'sqls01/master/Default' 失败 - ./databases/vulnerabilityAssessments 'sqls01/master/Default' 失败
但是,服务器部署正确;否则模板工作正常。这些错误只是“警告”吗?可以忽略它们吗?如果是这样,如何压制他们?
这只是为了自动化标准 Azure SQL Server 部署;未配置自动调整、审计等(只有透明数据加密)。我用谷歌搜索了错误消息,也在这里搜索但无济于事。
有没有人看到同样的问题 - 即使部署成功了我在资源组中看到的内容,我当然也无法发布会引发这样四页红色错误行的部署集。
这里是 ARM 模板的 SQL Server 部分:
,
{
"type": "Microsoft.Sql/servers",
"apiVersion": "2015-05-01-preview",
"name": "[parameters('servers_initialsql01_name')]",
"location": "[variables('rgLocation')]",
"kind": "v12.0",
"properties": {
"administratorLogin": "[parameters('sqls01LI')]",
"administratorLoginPassword": "[parameters('sqls01PW')]",
"version": "12.0"
}
},
...
,
{
"type": "Microsoft.Sql/servers/advisors",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/CreateIndex')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"autoExecuteValue": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/advisors",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/DbParameterization')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"autoExecuteValue": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/advisors",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/DefragmentIndex')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"autoExecuteValue": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/advisors",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/DropIndex')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"autoExecuteValue": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/advisors",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/ForceLastGoodPlan')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"autoExecuteValue": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/auditingPolicies",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/Default')]",
"location": "[variables('rgLocation')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"auditingState": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/auditingSettings",
"apiVersion": "2017-03-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"state": "Disabled",
"retentionDays": 0,
"auditActionsAndGroups": [],
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"isStorageSecondaryKeyInUse": false
}
},
{
"type": "Microsoft.Sql/servers/databases/auditingPolicies",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/Default')]",
"location": "[variables('rgLocation')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"auditingState": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"apiVersion": "2017-03-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"state": "Disabled",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"isStorageSecondaryKeyInUse": false
}
},
{
"type": "Microsoft.Sql/servers/databases/geoBackupPolicies",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/Default')]",
"location": "[variables('rgLocation')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"state": "Enabled"
}
},
{
"type": "Microsoft.Sql/servers/databases/securityAlertPolicies",
"apiVersion": "2018-06-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"state": "Disabled",
"disabledAlerts": [
""
],
"emailAddresses": [
""
],
"emailAccountAdmins": false,
"retentionDays": 0
}
},
{
"type": "Microsoft.Sql/servers/databases/transparentDataEncryption",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/current')]",
"location": "[variables('rgLocation')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"status": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments",
"apiVersion": "2017-03-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"recurringScans": {
"isEnabled": false,
"emailSubscriptionAdmins": true
}
}
},
{
"type": "Microsoft.Sql/servers/encryptionProtector",
"apiVersion": "2015-05-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/current')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"kind": "servicemanaged",
"properties": {
"serverKeyName": "ServiceManaged",
"serverKeyType": "ServiceManaged"
}
},
{
"type": "Microsoft.Sql/servers/firewallRules",
"apiVersion": "2015-05-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/AllowAllWindowsAzureIps')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"startIpAddress": "0.0.0.0",
"endIpAddress": "0.0.0.0"
}
},
{
"type": "Microsoft.Sql/servers/keys",
"apiVersion": "2015-05-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/ServiceManaged')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"kind": "servicemanaged",
"properties": {
"serverKeyType": "ServiceManaged"
}
},
{
"type": "Microsoft.Sql/servers/securityAlertPolicies",
"apiVersion": "2017-03-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"state": "Disabled",
"disabledAlerts": [
""
],
"emailAddresses": [
""
],
"emailAccountAdmins": false,
"retentionDays": 0
}
},
{
"type": "Microsoft.Sql/servers/vulnerabilityAssessments",
"apiVersion": "2018-06-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"recurringScans": {
"isEnabled": false,
"emailSubscriptionAdmins": true
}
}
},
解决方案
我刚刚从模板 JSON 中删除了我在 OP 中提到的所有与 SQL Server 相关的定义,但主要创建者定义*除外。部署再次正常,但不再出现错误消息。缺点是我显然需要在每个模板(重新)导出之后执行这个额外的手动步骤:(
*我只是保留:
,
{
"type": "Microsoft.Sql/servers",
"apiVersion": "2015-05-01-preview",
"name": "[parameters('servers_initialsql01_name')]",
"location": "[variables('rgLocation')]",
"kind": "v12.0",
"properties": {
"administratorLogin": "[parameters('sqls01LI')]",
"administratorLoginPassword": "[parameters('sqls01PW')]",
"version": "12.0"
}
},
推荐阅读
- javascript - 如何使用 html2pdf - jspdf javascript 插件设置页眉和页脚?
- javascript - 带有嵌套映射的 JavaScript 嵌套数组
- c - 是 scanf("%4s%4s", b, b); 定义明确?
- java - 当两者都被编译成仅由 JVM 运行的 .class 文件时,Scala 比 Java 快多少?
- google-apps-script - Google Apps 脚本抱怨“严格”,但来源中没有“使用严格”。怎么会这样?
- mysql - 为什么mysql不回收ibd文件中的可用空间?
- sql - 创建一个可能存在 Null 关系的 PostgreSQL 查询
- reactjs - 为什么反应三元运算符仅适用于标签之间?
- python - 从 Discord.py 执行 Python 命令
- ansible - 将 If-else shell 转换为 Ansible