AWS Route53记录集删除错误 - 提供的值与当前值不匹配

时间:2018-03-23 03:52:54

标签: amazon-web-services aws-cli

我正在尝试使用以下命令删除故障转移别名记录集:

aws route53 change-resource-record-sets \
    --hosted-zone-id <my-zone-id> \
    --change-batch file://file.json

json的内容:

{
  "Comment": "test-rdc",
  "Changes": [
  {
    "Action": "DELETE",
    "ResourceRecordSet": {
      "Name": "abc.aws-ab-xyz.abcd.com",
      "Type": "A",
      "SetIdentifier": "abc-Secondary",
      "Failover": "SECONDARY" ,
      "AliasTarget": {
        "HostedZoneId": "jashkhakh",
        "DNSName": "hhhkjhkh",
        "EvaluateTargetHealth": false 
      },
      "HealthCheckId": "hhjhkh" 
    }
  }]
}
  

错误:尝试删除资源记录集   [name =&#39; abc.aws-ab-xyz.abcd.com。&#39;,type =&#39; A&#39;,   set-identifier =&#39; abc-Secondary&#39;,health check =&#39; hhjhkh&#39;]但值   提供的不匹配当前值

我已经验证了json文件中的条目是否正确。

3 个答案:

答案 0 :(得分:0)

同时指定TTL。

我在Cloudformation更改中遇到了同样的问题,问题是TTL之间存在差异。

https://github.com/ansible/ansible-modules-core/issues/551#issuecomment-70481068

答案 1 :(得分:0)

我能够自己解决这个问题。我在json文件中缺少ELB名称的双栈前缀。 看起来它期望ELB名称与R53控制台中的名称完全相同。 改变自:

"DNSName": "hhhkjhkh"

"DNSName": "dualstack.hhhkjhkh"

答案 2 :(得分:0)

今天在尝试通过CICD管道中的CloudFormation更新路由53时也遇到了此错误。原来是因为我们在测试中手动修改了记录,而没有又变回了。 Cloudformation不仅需要记录类型/名称/ TTL 相同,而且还要求其值与上一次堆栈更新/创建时的值相同。

因此,解决方法是将值切换回原始网址,CFT /堆栈再次起作用。