我需要通过创建流量策略,使用 Amazon Route 53 流量将 DNS 流量路由到多个资源。如何使用 AWS 命令行界面 (AWS CLI) 在 Route 53 中创建流量策略记录?

注意:您也可以通过 Route 53 控制台创建流量策略​。

使用 AWS CLI 创建流量策略

创建用于定义流量策略配置的 JSON 文件。参阅流量策略文档格式了解基本语法、终端节点和规则。

在命令 create-traffic-policy 中使用您自己的参数在 AWS CLI 中创建流量策略:

$ aws route53 create-traffic-policy --name <Value> --document file://<Full Path for JSON file>

以下参数为必需参数:

  • --name
  • --document

以下参数为可选参数:

  • --comment
  • --cli-input-json
  • --generate-cli-skeleton

在输出中,记下流量策略 ID 和版本号。

示例输出格式:

{
  "TrafficPolicy": {
    "Document": <JSON_Document>,
    "Version": <Version_Number>,
    "Type": "<Policy_Type>",
    "Id": "<Traffic_Policy_ID>",
    "Name": "<Policy_Name>"
  }
}

使用 create-traffic-policy-instance API 调用创建流量策略记录:

$ aws route53 create-traffic-policy-instance --hosted-zone-id <value> --name <value> --ttl <value> --traffic-policy-id <value> --traffic-policy-version <value>

示例流量策略

下面的示例流量策略创建指向两个终端节点的加权记录。

请注意,该策略指定:

  • 当前策略格式版本 (AWSPolicyFormatVersion)
  • 记录类型 (RecordType)。根据终端节点类型配置此值。在此示例中,记录类型为 A。​
  • 指向 IP 地址 (Type)​ 的两个终端节点 (EndPointReference)
  • 加权规则 (RuleType) 每个终端节点的另一个权重 (Weight)
  • 流量策略的起点。在此示例中,StartRule 指定策略从规则而不是终端节点 (StartEndpoint) 开始。
  • 运行状况检查设置 (EvaluateTargetHealth),您可以通过 HealthCheck 进一步配置。在此示例中,未执行运行状况检查。
{
  "AWSPolicyFormatVersion": "2015-10-01",
  "RecordType": "A",
  "Endpoints": {
    "endpoint-1": {
      "Type": "value",
      "Value": "192.0.1.1"
      },
    "endpoint-2": {
      "Type": "value",
      "Value": "192.0.1.2"
      }
    },
  "Rules": {
    "weighted-rule-name": {
      "RuleType": "weighted",
      "Items": [
        {"Weight": "30",
        "EvaluateTargetHealth": true,
        "EndpointReference": "endpoint-1"
        },
        {"Weight": "20",
        "EvaluateTargetHealth": false,
        "EndpointReference": "endpoint-2"
        }
      ]
    }
  },
  "StartRule": "weighted-rule-name"
}

此页内容对您是否有帮助? |

返回 AWS Support 知识中心

需要帮助? 请访问 AWS 支持中心

发布时间:2018 年 8 月 24 日