Amazon Cloud Map 常见问题

什么是 Amazon Cloud Map?

Amazon Cloud Map 是一项云资源发现服务。Cloud Map 允许您使用自定义名称命名应用程序资源,并且会自动更新这些动态变化的资源的位置。这可以提高应用程序的可用性,因为您的应用程序始终能发现其资源的最新位置。

为什么要使用 Cloud Map?

现代应用程序通常由多项服务组成,这些服务可通过 API 访问并执行某个特定的功能。每项服务都能与各种其他资源(如数据库、队列、对象存储和客户定义的微服务)进行交互,为了正常工作,它们还必须能够找到各自所依赖的所有基础设施资源的位置。

Cloud Map 可让您使用自定义名称注册任意应用程序资源,如数据库、队列、微服务和其他云资源。Cloud Map 会不断检查资源的运行状况,以确保资源位置是最新的。然后,应用程序中的资源可以根据应用程序版本和部署环境在注册表中查询所需的确切资源的位置。

什么是命名空间?

命名空间是 Amazon Cloud Map 中的一个逻辑实体,可让您对服务进行分组,并实施通用级别的公共(可从公共 Internet 访问)或私有(仅在特定 VPC 中可见)可见性。您可以允许通过 Amazon 开发工具包和 API 发现服务,或者通过 DNS 启用可选发现,进而定义应用程序应如何在命名空间级别发现服务。

Amazon Cloud Map 中的“服务”和“资源”有何区别?

在 Amazon Cloud Map 中,服务是一个有着特定用途的应用程序组件,例如生成账单或调整缩略图大小。服务部署后,它在某些类型的基础设施上运行,例如 EC2 实例、ECS 任务、DynamoDB 表、SQS 队列或 Lambda 函数。在 Amazon Cloud Map 中,这些就是资源。您的服务可能只需要一个资源,也可能在随服务扩展而不断变化的数千个资源上运行。

Amazon Cloud Map 通过 DNS 返回的结果与通过 HTTPS 返回的结果有何区别?

通过 DNS,Amazon Cloud Map 提供由 IP 地址或“IP:端口”组合(使用 IPv4 或 IPv6)组成的资源位置。使用基于 API 的发现,Amazon Cloud Map可以返回所有这些类型的位置,以及 URL 或 ARN。对于具有 IP 或“IP:端口”位置的资源,可以指定在通过 DNS、API 查询或同时通过这两者查询时,Amazon Cloud Map 是否应返回资源。对于具有 URL 或 ARN 位置的资源,应用程序必须通过 API 进行查询。当客户端通过 API 查询 Amazon Cloud Map 时,可以通过指定属性缩小查询结果范围。

Amazon Cloud Map 如何对基于 IP 的资源执行运行状况检查?

在 Amazon Cloud Map 中注册资源时,可以选择指定运行状况检查的设置,包括:运行状况检查类型(常规或基于路径)、要检查的可选路径以及认为资源运行不正常的重试次数。一旦您注册了基于 IP 的资源,Amazon Cloud Map 就会根据服务中的设置自动为这些资源预置运行状况检查。Amazon Cloud Map 还通过 /describeHealthStatus API 提供资源运行状况信息。

Amazon Cloud Map 能和我的 VPC 中的资源一起运行吗?

能,Amazon Cloud Map 允许您在 VPC 中注册资源并使其可被发现。Amazon Cloud Map 还包括一个区域 API,可以用来注册和注销 VPC 内部和外部的资源。

如何与 Amazon Elastic Container Service (ECS) 集成?

创建 ECS 服务时,可以通过指定服务的自定义名称、属性和可选的运行状况检查设置来选择启用服务发现。当 ECS 为您的服务启动任务时,它会将任务注册为 Amazon Cloud Map 服务注册表中的资源,从而确保任务可以通过 API 调用和 DNS 查询被发现。

如何与 Amazon Elastic Container Service for Kubernetes (EKS) 集成?

我们在开源 Kubernetes 连接器 ExternalDNS 中创建了一个 Cloud Map 提供程序,它可以在 Amazon EKS 服务启动时自动将内部服务位置传播到 Amazon Cloud Map 服务注册表,并在终止时将其删除。然后,所有 EKS 服务都可以通过 Amazon Cloud Map 被发现,Amazon Cloud Map 为 EKS 上的所有容器工作负载提供了一个统一的服务注册表。

开始使用亚马逊云科技免费构建

开始使用亚马逊云科技免费构建

关闭
热线

热线

1010 0766
由光环新网运营的
北京区域
1010 0966
由西云数据运营的
宁夏区域