本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
选择网络类型
ElastiCache 支持互联网协议版本 4 和 6(IPv4 和 IPv6),允许您将集群配置为接受:
只有 IPv4 连接,
只有 IPv6 连接,
将解为 IPv4 和 IPv6 连接(双堆栈堆栈将解为)
在 Nitro 系统
注意
不支持迁移在 IPV6 /双栈可用之前创建的集群。也不支持在新创建的集群上切换网络类型。
为网络类型配置子网
如果您在 Amazon VPC 中创建集群,则必须指定子网组。 ElastiCache 使用该子网组选择子网和该子网内的 IP 地址以与您的节点关联。 ElastiCache 群集需要一个同时分配 IPv4 和 IPv6 地址的双栈子网才能在双堆栈模式下运行,并且需要一个仅限 IPv6 的子网才能作为仅限 IPv6 运行。
使用双堆栈将解为
创建缓存集群并选择双堆栈作为网络类型时,需要指定 IP 发现类型,即 IPv4 或 IPv6。 ElastiCache 会将网络类型和 IP 发现默认为 IPv6,但可以更改。如果您使用 Auto Discovery,则仅将所选 IP 类型的 IP 地址返回给 Memcached 客户端。
为了保持与所有现有客户端的向后兼容性,引入了 IP 发现,它允许您在发现协议中选择要通告的 IP 类型(即 IPv4 或 IPv6)。虽然这将auto 发现限制为仅限于一种 IP 类型,但双栈仍然有益于自动发现,因为它允许在不停机的情况下从 IPv4 迁移(或回滚)到 IPv6 发现 IP 类型。
启用 TLS 的双堆栈 ElastiCache 集群
为 ElastiCache 集群启用 TLS 后,集群发现功能将config get cluster
返回主机名而不是 IP。然后使用主机名而不是 IP 来连接到 ElastiCache 集群并执行 TLS 握手。这意味着客户端不会受到 IP 发现参数的影响。对于启用 TLS 的集群,IP 发现参数对首选 IP 协议没有影响。相反,使用的 IP 协议将取决于客户端在解析 DNS 主机名时首选的 IP 协议。
有关在解析 DNS 主机名时如何配置 IP 协议首选项的示例,请参阅支持 TLS 的双堆栈 ElastiCache 集群。
使用 AWS Management Console
使用创建缓存集群时 AWS Management Console,在 “连接” 下选择网络类型,即 IPv4、IPv 6 或双堆栈。如果您选择双堆栈,则必须选择发现 IP 类型,即 IPv6 或 IPv4。
有关更多信息,请参阅 创建 Memcached 集群(控制台)。
使用 CLI
使用 CLI 创建缓存集群时,您可以使用create-cache-cluster命令并指定NetworkType
和IPDiscovery
参数:
对于 Linux、macOS 或 Unix:
aws elasticache create-cache-cluster \ --cache-cluster-id "cluster-test" \ --engine memcached \ --cache-node-type cache.m5.large \ --num-cache-nodes 1 \ --network-type dual_stack \ --ip-discovery ipv4
对于 Windows:
aws elasticache create-cache-cluster ^ --cache-cluster-id "cluster-test" ^ --engine memcached ^ --cache-node-type cache.m5.large ^ --num-cache-nodes 1 ^ --network-type dual_stack ^ --ip-discovery ipv4