

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 Route 53 将域流量路由到 Lightsail 容器服务
<a name="amazon-lightsail-route-53-alias-record-for-container-service"></a>

您可以将注册域名（例如）的流量路由到在 Amazon Lightsail 容器服务上运行的应用程序。`example.com`为此，您可以向域的托管区域添加指向 Lightsail 容器服务的默认域的别名记录。

在本教程中，我们将向您展示如何将您的 Lightsail 容器服务的别名记录添加到 Route 53 中的托管区域。只有使用 AWS Command Line Interface (AWS CLI) 才能执行此操作。无法使用 Route 53 控制台来完成此操作。

**注意**  
如果你使用 Lightsail 来托管你的域名的 DNS，那么你应该在 Lightsail 中将别名记录添加到你的域名的 DNS 区域。有关更多信息，请参阅将 [Amazon Lightsail 中域名的流量路由到 Lightsail 容](amazon-lightsail-point-domain-to-container-service.md)器服务。

**内容**
+ [步骤 1：完成先决条件](#route-53-container-service-prerequisites)
+ [第 2 步：获取 Lightsail IDs 容器服务的托管区域](#route-53-container-service-hosted-zone-ids)
+ [步骤 3：创建记录集 JSON 文件](#route-53-container-service-create-record-set-json)
+ [步骤 4：将记录添加到 Route 53 中域的托管区域](#route-53-container-service-add-record-to-hosted-zone)

## 步骤 1：完成先决条件
<a name="route-53-container-service-prerequisites"></a>

满足以下先决条件（如果尚未满足）：
+ 在 Route 53 中注册域名，或将 Route 53 设为您注册的（现有）域名的 DNS 服务。有关更多信息，请参阅《Amazon Route 53 开发人员指南》**中的[使用 Amazon Route 53 注册域名](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar.html)或[将 Amazon Route 53 作为现有域的 DNS 服务](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/MigratingDNS.html)。
+ 将您的应用程序部署到您的 Lightsail 容器服务。有关更多信息，请参阅[创建和管理容器服务的部署](amazon-lightsail-container-services-deployments.md)。
+ 在 Lightsail 容器服务上启用您的注册域名。有关更多信息，请参阅[启用和管理自定义域](amazon-lightsail-enabling-container-services-custom-domains.md)。
+ 使用您的账户 AWS CLI 进行配置。有关更多信息，请参阅[配置为与 Lightsail 配合使用](lightsail-how-to-set-up-and-configure-aws-cli.md)。 AWS CLI 

## 第 2 步：获取 Lightsail IDs 容器服务的托管区域
<a name="route-53-container-service-hosted-zone-ids"></a>

在 Route 53 中的托管区域中添加别名记录时，必须为 Lightsail 容器服务指定托管区域 ID。例如，如果您的 Lightsail 容器服务位于美国西部（俄勒冈）(us-west-2)，则在将您的 Lightsail 容器服务的别名记录`Z0959753D43BBB908BAV`添加到 Route 53 的托管区域时，您必须指定托管区域 ID。 AWS 区域

以下是每个 AWS 区域 IDs 的托管区域，您可以在其中创建 Lightsail 容器服务。

**欧盟（伦敦）（eu-west-2**）：Z0624918 ZXDYQZLOXA66

**美国东部（弗吉尼亚北部）（us-east-1**）：Z06246771 W4 KYU0 IRHI74

**亚太地区（新加坡）（ap-southeast-1**）：Z0625921354 V0 DRJH4 EY9

**欧盟（爱尔兰）（eu-west-1）：Z0624732 Y21** FELAMMKW3

**亚太地区（东京）（ap-northeast-1**）：Z0626125 JSKN UAU4 JWQ9

**亚太地区（首尔）（ap-northeast-2**）：Z06260262 B2WPLHH XZM84

**亚太地区（雅加达）（ap-southeast-3**）：Z03072883T5 T7CDL HFTY4

**亚太地区（孟买）（ap-south-1）：Z10460781** I0VVY IQMISS0

**亚太地区（悉尼）（ap-southeast-2**）：Z09597943 E PQQZATPFE96

**加拿大（中部）（ca-central-1）：Z10450993 W** RIRIJJUUMA5

**欧洲（法兰克福）（eu-central-1）：Z06137433 L0** FV04 OY4 EC6

**欧洲（斯德哥尔摩）（eu-north-1）：Z016970523 TZMUXKK** TDG2

**欧洲（巴黎）（eu-west-3）：Z09594631 CFG** O DSW2 QUR7

**美国东部（俄亥俄州）（us-east-2**）：Z10362273 VJ548563 IY84

**美国西部（俄勒冈州）（us-west-2**）：Z0959753D43 BAV BBB908

## 步骤 3：创建记录集 JSON 文件
<a name="route-53-container-service-create-record-set-json"></a>

使用将 DNS 记录添加到 Route 53 中域的托管区域时 AWS CLI，必须为该记录指定一组配置参数。最简单的方法是创建一个包含所有参数的 JSON (.json) 文件，然后在请求中引用 JSON 文件。 AWS CLI 

完成以下过程以使用别名记录的记录集参数创建一个 JSON 文件：

1. 打开文本编辑器，例如 Windows 上的记事本或 Linux 上的 Nano。

1. 将以下文本复制并粘贴到文本编辑器中：

   ```
   {
     "Comment": "Comment",
     "Changes": [
       {
         "Action": "CREATE",
         "ResourceRecordSet": {
           "Name": "Domain.",
           "Type": "A",
           "AliasTarget": {
             "HostedZoneId": "LightsailContainerServiceHostedZoneID",
             "DNSName": " LightsailContainerServiceAddress.",
             "EvaluateTargetHealth": true
           }
         }
       }
     ]
   }
   ```

   在您的文件中，将以下示例文本替换为自己的文本：
   + *Comment*附上关于记录集的个人笔记或评论。
   + *Domain*使用您想要在 Lightsail 容器服务中使用的注册域名（例如，`example.com`或`www.example.com`）。要在 Lightsail 容器服务中使用您的域的根目录，您必须在域的子域空间中指定一个`@`符号（例如）。`@.example.com`
   + *LightsailContainerServiceHostedZoneID*使用您在其中创建 Lightsail 容器服务的 AWS 区域的托管区域 ID。有关更多信息，请参阅本指南前[面的步骤 2：获取 Lightsail 容器服务的托管区域 IDs ](#route-53-container-service-hosted-zone-ids)。
   + *LightsailContainerServiceAddress*使用你的 Lightsail 容器服务的公共域名。您可以通过登录 Lightsail 控制台、浏览您的容器服务并复制容器服务管理页面标题部分中列出的**公共域名**（例如）来获取此信息。`container-service-1.q8cexampleljs.us-west-2.cs.amazonlightsail.com`

   示例：

   ```
   {
     "Comment": "Alias record for Lightsail container service",
     "Changes": [
       {
         "Action": "CREATE",
         "ResourceRecordSet": {
           "Name": "@.example.com.",
           "Type": "A",
           "AliasTarget": {
             "HostedZoneId": "Z0959753D43BBB908BAV",
             "DNSName": "container-service-1.q8cexampleljs.us-west-2.cs.amazonlightsail.com.",
             "EvaluateTargetHealth": true
           }
         }
       }
     ]
   }
   ```

1. 将文件以 `change-resource-record-sets.json` 格式保存到本地目录。

## 步骤 4：将记录添加到 Route 53 中域的托管区域
<a name="route-53-container-service-add-record-to-hosted-zone"></a>

完成以下过程以使用 AWS CLI将记录添加到 Route 53 中域的托管区域。您可以使用 `change-resource-record-sets` 命令完成此操作。有关更多信息，请参阅《*AWS CLI 命令参考*》[change-resource-record-sets](https://docs.aws.amazon.com/cli/latest/reference/route53/change-resource-record-sets.html)中的。

**注意**  
在 AWS CLI 继续执行此过程之前，必须为 Lightsail 和 Route 53 安装并对其进行配置。有关更多信息，请参阅[配置为与 Lightsail 配合使用](lightsail-how-to-set-up-and-configure-aws-cli.md)。 AWS CLI 

1. 打开命令提示符或终端窗口。

1. 输入以下命令以将记录添加到 Route 53 中域的托管区域。

   ```
   aws route53 change-resource-record-sets --hosted-zone-id HostedZoneID --change-batch PathToJsonFile
   ```

   在该命令中，将以下示例文本替换为自己的文本：
   + *HostedZoneID*其中包含您在 Route 53 中注册域的托管区域的 ID。使用[list-hosted-zones](https://docs.aws.amazon.com/cli/latest/reference/route53/list-hosted-zones.html)命令获取 Route 53 账户中托管区域的列表。 IDs 
   + *PathToJsonFile*使用计算机上包含记录参数的.json 文件的本地目录文件夹路径。有关更多信息，请参阅本指南前面部分中的[步骤 3：创建记录集 JSON 文件](#route-53-container-service-create-record-set-json)。

   示例：

   在 Linux 或 Unix 计算机上：

   ```
   aws route53 change-resource-record-sets --hosted-zone-id Z123456789ABCDEFGHIJ --change-batch home/user/awscli/route53/change-resource-record-sets.json
   ```

   在 Windows 计算机上：

   ```
   aws route53 change-resource-record-sets --hosted-zone-id Z123456789ABCDEFGHIJ --change-batch file://C:\awscli\route53\change-resource-record-sets.json
   ```

   您会看到类似于以下示例的结果：  
![\[更改资源记录集请求的结果\]](http://docs.aws.amazon.com/zh_cn/lightsail/latest/userguide/images/amazon-lightsail-route-53-record-set.png)

   请让更改在 Internet 的 DNS 内进行传播，这可能需要几个小时。完成后，您在 Route 53 中注册域的互联网流量应开始路由到您的 Lightsail 容器服务。