创建 Valkey 或 Redis OSS 集群 - Amazon ElastiCache

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

创建 Valkey 或 Redis OSS 集群

以下示例展示了如何使用AWS 管理控制台、AWS CLI和 ElastiCache API 创建 Valkey 或 Redis OSS 集群。

ElastiCache 当你使用 Valkey 或 Redis OSS 引擎时,支持复制。要监控数据写入 Valkey 或 Redis OSS read/write 主集群与数据传播到只读辅助集群之间的延迟,请向集群 ElastiCache 添加一个特殊密钥。ElastiCacheMasterReplicationTimestamp此键为当前世界时(UTC)时间。因为 Valkey 或 Redis OSS 集群可能会在以后添加到复制组中,所以此键包含在所有 Valkey 或 Redis OSS 集群中,即使它们最初不是复制组的成员也会如此。有关复制组的更多信息,请参阅使用复制组时的高可用性

要创建 Valkey 或 Redis OSS(已禁用集群模式)集群,请按照 创建 Valkey(已禁用集群模式)集群(控制台) 中的步骤操作。

一旦您的集群状态变为可用,您就可以向 Amazon 授予 EC2 访问权限、连接集群并开始使用它。有关更多信息,请参阅步骤 3:授予对集群的访问权限步骤 4:连接到集群的节点

重要

一旦您的集群变为可用状态,您便需要为集群处于活动状态的每个小时或分钟支付费用(即使您并未主动使用集群)。要停止此集群产生的费用,您必须将其删除。请参阅删除中的集群 ElastiCache

如果运行的是 Redis OSS 3.2.4 或更高版本,您可以创建 Redis OSS(已启用集群模式)集群。Valkey 或 Redis OSS(已启用集群模式)集群支持将您的数据分配到 1 到 500 个分片(API/CLI:节点组)上,但存在一些限制。有关 Valkey 或 Redis OSS(已禁用集群模式)和 Valkey 或 Redis OSS(已启用集群模式)的对比,请参阅支持的引擎和版本

使用控制台创建 Valkey 或 Redis OSS(已启用集群模式)集群 ElastiCache
  1. 登录AWS 管理控制台并打开亚马逊 ElastiCache 控制台,网址为https://console.aws.amazon.com/elasticache/

  2. 从右上角的列表中,选择要启动此集群的AWS区域。

  3. 从导航窗格中,选择 Get started(入门)。

  4. 选择 Create VPC(创建 VPC)并按照创建虚拟私有云(VPC)中的步骤操作。

  5. 在 ElastiCache 控制面板页面上,选择创建集群,然后选择创建 Valkey 集群或创建 Redis OSS 集群。

  6. Cluster settings(集群设置)下,执行以下操作:

    1. 选择 Configure and create a new cluster(配置和创建新集群)。

    2. 对于 Cluster mode(集群模式),选择 Enabled(已启用)。

    3. 对于 Cluster info(集群信息),为 Name(名称)输入一个值。

    4. (可选)为 Description(描述)输入一个值。

  7. Location(位置)下:

    AWS Cloud
    1. 对于 AWS Cloud,我们建议您接受 Multi-AZ(多可用区)和 Auto-failover(自动失效转移)的默认设置。有关更多信息,请参阅使用多可用区 ElastiCache 最大限度地缩短 Redis OSS 的停机时间

    2. Cluster settings(集群设置)下

      1. 对于 Engine version(引擎版本),选择一个可用的引擎版本。

      2. 对于 Port(端口),使用默认端口 6379。如果您出于某个原因需要使用其他端口,请输入相应的端口号。

      3. 对于参数组,选择一个参数组或创建一个新参数组。参数组控制集群的运行时参数。有关参数组的更多信息,请参阅Valkey 和 Redis OSS 参数创建 ElastiCache 参数组

        注意

        当您选择要设置引擎配置值的参数组时,该参数组将应用于全局数据存储中的所有集群。在 Parameter Groups(参数组)页面上,是/否 Global(全局)属性指示参数组是否属于全局数据存储。

      4. 对于 Node type(节点类型),请选择向下箭头( Downward-pointing triangle icon, typically used to indicate a dropdown menu. )。在 Change node type(更改节点类型)对话框中,为所需节点类型选择 Instance family(实例系列)值。接着选择要用于此集群的节点类型,然后选择保存

        有关更多信息,请参阅 选择节点大小

        如果您选择 r6gd 节点类型,则系统会自动启用数据分层。有关更多信息,请参阅 ElastiCache 中的数据分层

      5. 对于分片数,选择要用于此 Valkey 或 Redis OSS(已启用集群模式)集群的分片(分区/节点组)数。

        对于某些版本的 Valkey 或 Redis OSS(已启用集群模式),您可以动态更改集群中的分片数量:

        • Redis OSS 3.2.10 及更高版本 – 如果您的集群运行 Redis OSS 3.2.10 或更高版本,则可以动态更改集群中的分片数量。有关更多信息,请参阅 扩缩 Valkey 或 Redis OSS(已启用集群模式)集群

        • 其他 Redis OSS 版本 – 如果您的集群正在运行 3.2.10 版之前的 Redis OSS 版本,则还有另一种方法。在这种情况下,要更改集群中的分片数量,请使用新分片数量创建一个新集群。有关更多信息,请参阅 从备份还原到新缓存

      6. 对于每个分片的副本数量,请选择每个分片中需要的只读副本节点数。

        Valkey 或 Redis OSS(已启用集群模式)存在以下限制。

        • 如果启用了多可用区,请确保每个分片至少有一个副本。

        • 使用控制台创建集群时,每个分片的副本数相同。

        • 每个分片的只读副本数固定,无法更改。如果您需要增加或减少各分片(API/CLI:节点组)的副本数,您必须使用新的副本数量创建一个新集群。有关更多信息,请参阅 教程:使用外部创建的备份为新的基于节点的集群制作种子

    3. Connectivity(连接)下

      1. 对于 Network type(网络类型),选择此集群将支持的 IP 版本。

      2. 对于子网组,请选择要应用于此集群的子网。 ElastiCache 使用该子网组选择子网和该子网内的 IP 地址以与您的节点关联。 ElastiCache 群集需要一个双堆栈子网 IPv4 并分配给它们 IPv6 的地址才能在双堆栈模式下运行,并且需要一个 IPv6仅限子网才能以-only模式运行。 IPv6

        创建新的子网组时,输入其所属的 VPC ID

        选择 Discovery IP type(发现 IP 类型)。仅返回所选协议的 IP 地址。

        有关更多信息,请参阅:

        如果您是 将 Local Zones 与 ElastiCache 结合使用,则必须创建或选择位于本地区域中的子网。

        有关更多信息,请参阅 子网和子网组

    4. 对于 Availability zone placements(可用区位置),您有两种选择:

      • 无偏好 — ElastiCache 选择可用区。

      • Specify availability zones(指定可用区)– 您为各集群指定可用区。

        如果您选择指定可用区,则需从列表中为各分片中的每个集群选择可用区。

      有关更多信息,请参阅 为 ElastiCache 选择区域和可用区

    5. 选择 Next(下一步)

    6. 高级 Valkey 设置高级 Redis OSS 设置下或

      1. 对于 Security(安全):

        1. 要加密您的数据,您有以下选项:

          • Encryption at rest(静态加密)– 对磁盘上存储的数据启用加密。有关更多信息,请参阅静态加密

            注意

            您可以选择提供不同的加密密钥,方法是选择 “客户托管AWS KMS 密钥” 并选择密钥。有关更多信息,请参阅使用AWS KMS 客户自主管理型密钥

          • Encryption in-transit(传输中加密)– 对传输中数据启用加密。有关更多信息,请参阅传输中加密。对于 Valkey 7.2 及更高版本或 Redis OSS 6.0 及更高版本,如果您启用传输中加密,则系统会提示您指定以下访问控制选项之一:

            • No Access Control(无访问控制)– 此选项为默认设置。这表示对用户访问集群的权限没有任何限制。

            • User Group Access Control List(用户组访问控制列表)– 选择具有集群访问权限的已定义用户组。有关更多信息,请参阅 使用控制台和 CLI 管理用户组

            • Redis AUTH 默认用户 – Valkey 或 Redis OSS 服务器的身份验证机制。有关更多信息,请参阅 AUTH

          • AUTH – Valkey 或 Redis OSS 服务器的身份验证机制。有关更多信息,请参阅 AUTH

          注意

          对于 Redis OSS 3.2.6 及更高版本(版本 3.2.10 除外),只能选择 AUTH。

        2. 对于安全组,选择要用于该集群的安全组。安全组 充当防火墙来控制对集群的网络访问。您可以为 VPC 使用默认安全组或创建新安全组。

          有关安全组的更多信息,请参阅 Amazon VPC 用户指南中的您的 VPC 的安全组

    7. 如果需要定期计划自动备份,请选择启用自动备份,然后输入每个自动备份在被自动删除前保留的天数。如果您不希望定期计划自动备份,请清除 Enable automatic backups 复选框。不论是哪种情况,您始终可以选择创建手动备份。

      有关备份和还原的更多信息,请参阅快照和还原

    8. (可选)指定维护时段。维护时段 是每周中 ElastiCache 为您的集群计划系统维护的时间,通常以小时为时间长度。您可以允许 ElastiCache 选择维护时段的日期和时间(No preference (无首选项)),或者自行选择日期、时间和持续时间(Specify maintenance window (指定维护时段))。如果您从列表中选择了指定维护时段,请为您的维护时段选择开始日期开始时间持续时间(以小时为单位)。所有时间均为 UCT 时间。

      有关更多信息,请参阅 管理 ElastiCache 集群维护

    9. (可选)对于 Logs(日志)

      • Log format(日志格式)下,选择 Text(文本)JSON

      • 目标类型下,选择CloudWatch 日志Kinesis Fire hose。

      • 在 “日志目标” 下,选择 “新建” 并输入您的 CloudWatch 日志日志组名称或 Firehose 直播名称,或者选择 “选择现有”,然后选择您的 CloudWatch 日志日志组名称或 Firehose 直播名称,

    10. 对于标签,为了帮助您管理集群和其他 ElastiCache 资源,您可以以标签的形式为每个资源分配自己的元数据。有关更多信息,请参阅 为资源添加 ElastiCache 标签

    11. 选择 Next(下一步)。

    12. 查看您的所有输入和选择,然后进行任意所需的更正。当您准备好后,选择 Create(创建)。

    On premises
    1. 对于 On premises(本地),我们建议您保留 Auto-failover(自动失效转移)为启用状态。有关更多信息,请参阅使用多可用区 ElastiCache 最大限度地缩短 Redis OSS 的停机时间

    2. 按照使用 Outposts 中的步骤操作。

要使用 ElastiCache API 或AWS CLI代替 ElastiCache 控制台创建等效项,请参阅以下内容:

一旦集群的状态变为可用,您就可以授予对其的 EC2 访问权限、连接到集群并开始使用它。有关更多信息,请参阅步骤 3:授予对集群的访问权限步骤 4:连接到集群的节点

重要

一旦您的集群变为可用状态,您便需要为集群处于活动状态的每个小时或分钟支付费用(即使您并未主动使用集群)。要停止此集群产生的费用,您必须将其删除。请参阅 删除中的集群 ElastiCache

要使用创建集群AWS CLI,请使用create-cache-cluster命令。

重要

一旦您的集群变为可用状态,您便需要为集群处于活动状态的每个小时或分钟支付费用(即使您并未主动使用集群)。要停止此集群产生的费用,您必须将其删除。请参阅删除中的集群 ElastiCache

创建 Redis OSS(已禁用集群模式)集群(CLI)

例 – 一个无只读副本的 Valkey 或 Redis OSS(已禁用集群模式)集群

下面的 CLI 代码将创建一个无副本的 Valkey 或 Redis OSS(已禁用集群模式)集群。

注意

使用 r6gd 系列的节点类型创建集群时,必须传递 data-tiering-enabled 参数。

对于 Linux、macOS 或 Unix:

aws elasticache create-cache-cluster \ --cache-cluster-id my-cluster \ --cache-node-type cache.r4.large \ --engine redis \ --num-cache-nodes 1 \ --cache-parameter-group default.redis6.x \ --snapshot-arns arn:aws:s3:::amzn-s3-demo-bucket/snapshot.rdb

对于 Windows:

aws elasticache create-cache-cluster ^ --cache-cluster-id my-cluster ^ --cache-node-type cache.r4.large ^ --engine redis ^ --num-cache-nodes 1 ^ --cache-parameter-group default.redis6.x ^ --snapshot-arns arn:aws:s3:::amzn-s3-demo-bucket/snapshot.rdb

创建 Valkey 或 Redis OSS(已启用集群模式)集群(AWS CLI)

Valkey 或 Redis OSS(已启用集群模式)集群(API/CLI:复制组)不能使用 create-cache-cluster 操作创建。要创建 Valkey 或 Redis OSS(已启用集群模式)集群(API/CLI:复制组),请参阅从头开始创建 Valkey 或 Redis OSS(已启用集群模式)复制组(AWS CLI)

有关更多信息,AWS CLI请参阅 ElastiCache 参考主题create-replication-group

要使用 ElastiCache API 创建集群,请使用CreateCacheCluster操作。

重要

一旦您的集群变为可用状态,您便需要为集群处于活动状态的每个小时或分钟支付费用(即使您并未使用集群)。要停止此集群产生的费用,您必须将其删除。请参阅删除中的集群 ElastiCache

创建 Valkey 或 Redis OSS(已禁用集群模式)集群 (ElastiCache API)

以下代码创建一个 Valkey 或 Redis OSS(已禁用集群模式)集群 (ElastiCache API)。

添加换行符以便于阅读。

https://elasticache.us-west-2.amazonaws.com/ ?Action=CreateCacheCluster &CacheClusterId=my-cluster &CacheNodeType=cache.r4.large &CacheParameterGroup=default.redis3.2 &Engine=redis &EngineVersion=3.2.4 &NumCacheNodes=1 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &SnapshotArns.member.1=arn%3Aaws%3As3%3A%3A%3AmyS3Bucket%2Fdump.rdb &Timestamp=20150508T220302Z &Version=2015-02-02 &X-Amz-Algorithm=&AWS;4-HMAC-SHA256 &X-Amz-Credential=<credential> &X-Amz-Date=20150508T220302Z &X-Amz-Expires=20150508T220302Z &X-Amz-SignedHeaders=Host &X-Amz-Signature=<signature>

在 Valkey 或 Redis OSS 中创建集群(已启用集群模式)(ElastiCache API)

Valkey 或 Redis OSS(已启用集群模式)集群(API/CLI:复制组)不能使用 CreateCacheCluster 操作创建。要创建 Valkey 或 Redis OSS(已启用集群模式)集群(API/CLI:复制组),请参阅从头开始在 Valkey 或 Redis OSS(已启用集群模式)中创建复制组(ElastiCache API)

有关更多信息,请参阅 ElastiCache API 参考主题CreateReplicationGroup