我试图用使用ARM模板的CNAME记录替换现有的DNS A记录。我在DNS区域有一条记录,如下所示
我希望CNAME记录在应该如下所示的DNS区域中
当前,我的ARM模板如下所示,它创建了一个记录
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"resources": [
{
"type": "Microsoft.Network/dnszones/A",
"apiVersion": "2018-05-01",
"name": "mylink",
"properties": {
"TTL": 60,
"ARecords": [
{
"ipv4Address": "10.22.31.3"
}
]
}
},
]
}我试图添加另一个CNAME记录到这个are模板中,它在部署时出现了错误。
“代码”:“冲突”,“消息”:“无法创建CNAME记录,因为该区域已经存在同名的另一个记录。”
发布于 2021-04-12 06:28:39
由于所显示的错误,我们无法创建与同一区域中现有记录集相同的CNAME记录名,因为CNAME记录集不能与同名的其他记录集共存。请参考这里。
因此,在本例中,我们需要删除旧的A记录或使用不同的记录名创建CNAME记录。
使用ARM模板部署资源时,可以指定部署为增量更新或完整更新。默认情况下,部署使用增量模式。您可以考虑使用完全模式删除存在于资源组中但没有在模板中指定的资源。
但是,像dnszones / *这样的子资源类型不支持完全模式删除。

总之,我们不能用ARM模板直接用CNAME记录替换Azure DNS A记录。我们需要删除A记录,首先使用Azure门户或其他cmdlet,然后像往常一样使用ARM模板创建CNAME记录。
https://stackoverflow.com/questions/67030974
复制相似问题