AWS Elastic Beanstalk
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

您的 Elastic Beanstalk 环境的域名

您的环境可供位于 elasticbeanstalk.com 子域的用户使用。创建环境时,可选择一个表示您的应用程序的唯一子域。为了将用户路由至您的环境,Elastic Beanstalk 将注册一条指向您的环境的负载均衡器的别名记录。您可在所示的环境控制面板中查看别名记录的当前值。

 环境 URL 及 CNAME 显示在 Elastic Beanstalk 控制台的环境控制面板上

您可通过将您的环境上的 CNAME 与其他环境的 CNAME 进行交换来更改它。有关说明,请参阅使用 AWS Elastic Beanstalk 进行蓝/绿部署

如果您拥有一个域名,则可使用 Route 53 将它解析到您的环境。您可向 Amazon Route 53 购买域名,也可使用从其他提供商处购买的域名。要向 Route 53 购买域名,请参阅 Route 53 开发人员指南中的注册新域

要使用自定义域名,请先为域创建一个托管区域。托管区域包含名称服务器和起始授权 (SOA) 记录,这些记录指定将为您的域名解析请求的 DNS 主机。

在 Route 53 中创建托管区域

  1. 打开 Route 53 控制台

  2. 如果您获得了显示以下图像的 Route 53 控制台登录页面,请在 DNS 管理下选择立即开始

     Route 53 控制台登录页面
  3. 选择 Hosted Zones

  4. 选择 Create Hosted Zone

  5. Domain Name 中键入您拥有的域名。例如:example.com

  6. 选择 Create

接下来,向针对您的环境解析您的域名的托管区域添加一条记录。当 Route 53 DNS 服务器收到针对您的自定义域名的名称请求时,它将解析为 elasticbeanstalk.com 子域,此子域将解析为您的 Elastic Load Balancing 负载均衡器的公有 DNS 名称,负载均衡器接着将请求中继到您的环境中的实例。

注意

在单实例环境中,elasticbeanstalk.com 子域将解析为附加到运行您的应用程序的实例的弹性 IP 地址。

如果您的环境具有区域化的子域,则可使用 Route 53 别名资源记录集以节省名称解析费用。具有区域化的子域的环境的域名包含区域;例如 my-environment.us-west-2.elasticbeanstalk.com

在 Route 53 中添加别名资源记录集

  1. 打开 Route 53 控制台

  2. 选择 Hosted Zones

  3. 选择您的托管区域的名称。

  4. 选择 Create Record Set

  5. 对于 Name,键入将重定向至您的 Elastic Beanstalk 应用程序的子域。例如:www

  6. 对于 Type,选择 A - IPv4 address

  7. 对于 Alias,选择 yes.

  8. 对于 Alias Target,选择您的 Elastic Beanstalk 环境的域名。

  9. 选择 Save Record Set

如果您的环境没有区域化的子域,则创建一条别名记录。

在 Route 53 中添加 CNAME 记录

  1. 打开 Route 53 控制台

  2. 选择 Hosted Zones

  3. 选择您的托管区域的名称。

  4. 选择 Create Record Set

  5. 对于 Name,键入将重定向至您的 Elastic Beanstalk 应用程序的子域。例如:www

  6. 对于 Type,选择 CNAME - Canonical Name

  7. 对于 Value,键入您的 Elastic Beanstalk 环境的域名。例如:example.elasticbeanstalk.com

  8. 选择 Save Record Set

DNS 记录在全球传播需要多达 24 小时。

如果您向其他提供商注册了域名,则在域配置中注册您的 Route 53 托管区域中的名称服务器。当您的提供商收到对您的域名的 DNS 请求时,它会将请求转发至 Route 53 的名称服务器以将域名解析为 IP 地址。查找名为 Nameservers 的设置或检查您的提供商的文档。

Route 53 控制台将在托管区域页上显示 NS 记录中您的托管区域的名称服务器的列表。

 托管区域的名称服务器的 Route 53 列表

如果您有多个环境正在运行您的应用程序,则可使用 Elastic Beanstalk 控制台交换两个环境的域名。这使您能够将新版本的应用程序部署到备用环境,测试应用程序,然后与生产环境交换域。

在执行 CNAME 交换后,用户将定向至新版本的应用程序,并且不会出现停机。这称为蓝/绿部署

交换环境 CNAME

  1. 打开 Elastic Beanstalk 控制台

  2. 选择任一环境以打开环境控制面板。

  3. 选择 Actions,然后选择 Swap Environment URLs

  4. 选择其他环境,然后选择交换