什么是 Amazon Cloud Map? - Amazon Cloud Map
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

什么是 Amazon Cloud Map?

Amazon Cloud Map 是一项完全托管服务,可供您用来创建和维护您的应用程序所依赖的后端服务和资源的映射。Amazon Cloud Map 运行方式如下:

  1. 您可以创建一个命名空间,该命名空间将标识要用于查找您的资源的名称并指定要所需的资源查找方法:使用 Amazon Cloud Map DiscoverInstances API 调用、VPC 中的 DNS 查询或公共 DNS 查询。在大多数情况下,命名空间包含应用程序的所有服务,例如计费应用程序。

  2. 为要使用 Amazon Cloud Map 查找其终端节点的每种类型的资源创建一个 Amazon Cloud Map 服务。例如,您可以为 Web 服务器和数据库服务器创建服务。

    服务是 Amazon Cloud Map 在您的应用程序添加其他资源(如其他 Web 服务器)时使用的模板。如果您已选择在创建命名空间时使用 DNS 查找资源,则服务包含有关要用于查找 Web 服务器的记录的类型的信息。服务还会指示您是否要检查资源的运行状况,如果是,则表明您要使用 Amazon Route 53 运行状况检查还是第三方运行状况检查器。

  3. 当您的应用程序添加资源时,它会调用 Amazon Cloud Map RegisterInstance API 操作(该操作将创建服务实例)。服务实例包含有关应用程序如何查找资源(使用 DNS 还是使用 Amazon Cloud Map DiscoverInstances API 操作)的信息。

  4. 当您的应用程序需要连接到资源时,它会调用 DiscoverInstances 并指定与资源关联的命名空间和服务。Amazon Cloud Map 将返回有关如何查找一个或多个资源的信息。如果您在创建服务时指定了运行状况检查,则 Amazon Cloud Map 仅返回正常运行的实例。

Amazon Cloud Map与亚马逊弹性容器服务 (Amazon ECS) 紧密集成。随着新的容器任务数的增加或减少,它们会自动注册到 Amazon Cloud Map。你可以使用 Kubernetes ExternalDNS 连接器将亚马逊 Elastic Kubernetes 服务与Amazon Cloud Map。你也可以使用Amazon Cloud Map注册和找到任何云资源,例如亚马逊 EC2 实例、亚马逊 DynamoDB 表、亚马逊 S3 存储桶、亚马逊简单队列服务 (Amazon SQS) 队列或部署在亚马逊 API 网关上的 API 等。您可以指定服务实例的属性值,并且客户端可以使用这些属性来筛选 Amazon Cloud Map 返回的资源。例如,应用程序可以请求特定部署阶段中的资源,如 BETA 或 PROD。