设置 ElastiCache - Amazon ElastiCache
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

设置 ElastiCache

要使用 ElastiCache Web 服务,请按照以下步骤操作。

注册 Amazon Web Services 账户

如果您还没有 Amazon Web Services 账户,请完成以下步骤来创建一个。

注册 Amazon Web Services 账户
  1. 打开 https://portal.aws.amazon.com/billing/signup

  2. 按照屏幕上的说明操作。

    在注册时,将接到电话或收到短信,要求使用电话键盘输入一个验证码。

    当您注册 Amazon Web Services 账户 时,系统将会创建一个 Amazon Web Services 账户根用户。根用户有权访问该账户中的所有 Amazon Web Services 服务和资源。作为最佳安全实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务

注册过程完成后,Amazon 会向您发送一封确认电子邮件。在任何时候,您都可以通过转至 https://aws.amazon.com/ 并选择我的账户来查看当前的账户活动并管理您的账户。

保护 IAM 用户

注册 Amazon Web Services 账户 后,启用多重身份验证(MFA)保护您的管理用户。有关说明,请参阅《IAM 用户指南》中的 为 IAM 用户启用虚拟 MFA 设备(控制台)

要授予其他用户访问您的 Amazon Web Services 账户资源的权限,请创建 IAM 用户。为了保护您的 IAM 用户,请启用 MFA 并仅向 IAM 用户授予执行任务所需的权限。

有关创建和保护 IAM 用户的更多信息,请参阅《IAM 用户指南》中的以下主题:

授权以编程方式访问

如果用户需要在 Amazon Web Services 管理控制台之外与 Amazon 交互,则需要编程式访问权限。Amazon API 和 Amazon Command Line Interface 需要访问密钥。可能的话,创建临时凭证,该凭证由一个访问密钥 ID、一个秘密访问密钥和一个指示凭证何时到期的安全令牌组成。

要向用户授予编程式访问权限,请选择以下选项之一。

哪个用户需要编程式访问权限? 目的 方式
IAM 使用短期凭证签署对 Amazon CLI 或 Amazon API 的编程式请求(直接或使用 Amazon SDK)。 按照《IAM 用户指南》将临时凭证用于 Amazon 资源中的说明进行操作。
IAM

(不推荐使用)

使用长期凭证签署对 Amazon CLI 或 Amazon API 的编程式请求(直接或使用 Amazon SDK)。
按照《IAM 用户指南》管理 IAM 用户的访问密钥中的说明进行操作。
相关主题:

设置权限(仅限新的 ElastiCache 用户)

要提供访问权限,请为您的用户、组或角色添加权限:

Amazon ElastiCache 会代表您创建并使用服务相关角色以预置资源并访问其他 Amazon 资源和服务。要使 ElastiCache 为您创建服务相关角色,请使用名为 AmazonElastiCacheFullAccess 的 Amazon 托管式策略。此角色预配置了该服务您代表您创建服务相关角色所需的权限。

您可能决定不使用默认策略,而是使用自定义托管策略。在这种情况下,请确保您具有调用 iam:createServiceLinkedRole 的权限或创建了 ElastiCache 服务相关角色。

有关更多信息,请参阅下列内容:

设置 EC2

您需要设置一个 EC2 实例,并从该实例连接到缓存。

  • 如果您还没有 EC2 实例,请在此处了解如何设置 EC2 实例:开始使用 Amazon EC2

  • 您的 EC2 实例必须与缓存位于同一 VPC,并具有相同的安全组设置。默认情况下,Amazon ElastiCache 会在您的默认 VPC 中创建缓存并使用默认安全组。在学习本教程时,请确保您的 EC2 实例位于默认 VPC 中并且具有默认安全组。

授予从 Amazon VPC 安全组到您的缓存的网络访问权限

ElastiCache 基于节点的集群使用端口 6379 来执行 Valkey 和 Redis OSS 命令,而 ElastiCache 无服务器同时使用端口 6379 和端口 6380。为了从您的 EC2 实例成功连接并执行 Valkey 或 Redis OSS 命令,您的安全组必须根据需要允许访问这些端口。

ElastiCache for Memcached 使用 11211 和 11212 端口接受 Memcached 命令。为了从您的 EC2 实例成功连接并执行 Memcached 命令,您的安全组必须允许访问这些端口。

  1. 登录到 Amazon Command Line Interface 并打开 Amazon EC2 控制台。

  2. 在导航窗格中的 Network & Security 下,选择 Security Groups

  3. 从安全组列表中,为 Amazon VPC 选择安全组。除非创建安全组供 ElastiCache 使用,否则此安全组将命名为 default

  4. 选择“入站”选项卡,然后:

    1. 选择 Edit(编辑)。

    2. 选择添加规则

    3. 在“类型”列中,选择自定义 TCP 规则

    4. 如果使用 Valkey 或 Redis OSS,则在端口范围框中键入 6379

      如果使用 Memcached,则在端口范围框中键入 11211

    5. 框中,选择端口范围为(0.0.0.0/0)的任何位置,这样,从您 Amazon VPC 中启动的任何 Amazon EC2 实例都可以连接到您的缓存。

    6. 如果您使用的是 ElastiCache 无服务器,请选择添加规则添加另一条规则。

    7. Type 列中,选择 Custom TCP rule

    8. 如果使用 ElastiCache for Redis OSS,则在端口范围框中键入 6380

      如果使用 ElastiCache for Memcached,则在端口范围框中键入 11212

    9. 框中,选择端口范围为(0.0.0.0/0)的任何位置,这样,从您 Amazon VPC 中启动的任何 Amazon EC2 实例都可以连接到您的缓存。

    10. 选择保存

下载并设置命令行访问权限

下载并安装 valkey-cli 实用工具。

如果您使用 ElastiCache for Valkey,可能会发现 valkey-cli 实用工具非常有用。如果您使用带有 redis-cli 的 ElastiCache for Redis OSS,请考虑切换到 valkey-cli,因为它也适用于 Redis OSS。

  1. 使用您选择的连接实用工具连接到 Amazon EC2 实例。有关如何连接到 Amazon EC2 实例的说明,请参阅 Amazon EC2 入门指南

  2. 根据您的设置运行相应命令,下载并安装 valkey-cli 实用工具。

    Amazon Linux 2

    sudo amazon-linux-extras install epel -y sudo yum install gcc jemalloc-devel openssl-devel tcl tcl-devel -y wget https://github.com/valkey-io/valkey/archive/refs/tags/8.0.0.tar.gz tar xvzf valkey-8.0.0.tar.gz cd valkey-8.0.0 make BUILD_TLS=yes
注意
  • 当您安装 redis6 程序包时,它会安装 redis6-cli 并默认提供加密支持。

  • 安装 valkey-cli 或 redis-cli 时,务必为 TLS 提供生成支持。只有启用 TLS 后,才能访问 ElastiCache 无服务器。

  • 如果您要连接到未加密的集群,则不需要 Build_TLS=yes 选项。