自动连接 EC2 实例和 ElastiCache 缓存 - Amazon ElastiCache
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

自动连接 EC2 实例和 ElastiCache 缓存

您可以使用 ElastiCache 控制台来简化在 Amazon Elastic Compute Cloud(Amazon EC2)实例和 ElastiCache 缓存之间设置连接的过程。通常,缓存位于私有子网中,EC2 实例位于 VPC 内的公有子网中。您可以在 EC2 实例上使用 SQL 客户端连接到 ElastiCache 缓存。EC2 实例还可以运行访问私有 ElastiCache 缓存的 Web 服务器或应用程序。

自动连接 ElastiCache 缓存和 EC2 实例

自动连接 EC2 实例

当您在 EC2 实例和 ElastiCache 缓存之间设置连接时,ElastiCache 会自动为您的 EC2 实例和 ElastiCache 缓存配置 VPC 安全组。

以下是连接 EC2 实例和 ElastiCache 缓存的要求:

  • EC2 实例必须与 ElastiCache 缓存位于同一 VPC 中。

    如果同一 VPC 中不存在任何 EC2 实例,则控制台将提供创建一个此类实例的链接。

  • 设置连接的用户必须具有执行以下 Amazon EC2 操作的权限。这些权限通常在创建 EC2 账户时添加。有关 EC2 权限的更多信息,请参阅授予针对 Amazon EC2 资源的必需权限

    • ec2:AuthorizeSecurityGroupEgress

    • ec2:AuthorizeSecurityGroupIngress

    • ec2:CreateSecurityGroup

    • ec2:DescribeInstances

    • ec2:DescribeNetworkInterfaces

    • ec2:DescribeSecurityGroups

    • ec2:ModifyNetworkInterfaceAttribute

    • ec2:RevokeSecurityGroupEgress

当您设置与 EC2 实例的连接时,ElastiCache 会根据与 ElastiCache 缓存和 EC2 实例关联的安全组的当前配置采取操作,如下表所述。

当前 ElastiCache 安全组配置 当前 EC2 安全组配置 ElastiCache 操作

有一个或多个安全组与 ElastiCache 缓存(名称与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配)关联。尚未修改与此模式匹配的安全组。该安全组只具有一条以 EC2 实例的 VPC 安全组作为源的入站规则。

有一个或多个安全组与 EC2 实例(名称与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配)关联。尚未修改与此模式匹配的安全组。该安全组只有一条以 ElastiCache 缓存的 VPC 安全组作为源的出站规则。

ElastiCache 不会执行任何操作。

已在 EC2 实例和 ElastiCache 缓存之间自动配置了连接。由于 EC2 实例和 ElastiCache 缓存之间已经存在连接,因此不会修改安全组。

以下任一条件适用:

  • 没有与 ElastiCache 缓存(名称与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配)关联的安全组。

  • 有一个或多个安全组与 ElastiCache 缓存(名称与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配)关联。但是,ElastiCache 不能使用这些安全组中的任何一个来连接 EC2 实例。如果安全组没有一条以 EC2 实例的 VPC 安全组作为源的入站规则,则 ElastiCache 无法使用该安全组。ElastiCache 也无法使用经过修改的安全组。修改示例包括添加规则或更改现有规则的端口。

以下任一条件适用:

  • 没有与 EC2 实例(其名称与模式 ec2-elasticache-${ec2InstanceId}:${cacheId} 匹配)关联的安全组。

  • 有一个或多个安全组与 EC2 实例(名称与模式 ec2-elasticache-${ec2InstanceId}:${cacheId} 匹配)关联。但是,ElastiCache 不能使用这些安全组中的任何一个来连接 ElastiCache 缓存。如果安全组没有一条以 ElastiCache 缓存的 VPC 安全组作为源的出站规则,则 ElastiCache 无法使用该安全组。ElastiCache 也无法使用经过修改的安全组。

ELC action: create new security groups

有一个或多个安全组与 ElastiCache 缓存(名称与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配)关联。尚未修改与此模式匹配的安全组。该安全组只具有一条以 EC2 实例的 VPC 安全组作为源的入站规则。

有一个或多个安全组与 EC2 实例(名称与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配)关联。但是,ElastiCache 不能使用这些安全组中的任何一个来连接 ElastiCache 缓存。如果安全组没有一条以 ElastiCache 缓存的 VPC 安全组作为源的出站规则,则 ElastiCache 无法使用该安全组。ElastiCache 也无法使用经过修改的安全组。

ELC action: create new security groups

有一个或多个安全组与 ElastiCache 缓存(名称与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配)关联。尚未修改与此模式匹配的安全组。该安全组只具有一条以 EC2 实例的 VPC 安全组作为源的入站规则。

存在用于连接的有效 EC2 安全组,但它与 EC2 实例不关联。此安全组的名称与模式 ec2-elasticache-${ec2InstanceId}:${cacheId} 相匹配。尚未修改它。它只有一条以 ElastiCache 缓存的 VPC 安全组作为源的出站规则。

ELC action: associate EC2 security group

以下任一条件适用:

  • 没有与 ElastiCache 缓存(名称与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配)关联的安全组。

  • 有一个或多个安全组与 ElastiCache 缓存(名称与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配)关联。但是,ElastiCache 不能使用这些安全组中的任何一个来连接 EC2 实例。如果安全组没有一条以 EC2 实例的 VPC 安全组作为源的入站规则,则 ElastiCache 无法使用该安全组。ElastiCache 也无法使用经过修改的安全组。

有一个或多个安全组与 EC2 实例(名称与模式 ec2-elasticache-${ec2InstanceId}:${cacheId} 匹配)关联。尚未修改与此模式匹配的安全组。该安全组只有一条以 ElastiCache 缓存的 VPC 安全组作为源的出站规则。

ELC action: create new security groups
ElastiCache 操作:创建新的安全组

ElastiCache 会执行以下操作:

  • 创建与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配的新安全组。该安全组具有一条以 EC2 实例的 VPC 安全组作为源的入站规则。该安全组与 ElastiCache 缓存相关联,并允许 EC2 实例访问此缓存。

  • 创建与模式 elasticache-ec2-${cacheId}:${ec2InstanceId} 匹配的新安全组。该安全组具有一条以 ElastiCache 缓存的 VPC 安全组作为目标的出站规则。该安全组与 EC2 实例相关联,并允许 EC2 实例向 ElastiCache 缓存发送流量。

ElastiCache 操作:关联 EC2 安全组

ElastiCache 会将有效的现有 EC2 安全组与 EC2 实例关联起来。该安全组允许 EC2 实例向 ElastiCache 缓存发送流量。

查看连接的计算资源

您可以使用 Amazon Web Services 管理控制台查看连接到 ElastiCache 缓存的计算资源。显示的资源包括自动设置的计算资源连接。例如,您可以通过手动向与缓存关联的 VPC 安全组添加规则来允许计算资源访问该缓存。这些资源不会出现在连接的计算资源列表中。

要列出计算资源,必须满足自动连接 EC2 实例和 ElastiCache 缓存时相同的条件。

查看连接到 ElastiCache 缓存的计算资源
  1. 登录 Amazon Web Services 管理控制台并打开 ElastiCache 控制台

  2. 在导航窗格中,选择缓存,然后选择 Valkey 或 Redis OSS 缓存。

  3. 连接和安全性选项卡上,查看设置计算连接中的计算资源。

    连接的计算资源。