2017-08-11 46 views
0

美好的一天,每个人!试图为负载平衡器创建新的A记录

我正在使用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年8月11日11:41:16775警告发生错误(InvalidInput)调用时ChangeResourceRecordSets操作:无效的请求

这真的很模糊,我试图弄清楚我的输入不好。

这里是我的变量的值,也许格式不正确:

_hostedZoneId = 'Z3BCDEFG3AAAAA' (changed it) 

_name = 'subdomain.domain.com' 

_aliasHostedZoneId = 'Z12BBB3BBB4B5B' 

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

非常感谢您为寻找这种过度。

回答

0

us-east-1中的负载均衡器始终是HostedZoneId Z35SXDOTRQ7X7K的别名。这个值是公开信息。该字符串出现在您的变量_aliasHostedZoneId中。

http://docs.aws.amazon.com/general/latest/gr/rande.html#elb_region

在请求根部的HostedZoneId是托管区-ID。从您的卫生数据中很难分辨出来,但看起来您有错误的数值,或者您可能已将这两个数值置换。

对于别名记录,TTL始终是继承的,因此在此处指定TTL似乎也是无效的。

+0

你说得对,那只是TTL记录不需要! 非常感谢您的帮助! – mthola