VPC Lattice 中的服务 - Amazon VPC Lattice

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

VPC Lattice 中的服务

VPC Lattice 中的服务是一个可独立部署的软件单元,用于交付特定的任务或函数。服务可以在实例、容器上运行,也可以在账户或虚拟私有云(VPC)中作为无服务器函数运行。服务有一个侦听器,该侦听器使用规则(称为侦听器规则),您可以配置这些规则来帮助将流量路由到目标。目标可以是 EC2 实例、IP 地址、无服务器 Lambda 函数、应用程序负载均衡器,或 Kubernetes 容器组。有关更多信息,请参阅VPC Lattice 中的目标组。您可以将服务与多个服务网络关联。下图显示 VPC Lattice 中典型服务的关键组件。


            具有侦听器、侦听器规则和两个目标组的服务。

您可以通过为服务提供名称和描述来创建服务。但是,要控制和监控您的服务流量,务必包含访问设置和监控详细信息。要将流量从服务发送到目标,必须设置侦听器并配置规则。要让流量从服务网络流向服务,必须将您的服务与服务网络关联。

对于目标连接,存在空闲超时和总体连接超时。空闲连接超时为 1 分钟,之后会关闭连接。最长持续时间为 10 分钟,之后我们不允许连接上有新的流,同时开始关闭现有流的过程。

步骤 1:创建 VPC Lattice 服务

创建具有访问设置和监控详细信息的基本 VPC Lattice 服务。但是,在定义路由配置并将其与服务网络关联之前,服务不会完全正常运行。

要使用控制台创建基本服务
  1. 通过 https://console.aws.amazon.com/vpc/ 打开 Amazon VPC 控制台。

  2. 在导航窗格中的 VPC Lattice 下,选择服务

  3. 选择 Create service

  4. 对于标识符,执行以下操作:

    1. 输入服务的名称。名称必须介于 3-63 个字符之间,使用小写字母、数字和连字符。必须以字母或数字开头和结尾。不要使用双连字符。

    2. (可选)输入服务网络的描述。您可以在创建过程中或创建后设置或更改描述。描述最多可包含 256 个字符。

  5. (可选)要为服务指定自定义域名,请选择指定自定义域配置并输入自定义域名。您现在可以选择匹配的证书。否则,您可以在为服务创建 HTTPS 侦听器时选择匹配的证书。

  6. 对于服务访问,如果您希望与服务网络关联的 VPC 中的客户端访问服务,请选择。要应用验证策略来控制对服务的访问,请选择 AWS IAM。要将资源策略应用于服务,请对验证策略执行以下操作之一:

    • 在输入字段中输入策略。对于可以复制和粘贴的示例策略,请选择策略示例

    • 选择应用策略模板,然后选择允许已验证和未验证访问模板。此模板允许来自其他账户的客户端通过签署请求(表示已验证),或以匿名方式(表示未验证)访问服务。

    • 选择应用策略模板,然后选择允许仅限已验证访问模板。此模板允许来自其他账户的客户端通过签署请求(表示已验证)访问服务。

  7. (可选)要启用访问日志,请开启访问日志切换开关,并按如下方式指定访问日志的目标:

    • 选择CloudWatch 日志组,然后选择一个 CloudWatch 日志组。要创建日志组,请选择在中创建日志组 CloudWatch

    • 选择 S3 存储桶并输入 S3 存储桶路径,包括任何前缀。要搜索 S3 存储桶,请选择浏览 S3

    • 选择 Kinesis Data Firehose 传输流,然后选择一个传输流。要创建传输流,请选择在 Kinesis 中创建传输流

  8. (可选)要与其他账户共享您的服务,请从 AWS RAM 资源共享中选择一个资源共享。要创建资源共享,请选择在 RAM 控制台中创建资源共享

  9. 要查看配置并创建服务,请选择跳转到查看和创建。否则,请选择下一步,定义服务的路由配置。

步骤 2:定义路由

使用侦听器定义路由配置,以便服务可以将流量发送到您指定的目标。

先决条件

在添加侦听器之前,必须先创建 VPC Lattice 目标组。有关更多信息,请参阅创建 VPC Lattice 目标组

要使用控制台为服务定义路由
  1. 选择添加侦听器

  2. 对于侦听器名称,您可以提供自定义侦听器名称,也可以使用侦听器的协议和端口作为侦听器名称。您指定的自定义名称最多可包含 63 个字符,且对账户中的每项服务必须是唯一的。有效字符:a-z、0-9 和连字符(-)。不能将连字符用作第一个或最后一个字符,也不能紧跟在另一个连字符之后。创建侦听器后,不能更改其名称。

  3. 对于协议 : 端口,选择 HTTPHTTPS,然后输入端口号。

  4. 对于默认操作,选择要接收流量的 VPC Lattice 目标组,然后选择要分配给该目标组的权重。为目标组分配的权重可用于设定目标组接收流量的优先级。例如,如果两个目标组具有相同的权重,则每个目标组将接收一半的流量。如果只指定了一个目标组,则 100% 的流量将发送到一个目标组。

    您可以选择为默认操作添加另一个目标组。选择添加操作,然后选择其他目标组并指定其权重。

  5. (可选)要添加其他规则,请选择添加规则,然后输入规则的名称、优先级、条件和操作。

    您可以为每条规则指定一个 1 到 100 之间的优先级编号。侦听器不能具有优先级相同的多个规则。规则是按优先级顺序 (从最低值到最高值) 计算的。最后评估默认规则。

    对于条件,输入路径匹配条件的路径模式。每个字符串的最大长度为 200 个字符。比较不区分大小写。

  6. (可选)要添加标签,请展开侦听器标签,选择添加新标签,然后输入标签键和标签值。

  7. 要查看配置并创建服务,请选择跳转到查看和创建。否则,请选择下一步,将服务与服务网络关联。

步骤 3:创建网络关联

将服务与服务网络关联,以便客户端可以与之通信。

要使用控制台将服务与服务网络关联
  1. 对于 VPC Lattice 服务网络,请选择服务网络。要创建服务网络,请选择创建 VPC Lattice 网络。您可以将您的服务与多个服务网络关联。

  2. (可选)要添加标签,请展开服务网络关联标签,选择添加新标签,然后输入标签键和标签值。

  3. 选择下一步

步骤 4:审核并创建

要使用控制台查看配置并创建服务
  1. 查看服务的配置。

  2. 如果需要修改服务配置的任何部分,请选择编辑

  3. 查看或编辑配置后,选择创建 VPC Lattice 服务

  4. 如果为服务指定了自定义域名,则必须在创建服务后配置 DNS 路由。有关更多信息,请参阅为 VPC Lattice 服务配置自定义域名

删除服务

要删除 VPC Lattice 服务,必须先删除该服务与任何服务网络的所有关联。如果删除服务,则与该服务相关的所有资源也会被删除,例如资源策略、验证策略、侦听器、侦听器规则和访问日志订阅。

要使用控制台删除服务
  1. 通过 https://console.aws.amazon.com/vpc/ 打开 Amazon VPC 控制台。

  2. 在导航窗格中的 VPC Lattice 下,选择服务

  3. 服务页面上,选择要删除的服务,然后依次选择操作删除服务

  4. 当系统提示进行确认时,选择 Delete(删除)

要删除服务,请使用 AWS CLI

使用 delete-service 命令。