尝试为负载均衡器创建新的 A 记录

Trying to Create a new A Record for a Load Balancer

大家好!

我正在使用 boto3 创建一个 A 记录以指向我创建的负载均衡器。当我尝试发送以下记录时:

aws_response = route53.change_resource_record_sets(
    HostedZoneId=_hostedZoneId,
    ChangeBatch={
        'Comment': 'Creating a record',
        'Changes': [
            {
                'Action': 'CREATE',
                'ResourceRecordSet': {
                    'Name': _name,
                    'Type': 'A',
                    'TTL': 15,
                    'AliasTarget': {
                        'HostedZoneId': _aliasHostedZoneId,
                        'DNSName': _instanceAlias,
                        'EvaluateTargetHealth': False
                    }
                }
            }
        ]
    }
)

我收到回复: 2017-08-11 11:41:16,775 警告调用 ChangeResourceRecordSets 操作时发生错误 (InvalidInput):无效请求

这真的很模糊,我想找出我的输入错误的地方。

这是我的变量值,可能格式不正确:

_hostedZoneId = 'Z3BCDEFG3AAAAA' (changed it)

_name = 'subdomain.domain.com'

_aliasHostedZoneId = 'Z12BBB3BBB4B5B'

_instanceAlias = 'somename-1234567890.us-east-1.elb.amazonaws.com'

非常感谢您查看此内容。

us-east-1 中的负载均衡器始终使用 HostedZoneId Z35SXDOTRQ7X7K 的别名。该值是 public 信息。该字符串进入您的变量 _aliasHostedZoneId.

https://docs.aws.amazon.com/general/latest/gr/elb.html

请求根中的 HostedZoneId 是您的 hosted-zone-id。很难从你的净化值中分辨出来,但看起来你的值是错误的,或者你可能已经调换了这两个值。

对于Alias记录,TTL总是继承的,所以在这里指定TTL似乎也是无效的。