如何通过AWS Route53 Java API修改默认路由策略为Simple
在AWS Route53 Java API中设置Simple路由策略的方法
你遇到的问题其实是对Route53 Java API路由策略配置逻辑的误解:Simple路由策略是API的默认行为,不需要额外指定任何特殊参数。只有当你需要使用Latency、Weighted、Geolocation等高级路由策略时,才需要为ResourceRecordSet添加对应的策略对象。
如果你的代码默认创建出了Latency策略的记录,大概率是不小心在代码中引入了LatencyRoutingPolicy的配置,把这部分代码移除即可。
正确创建Simple路由策略记录的代码示例
// 初始化Route53客户端(根据你的环境配置客户端,比如指定区域、凭证等) AmazonRoute53 route53 = AmazonRoute53ClientBuilder.standard() .withCredentials(new DefaultAWSCredentialsProviderChain()) .withRegion(Regions.US_EAST_1) .build(); // 构建Simple策略的资源记录集:不需要添加任何路由策略相关配置 ResourceRecordSet simpleRecordSet = new ResourceRecordSet() .withName("your-domain.com.") // 域名必须以英文句点结尾 .withType(RRType.A) .withTTL(300L) .withResourceRecords(new ResourceRecord().withValue("10.0.0.1")); // 组装变更请求 ChangeResourceRecordSetsRequest changeRequest = new ChangeResourceRecordSetsRequest() .withHostedZoneId("YOUR_HOSTED_ZONE_ID") // 替换为你的托管区ID .withChangeBatch(new ChangeBatch() .withChanges(new Change() .withAction(ChangeAction.CREATE) .withResourceRecordSet(simpleRecordSet))); // 提交变更 route53.changeResourceRecordSets(changeRequest);
关键说明
- Web UI中选择「Simple路由策略」的操作,对应API中不为ResourceRecordSet设置任何路由策略对象的状态。
- 若之前代码中存在
.withLatencyRoutingPolicy(new LatencyRoutingPolicy().withRegion("us-east-1"))这类配置,删除该行即可切换为Simple策略。
内容的提问来源于stack exchange,提问作者Vinay B
相关产品推荐
相关产品推荐

