

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

# 开始使用 MemoryDB
<a name="getting-started"></a>

此练习将指导您完成使用 MemoryDB 管理控制台创建、授予访问权限、连接并最终删除 MemoryDB 集群的步骤。

**注意**  
在此次练习中，我们建议您在创建集群时使用**轻松创建**选项，并在进一步探索 MemoryDB 的功能后再尝试其他两个选项。

**Topics**
+ [

## 步骤 1：设置
](#set-up)
+ [

## 步骤 2：创建集群
](#getting-started.createcluster)
+ [

## 步骤 3：授予对集群的访问权限
](#getting-started.authorizeaccess)
+ [

## 步骤 4：连接到集群
](#getting-startedclusters.connecttonode)
+ [

## 步骤 5：删除集群
](#clusters.delete)
+ [

## 后续步骤
](#getting-started.wheregofromhere)

## 步骤 1：设置
<a name="set-up"></a>

下面，您可以找到描述开始使用 MemoryDB 时必须采取的一次性操作的主题。

### 注册获取 AWS 账户
<a name="sign-up-for-aws"></a>

如果您没有 AWS 账户，请完成以下步骤来创建一个。

**报名参加 AWS 账户**

1. 打开[https://portal.aws.amazon.com/billing/注册。](https://portal.aws.amazon.com/billing/signup)

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

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

   当您注册时 AWS 账户，就会创建*AWS 账户根用户*一个。根用户有权访问该账户中的所有 AWS 服务 和资源。作为最佳安全实践，请为用户分配管理访问权限，并且只使用根用户来执行[需要根用户访问权限的任务](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)。

AWS 注册过程完成后会向您发送一封确认电子邮件。您可以随时前往 [https://aws.amazon.com/](https://aws.amazon.com/)并选择 “**我的账户”，查看您当前的账户活动并管理您的账户**。

### 创建具有管理访问权限的用户
<a name="create-an-admin"></a>

注册后，请保护您的安全 AWS 账户 AWS 账户根用户 AWS IAM Identity Center，启用并创建管理用户，这样您就不会使用 root 用户执行日常任务。

**保护你的 AWS 账户根用户**

1.  选择 **Root 用户**并输入您的 AWS 账户 电子邮件地址，以账户所有者的身份登录。[AWS 管理控制台](https://console.aws.amazon.com/)在下一页上，输入您的密码。

   要获取使用根用户登录方面的帮助，请参阅《AWS 登录 用户指南》**中的 [Signing in as the root user](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial)。

1. 为您的根用户启用多重身份验证（MFA）。

   有关说明，请参阅 I [A *M* 用户指南中的为 AWS 账户 根用户启用虚拟 MFA 设备（控制台）](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html)。

**创建具有管理访问权限的用户**

1. 启用 IAM Identity Center。

   有关说明，请参阅**《AWS IAM Identity Center 用户指南》中的[启用 AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html)。

1. 在 IAM Identity Center 中，为用户授予管理访问权限。

   有关使用 IAM Identity Center 目录 作为身份源的教程，请参阅《[用户*指南》 IAM Identity Center 目录中的使用默认设置配置AWS IAM Identity Center 用户*访问权限](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html)。

**以具有管理访问权限的用户身份登录**
+ 要使用您的 IAM Identity Center 用户身份登录，请使用您在创建 IAM Identity Center 用户时发送到您的电子邮件地址的登录 URL。

  有关使用 IAM Identity Center 用户[登录的帮助，请参阅*AWS 登录 用户指南*中的登录 AWS 访问门户](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html)。

**将访问权限分配给其他用户**

1. 在 IAM Identity Center 中，创建一个权限集，该权限集遵循应用最低权限的最佳做法。

   有关说明，请参阅《AWS IAM Identity Center 用户指南》**中的 [Create a permission set](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html)。

1. 将用户分配到一个组，然后为该组分配单点登录访问权限。

   有关说明，请参阅《AWS IAM Identity Center 用户指南》**中的 [Add groups](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html)。

### 授权以编程方式访问
<a name="memorydb-set-up-access-key"></a>

如果用户想在 AWS 外部进行交互，则需要编程访问权限 AWS 管理控制台。授予编程访问权限的方式取决于正在访问的用户类型 AWS。

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


****  

| 哪个用户需要编程式访问权限？ | 目的 | 方式 | 
| --- | --- | --- | 
| IAM | （推荐）使用控制台凭证作为临时凭证，签署对 AWS CLI AWS SDKs、或的编程请求 AWS APIs。 |  按照您希望使用的界面的说明进行操作。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/memorydb/latest/devguide/getting-started.html)  | 
|  人力身份 （在 IAM Identity Center 中管理的用户）  | 使用临时证书签署向 AWS CLI AWS SDKs、或发出的编程请求 AWS APIs。 |  按照您希望使用的界面的说明进行操作。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/memorydb/latest/devguide/getting-started.html)  | 
| IAM | 使用临时证书签署向 AWS CLI AWS SDKs、或发出的编程请求 AWS APIs。 | 按照 IAM 用户指南中的将[临时证书与 AWS 资源配合使用](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html)中的说明进行操作。 | 
| IAM | （不推荐使用）使用长期凭证签署向 AWS CLI AWS SDKs、或发出的编程请求 AWS APIs。 |  按照您希望使用的界面的说明进行操作。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/memorydb/latest/devguide/getting-started.html)  | 

**相关主题:**
+ *IAM 用户指南*中的[什么是 IAM？](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)
+ AWS *AWS 一般参考*中的@@ [安全证书](https://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)。

### 设置权限（仅限新的 MemoryDB 用户）
<a name="memorydb-set-up-permissions"></a>

要提供访问权限，请为您的用户、组或角色添加权限：
+ 中的用户和群组 AWS IAM Identity Center：

  创建权限集合。按照《AWS IAM Identity Center 用户指南》**中[创建权限集](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html)的说明进行操作。
+ 通过身份提供商在 IAM 中托管的用户：

  创建适用于身份联合验证的角色。按照《IAM 用户指南》**中[针对第三方身份提供商创建角色（联合身份验证）](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html)的说明进行操作。
+ IAM 用户：
  + 创建您的用户可以担任的角色。按照《IAM 用户指南》**中[为 IAM 用户创建角色](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html)的说明进行操作。
  + （不推荐使用）将策略直接附加到用户或将用户添加到用户组。按照《IAM 用户指南》**中[向用户添加权限（控制台）](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console)中的说明进行操作。

MemoryDB 会代表您创建并使用服务相关角色以预配置资源并访问其他 AWS 资源和服务。要让 MemoryDB 为您创建服务相关角色，请使用名为的托 AWS管策略。`AmazonMemoryDBFullAccess`此角色预配置了该服务您代表您创建服务相关角色所需的权限。

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

有关更多信息，请参阅下列内容：
+ [创建新策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)（IAM）
+ [适用于 MemoryDB 的AWS托管（预定义）策略](security-iam-awsmanpol.md#iam.identitybasedpolicies.predefinedpolicies)
+ [使用 MemoryDB 的服务相关角色](using-service-linked-roles.md)

### 下载和配置 AWS CLI
<a name="memorydb-install-configure-cli"></a>

可在以下 AWS CLI 网址获得[：http://aws.amazon.com/cli](https://aws.amazon.com/cli)。它在 Windows、MacOS 和 Linux 上运行。下载后 AWS CLI，请按照以下步骤对其进行安装和配置：

1. 转到 [AWS Command Line Interface 用户指南](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)。

1. 按照[安装 AWS CLI 和配置 CL AWS I](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) [的](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html)说明进行操作。

## 步骤 2：创建集群
<a name="getting-started.createcluster"></a>

在创建用于生产使用的集群之前，您显然需要考虑如何配置集群以满足您的业务需求。这些问题在 [准备集群](clusters.prepare.md) 部分中解决。就本入门练习而言，您可以在其适用时接受默认配置值。

您所创建的集群将是活动的，不会在沙盒中运行。您需要为实例支付标准的 MemoryDB 使用费，直到您删除该实例。如果您一鼓作气完成此处描述的练习并在使用完毕后删除集群，则产生的全部费用将非常少（通常不到一美元）。有关 MemoryDB 使用费率的更多信息，请参阅 [MemoryDB](https://aws.amazon.com/memorydb/)。

在虚拟私有云（VPC）中基于 Amazon VPC 服务启动集群。

### 创建 MemoryDB 集群
<a name="clusters.create"></a>

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

#### 创建集群（控制台）
<a name="clusters.createclusters.viewdetails.cluster"></a>

**使用 MemoryDB 控制台创建集群**

1. 登录 AWS 管理控制台 并打开 MemoryDB 控制台，网址为。[https://console.aws.amazon.com/memorydb/](https://console.aws.amazon.com/memorydb/)

1. 在左侧导航窗格中，选择**集群**，然后选择**创建**。

------
#### [ Easy create ]

1. 填写 **Configuration (配置)** 部分。这将配置集群的节点类型和默认配置。从以下选项中选择所需的适当内存大小和网络性能：
   + 生产
   + 开发/测试
   + 演示

1. 完成**集群信息**部分。

   1. 在**名称**中，输入集群的名称。

      集群命名约束如下：
      + 必须包含 1 – 40 个字母数字字符或连字符。
      + 必须以字母开头。
      + 不能包含两个连续连字符。
      + 不能以连字符结束。

   1. 在**描述** 框中，输入此集群的描述。

1. 完成**子网组**部分：

   1. 对于**子网组**，创建新的子网组，或从可用列表中选择要应用于此集群的现有子网组。如果要创建一个新的：
     + 输入**名称**
     + 输入**描述**
     + 如果启用了多可用区，则子网组必须至少包含两个位于不同可用区中的子网。有关更多信息，请参阅 [子网和子网组](subnetgroups.md)。
     + 如果要创建新的子网组但不具有现有 VPC，则系统会要求您创建 VPC。有关更多信息，请参阅《Amazon VPC 用户指南》**中的[什么是 Amazon VPC？](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html)。

1. 对于**向量搜索**，您可以**启用向量搜索功能**来存储向量嵌入和执行向量搜索。请注意，这将修复引擎版本兼容性、**参数组**和**分片**的值。有关更多信息，请参阅 [向量搜索](vector-search.md)。

1. **查看默认设置**：

   使用**轻松创建**时，其余集群设置均为默认设置。请注意，其中一些设置可以在创建后更改，如**创建后可编辑**所示。

1. 对于**标签**，您可以选择应用标签来搜索和筛选集群或跟踪 AWS 成本。

1. 查看您的所有输入和选择，然后进行任意所需的更正。准备就绪后，请选择**创建**启动集群或选择**取消**取消操作。

当您的集群状态为 *available* 时，您可向其授予 EC2 访问权限，连接到集群并开始使用它。有关更多信息，请参阅 [步骤 3：授予对集群的访问权限](#getting-started.authorizeaccess)。

**重要**  
一旦您的集群变为可用状态，您便需要为集群处于活动状态的每个小时或分钟支付费用（即使您并未主动使用集群）。要停止此集群产生的费用，您必须将其删除。请参阅[步骤 5：删除集群](#clusters.delete)。

------
#### [ Create new cluster ]

1. 完成**集群信息**部分。

   1. 在**名称**中，输入集群的名称。

      集群命名约束如下：
      + 必须包含 1 – 40 个字母数字字符或连字符。
      + 必须以字母开头。
      + 不能包含两个连续连字符。
      + 不能以连字符结束。

   1. 在**描述** 框中，输入此集群的描述。

1. 完成**子网组**部分：

   1. 对于**子网组**，创建新的子网组，或从可用列表中选择要应用于此集群的现有子网组。如果要创建一个新的：
     + 输入**名称**
     + 输入**描述**
     + 如果启用了多可用区，则子网组必须至少包含两个位于不同可用区中的子网。有关更多信息，请参阅 [子网和子网组](subnetgroups.md)。
     + 如果要创建新的子网组但不具有现有 VPC，则系统会要求您创建 VPC。有关更多信息，请参阅《Amazon VPC 用户指南》**中的[什么是 Amazon VPC？](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html)。

1. 完成**集群设置**部分：

   1. 对于**启用向量搜索功能**，您可以启用此功能来存储向量嵌入和执行向量搜索。请注意，这将修复引擎版本兼容性、**参数组**和**分片**的值。有关更多信息，请参阅 [向量搜索](vector-search.md)。

   1. 对于引擎版本兼容性，请接受默认值。例如，在 Valkey 中，默认值为 7.2.6，在 Redis OSS 中，默认值为 `6.2`。

   1. 对于**端口**，请接受默认端口 6379，或者，如果您出于某个原因需要使用其他端口，请输入相应的端口号。

   1. 对于**参数组**，如果您启用了向量搜索，请使用 `default.memorydb-valkey7.search`。否则，对于 Valkey，请接受 `default.memorydb-valkey7` 参数组。

      参数组控制集群的运行时参数。有关参数组的更多信息，请参阅 [引擎特定参数](parametergroups.redis.md)。

      

   1. 对于**节点类型**，请为所需节点类型（及其关联的内存大小）选择一个值。

      如果您选择 r6gd 系列的节点类型，系统会自动启用数据分层，从而在内存和 SSD 之间拆分数据存储。有关更多信息，请参阅 [数据分层](data-tiering.md)。

   1. 对于**分片数**，选择要用于此集群的分片数。为实现更高的集群可用性，我们建议您至少添加 2 个分片。

      您可以动态更改集群中的分片数量。有关更多信息，请参阅 [扩展 MemoryDB 集群](scaling-cluster.md)。

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

      存在以下限制：
      + 如果启用了多可用区，请确保每个分片至少有一个副本。
      + 使用控制台创建集群时，每个分片的副本数相同。

   1. 选择**下一步**。

   1. 完成**高级设置**部分：

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

         有关安全组的更多信息，请参阅 *Amazon VPC 用户指南*中的[您的 VPC 的安全组](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html)。

      1. 要加密您的数据，您可以选择以下选项：
         + **Encryption at rest（静态加密）**– 对磁盘上存储的数据启用加密。有关更多信息，请参阅[静态加密](https://docs.aws.amazon.com/memorydb/latest/devguide/at-rest-encryption.html)。
**注意**  
您可以选择提供默认加密密钥以外的加密密钥，方法是选择**客户管理的 KM AWS S 密钥**并选择密钥。
         + **Encryption in-transit（传输中加密）**– 对传输中数据启用加密。如果您选择不加密，则系统将使用默认用户创建一个名为“开放访问”的开放访问控制列表。有关更多信息，请参阅 [使用访问控制列表对用户进行身份验证 () ACLs](clusters.acls.md)。

      1. 对于**快照**，请选择性地指定快照保留期和快照时段。默认情况下，**启用自动快照**处于预先选中状态。

      1. 对于**维护时段**，请选择性地指定维护时段。*维护时段*是每周中 MemoryDB 为您的集群计划系统维护的时间，通常以小时为时间长度。您可以允许 MemoryDB 选择维护时段的日期和时间（*无首选项*），或者自行选择日期、时间和持续时间（*指定维护时段*）。如果您从列表中选择*指定维护时段*，请选择维护时段的*起始日*、*起始时间*和*持续时间*（以小时为单位）。所有时间均为 UCT 时间。

         有关更多信息，请参阅 [管理维护](maintenance-window.md)。

      1. 对于 **通知**，选择现有 Amazon Simple Notiﬁcation Service (Amazon SNS) 主题，或选择手动 ARN 输入，然后输入主题的 Amazon 资源名称（ARN）。Amazon SNS 允许您向联网的智能设备推送通知。默认设置为禁用通知。有关更多信息，请参阅 [https://aws.amazon.com/sns/](https://aws.amazon.com/sns/)。

      1. 对于**标签**，您可以选择应用标签来搜索和筛选集群或跟踪 AWS 成本。

   1. 查看您的所有输入和选择，然后进行任意所需的更正。准备就绪后，请选择**创建**启动集群或选择**取消**取消操作。

   当您的集群状态为 *available* 时，您可向其授予 EC2 访问权限，连接到集群并开始使用它。有关更多信息，请参阅 [步骤 3：授予对集群的访问权限](#getting-started.authorizeaccess)。
**重要**  
一旦您的集群变为可用状态，您便需要为集群处于活动状态的每个小时或分钟支付费用（即使您并未主动使用集群）。要停止此集群产生的费用，您必须将其删除。请参阅[步骤 5：删除集群](#clusters.delete)。

------
#### [ Restore from snapshots ]

在**快照源**下，选择要从中迁移数据的源快照。有关更多信息，请参阅 [快照和还原](snapshots.md)。

**注意**  
如果您希望新集群启用向量搜索，则源快照还必须启用向量搜索。

目标集群默认使用源集群的设置。（可选）您可以更改目标集群上的以下设置：

1. **集群信息**

   1. 在**名称**中，输入集群的名称。

      集群命名约束如下：
      + 必须包含 1 – 40 个字母数字字符或连字符。
      + 必须以字母开头。
      + 不能包含两个连续连字符。
      + 不能以连字符结束。

   1. 在**描述** 框中，输入此集群的描述。

1. **子网组**

   1. 对于**子网组**，创建新的子网组，或从可用列表中选择要应用于此集群的现有子网组。如果要创建一个新的：
     + 输入**名称**
     + 输入**描述**
     + 如果启用了多可用区，则子网组必须至少包含两个位于不同可用区中的子网。有关更多信息，请参阅 [子网和子网组](subnetgroups.md)。
     + 如果要创建新的子网组但不具有现有 VPC，则系统会要求您创建 VPC。有关更多信息，请参阅《Amazon VPC 用户指南》**中的[什么是 Amazon VPC？](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html)。

1. **集群设置**

   1. 对于**启用向量搜索功能**，您可以启用此功能来存储向量嵌入和执行向量搜索。请注意，这将修复引擎版本兼容性、**参数组**和**分片**的值。有关更多信息，请参阅 [向量搜索](vector-search.md)。

   1. 对于引擎版本兼容性，请接受默认值 `6.2`。

   1. 对于**端口**，请接受默认端口 6379，或者，如果您出于某个原因需要使用其他端口，请输入相应的端口号。

   1. 对于**参数组**，如果您启用了向量搜索，请使用 `default.memorydb-redis7.search.preview`。否则，请接受 `default.memorydb-redis7` 参数组。

      参数组控制集群的运行时参数。有关参数组的更多信息，请参阅 [引擎特定参数](parametergroups.redis.md)。

      

   1. 对于**节点类型**，请为所需节点类型（及其关联的内存大小）选择一个值。

      如果您选择 r6gd 系列的节点类型，系统会自动启用数据分层，从而在内存和 SSD 之间拆分数据存储。有关更多信息，请参阅 [数据分层](data-tiering.md)。

   1. 对于**分片数**，选择要用于此集群的分片数。为实现更高的集群可用性，我们建议您至少添加 2 个分片。

      您可以动态更改集群中的分片数量。有关更多信息，请参阅 [扩展 MemoryDB 集群](scaling-cluster.md)。

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

      存在以下限制：
      + 如果启用了多可用区，请确保每个分片至少有一个副本。
      + 使用控制台创建集群时，每个分片的副本数相同。

   1. 选择**下一步**。

   1. **高级设置** 

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

         有关安全组的更多信息，请参阅 *Amazon VPC 用户指南*中的[您的 VPC 的安全组](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html)。

      1. 要加密您的数据，您可以选择以下选项：
         + **Encryption at rest（静态加密）**– 对磁盘上存储的数据启用加密。有关更多信息，请参阅[静态加密](https://docs.aws.amazon.com/memorydb/latest/devguide/at-rest-encryption.html)。
**注意**  
您可以选择提供默认加密密钥以外的加密密钥，方法是选择**客户管理的 KM AWS S 密钥**并选择密钥。
         + **Encryption in-transit（传输中加密）**– 对传输中数据启用加密。如果您选择不加密，则系统将使用默认用户创建一个名为“开放访问”的开放访问控制列表。有关更多信息，请参阅 [使用访问控制列表对用户进行身份验证 () ACLs](clusters.acls.md)。

      1. 对于**快照**，请选择性地指定快照保留期和快照时段。默认情况下，**启用自动快照**处于预先选中状态。

      1. 对于**维护时段**，请选择性地指定维护时段。*维护时段*是每周中 MemoryDB 为您的集群计划系统维护的时间，通常以小时为时间长度。您可以允许 MemoryDB 选择维护时段的日期和时间（*无首选项*），或者自行选择日期、时间和持续时间（*指定维护时段*）。如果您从列表中选择*指定维护时段*，请选择维护时段的*起始日*、*起始时间*和*持续时间*（以小时为单位）。所有时间均为 UCT 时间。

         有关更多信息，请参阅 [管理维护](maintenance-window.md)。

      1. 对于 **通知**，选择现有 Amazon Simple Notiﬁcation Service (Amazon SNS) 主题，或选择手动 ARN 输入，然后输入主题的 Amazon 资源名称（ARN）。Amazon SNS 允许您向联网的智能设备推送通知。默认设置为禁用通知。有关更多信息，请参阅 [https://aws.amazon.com/sns/](https://aws.amazon.com/sns/)。

      1. 对于**标签**，您可以选择应用标签来搜索和筛选集群或跟踪 AWS 成本。

   1. 查看您的所有输入和选择，然后进行任意所需的更正。准备就绪后，请选择**创建**启动集群或选择**取消**取消操作。

   当您的集群状态为 *available* 时，您可向其授予 EC2 访问权限，连接到集群并开始使用它。有关更多信息，请参阅 [步骤 3：授予对集群的访问权限](#getting-started.authorizeaccess)。
**重要**  
一旦您的集群变为可用状态，您便需要为集群处于活动状态的每个小时或分钟支付费用（即使您并未主动使用集群）。要停止此集群产生的费用，您必须将其删除。请参阅[步骤 5：删除集群](#clusters.delete)。

------

#### 创建集群 (AWS CLI)
<a name="clusters.create.cli"></a>

要使用创建集群 AWS CLI，请参阅[https://docs.aws.amazon.com/cli/latest/reference/memorydb/create-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/memorydb/create-cluster.html)。以下是示例：

对于 Linux、macOS 或 Unix：

```
aws memorydb create-cluster \
    --cluster-name my-cluster \
    --node-type db.r6g.large \
    --acl-name my-acl \
    --engine valkey \
    --subnet-group my-sg
```

对于 Windows：

```
aws memorydb create-cluster ^
   --cluster-name my-cluster ^
   --node-type db.r6g.large ^
   --acl-name my-acl ^
   --engine valkey
   --subnet-group my-sg
```

您应得到以下 JSON 响应：

```
{
    "Cluster": {
        "Name": "my-cluster",
        "Status": "creating",
        "NumberOfShards": 1,
        "AvailabilityMode": "MultiAZ",
        "ClusterEndpoint": {
            "Port": 6379
        },
        "NodeType": "db.r6g.large",
        "EngineVersion": "7.2",
        "EnginePatchVersion": "7.2.6",
        "ParameterGroupName": "default.memorydb-valkey7",
        "Engine": "valkey"
        "ParameterGroupStatus": "in-sync",
        "SubnetGroupName": "my-sg",
        "TLSEnabled": true,
        "ARN": "arn:aws:memorydb:us-east-1:xxxxxxxxxxxxxx:cluster/my-cluster",
        "SnapshotRetentionLimit": 0,
        "MaintenanceWindow": "wed:03:00-wed:04:00",
        "SnapshotWindow": "04:30-05:30",
        "ACLName": "my-acl",
        "DataTiering": "false",
        "AutoMinorVersionUpgrade": true
    }
}
```

一旦集群的状态更改为 `available`，您即可开始使用该集群。

**重要**  
一旦您的集群变为可用状态，您便需要为集群处于活动状态的每个小时或分钟支付费用（即使您并未主动使用集群）。要停止此集群产生的费用，您必须将其删除。请参阅[步骤 5：删除集群](#clusters.delete)。

#### 创建集群（MemoryDB API）
<a name="clusters.create.api"></a>

要使用 MemoryDB API 创建集群，请使用操作。[CreateCluster](https://docs.aws.amazon.com/memorydb/latest/APIReference/API_CreateCluster.html)

**重要**  
一旦您的集群变为可用状态，您便需要为集群处于活动状态的每个小时或分钟支付费用（即使您并未使用集群）。要停止此集群产生的费用，您必须将其删除。请参阅[步骤 5：删除集群](#clusters.delete)。

### 设置身份验证
<a name="clusters.authentication"></a>

有关为集群设置身份验证的信息，请参阅 [使用 IAM 进行身份验证](auth-iam.md) 和 [使用访问控制列表对用户进行身份验证 () ACLs](clusters.acls.md)。

## 步骤 3：授予对集群的访问权限
<a name="getting-started.authorizeaccess"></a>

 此部分假设您熟悉 Amazon EC2 实例的启动和连接。有关更多信息，请参阅 *[Amazon EC2 入门指南](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/)*。

MemoryDB 集群旨在通过 Amazon EC2 实例进行访问。它们也可以通过在 Amazon 弹性容器服务或 AWS Lambda中运行的容器化的应用程序或无服务器应用程序进行访问。最常见的情况是从同一 Amazon Virtual Private Cloud（Amazon VPC）中的 Amazon EC2 实例访问 MemoryDB 集群，这将是本练习的情况。

必须先授权 EC2 实例访问集群，然后您才能从 EC2 实例连接到集群。

最常见的使用场景是，当 EC2 实例上部署的应用程序需要连接到同一 VPC 中的集群时。要管理同一 VPC 中 EC2 实例与集群之间的访问，最简单方法如下所示：

1. 为集群创建 VPC 安全组。此安全组可用于限制对集群的访问权限。例如，可为此安全组创建自定义规则，允许使用您创建集群时分配给该集群的端口以及将用来访问集群的 IP 地址进行 TCP 访问。

   MemoryDB 集群的默认端口为 `6379`。

1. 为 EC2 实例（Web 和应用程序服务器）创建 VPC 安全组。如果需要，此安全组可允许通过 VPC 的路由表从 Internet 访问 EC2 实例。例如，您可设置此安全组的规则以允许通过端口 22 对 EC2 实例进行 TCP 访问。

1. 在集群的安全组中创建自定义规则，允许从为 EC2 实例创建的安全组连接。这将允许安全组的任何成员均可访问集群。

**在 VPC 安全组中创建允许从另一安全组连接的规则**

1. 登录 AWS 管理控制台并在 [https://console.aws.amazon.com/](https://console.aws.amazon.com/vpc)vpc 上打开 Amazon VPC 控制台。

1. 在左侧导航窗格中，选择**安全组**。

1. 选择或创建一个要用于集群的安全组。在**入站规则**下，选择**编辑入站规则**，然后选择**添加规则**。此安全组将允许访问其他安全组的成员。

1. 从 **Type** 中选择 **Custom TCP Rule**。

   1. 对于 **Port Range**，指定在创建集群时使用的端口。

      MemoryDB 集群的默认端口为 `6379`。

   1. 在 **Source** 框中，开始键入安全组的 ID。从列表中选择要用于 Amazon EC2 实例的安全组。

1. 完成后选择 **Save**。

启用访问后，您现在就可以连接到集群，如下一部分中所述。

有关从不同的 Amazon VPC、不同的 AWS 区域甚至您的公司网络访问您的 MemoryDB 集群的信息，请参阅以下内容：
+ [用于访问 Amazon VPC 中 MemoryDB 集群的访问模式](memorydb-vpc-accessing.md)
+ [从外部 AWS 访问 MemoryDB 资源](accessing-memorydb.md#access-from-outside-aws)

## 步骤 4：连接到集群
<a name="getting-startedclusters.connecttonode"></a>

在继续之前，请完成[步骤 3：授予对集群的访问权限](#getting-started.authorizeaccess)。

此部分假设您已创建了 Amazon EC2 实例并可以连接到该实例。有关如何执行此操作的说明，请参阅 [Amazon EC2 入门指南](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/)。

仅当您进行授权后，Amazon EC2 实例才能连接到集群。

### 查找您的集群端点
<a name="getting-started.findendpoints"></a>

在您的集群处于*可用*状态且您已授予对该集群的访问权限时，您可以登录 Amazon EC2 实例并连接到该集群。为此，您必须先确定端点。

为进一步了解如何查找您的端点，请参阅以下内容：
+ [查找 MemoryDB 集群（AWS 管理控制台）的端点](endpoints.md#endpoints.find.console)
+ [查找 MemoryDB 集群的端点（AWS CLI）](endpoints.md#endpoints.find.cli)
+ [查找 MemoryDB 集群的端点（MemoryDB API）](endpoints.md#endpoints.find.api)

### 连接到 MemoryDB 集群（Linux）
<a name="getting-startedclusters.connecttonode.redis.linux"></a>

现在您有了所需的端点，便可以登录 EC2 实例并连接到集群。在以下示例中，您通过 Ubuntu 22 使用 *cli* 实用工具连接到集群。最新版本的 cli 还支持 SSL/TLS 连接 encryption/authentication 已启用的集群。

#### 使用 redis-cli 连接到 MemoryDB 节点
<a name="connect-tls"></a>



要从 MemoryDB 节点中访问数据，您可以使用与安全套接字层（SSL）一起工作的客户端。你也可以在亚马逊 Linux 和 TLS/SSL 亚马逊 Linux 2 上使用 redis-cli。

**使用 redis-cli 连接到 Amazon Linux 2 或 Amazon Linux 上的 MemoryDB 集群**

1. 下载并编译 redis-cli 实用工具。此实用工具包含在 Redis OSS 软件发布版中。

1. 在 EC2 实例的命令提示符处，键入适合您所用 Linux 版本的相应命令。

   **Amazon Linux 2023**

   如果使用的是 Amazon Linux 2023，请输入以下命令：

   ```
   sudo yum install redis6 -y
   ```

   然后键入以下命令，并使用您集群的端点和端口来替换此示例中显示的相应内容。

   ```
   redis-cli -h Primary or Configuration Endpoint --tls -p 6379
   ```

   有关查找端点的更多信息，请参阅[查找您的节点端点](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/GettingStarted.ConnectToCacheNode.html#GettingStarted.FindEndpoints)。

   **Amazon Linux 2**

   如果使用的是 Amazon Linux 2，请输入以下命令：

   ```
   sudo yum -y install openssl-devel gcc
   wget https://download.redis.io/releases/redis-7.2.5.tar.gz
   tar xvzf redis-7.2.5.tar.gz
   cd redis-7.2.5
   make distclean
   make redis-cli BUILD_TLS=yes
   sudo install -m 755 src/redis-cli /usr/local/bin/
   ```

   **Amazon Linux**

   如果使用的是 Amazon Linux，请输入以下命令：

   ```
   sudo yum install gcc jemalloc-devel openssl-devel tcl tcl-devel clang wget
   wget https://download.redis.io/releases/redis-7.2.5.tar.gz
   tar xvzf redis-7.2.5.tar.gz
   cd redis-7.2.5
   make redis-cli CC=clang BUILD_TLS=yes
   sudo install -m 755 src/redis-cli /usr/local/bin/
   ```

   在 Amazon Linux 上，您可能还需要执行以下额外步骤：

   ```
   sudo yum install clang
   CC=clang make
   sudo make install
   ```

1. 下载并安装 redis-cli 实用程序后，建议运行可选的 `make-test` 命令。

1. 要连接到已启用加密和身份验证的集群，请输入以下命令：

   ```
   redis-cli -h Primary or Configuration Endpoint --tls -a 'your-password' -p 6379
   ```
**注意**  
如果您在 Amazon Linux 2023 上安装 redis6，那么现在可以使用命令 `redis6-cli`，而不是使用 `redis-cli`：  

   ```
   redis6-cli -h Primary or Configuration Endpoint --tls -p 6379
   ```

## 步骤 5：删除集群
<a name="clusters.delete"></a>

只要集群处于*可用* 状态，您就绪需为它付费，无论您是否主动使用它。要停止产生费用，请删除此集群。

**警告**  
当您删除 MemoryDB 集群时，您的手动快照将保留。您也可以在删除集群之前创建最终快照。自动快照不会保留。有关更多信息，请参阅 [快照和还原](snapshots.md)。
创建最终快照需要 `CreateSnapshot` 权限。如果没有此权限，API 调用将失败，并出现 `Access Denied` 异常。

### 使用 AWS 管理控制台
<a name="clusters.deleteclusters.viewdetails"></a>

以下过程从您的部署中删除单个集群。要删除多个集群，请对要删除的每个集群重复此过程。在开始删除一个集群的过程之前，您无需等待删除另一个集群完成。

**删除集群**

1. 登录 AWS 管理控制台 并打开 MemoryDB 控制台，网址为。[https://console.aws.amazon.com/memorydb/](https://console.aws.amazon.com/memorydb/)

1. 要选择要删除的集群，请从集群列表中选择该集群的名称旁边的单选按钮。在这种情况下，是您在 [步骤 2：创建集群](#getting-started.createcluster) 创建的集群的名称。

1. 对于**操作**，选择**删除**。

1. 首先选择是否在删除集群之前创建集群的快照，然后在确认框中输入 `delete` 并选择**删除**删除集群，或者选择**取消**保留集群。

   如果选择了 **Delete**，集群的状态将变为*正在删除*。

只要您的集群不再在集群列表中列出，您就无需为该集群付费。

### 使用 AWS CLI
<a name="clusters.delete.cli"></a>

以下代码删除集群 `my-cluster`。在这种情况下，将 `my-cluster` 替换为您在 [步骤 2：创建集群](#getting-started.createcluster) 中创建的集群的名称。

```
aws memorydb delete-cluster --cluster-name my-cluster
```

`delete-cluster` CLI 操作仅删除一个集群。要删除多个集群，请对要删除的每个集群调用 `delete-cluster`。在删除一个集群之前，您无需等待删除另一个集群的完成。

对于 Linux、macOS 或 Unix：

```
aws memorydb delete-cluster \
    --cluster-name my-cluster \
    --region us-east-1
```

对于 Windows：

```
aws memorydb delete-cluster ^
    --cluster-name my-cluster ^
    --region us-east-1
```

有关更多信息，请参阅 [https://docs.aws.amazon.com/cli/latest/reference/memorydb/delete-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/memorydb/delete-cluster.html)。

### 使用 MemoryDB API
<a name="clusters.delete.api"></a>

以下代码删除集群 `my-cluster`。在这种情况下，将 `my-cluster` 替换为您在 [步骤 2：创建集群](#getting-started.createcluster) 中创建的集群的名称。

```
https://memory-db.us-east-1.amazonaws.com/    
    ?Action=DeleteCluster
    &ClusterName=my-cluster
    &Region=us-east-1
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20210802T220302Z
    &X-Amz-Algorithm=Amazon4-HMAC-SHA256
    &X-Amz-Date=20210802T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Expires=20210802T220302Z
    &X-Amz-Credential=<credential>
    &X-Amz-Signature=<signature>
```

`DeleteCluster` API 操作仅删除一个集群。要删除多个集群，请对要删除的每个集群调用 `DeleteCluster`。在删除一个集群之前，您无需等待删除另一个集群的完成。

有关更多信息，请参阅 [DeleteCluster](https://docs.aws.amazon.com/memorydb/latest/APIReference/API_DeleteCluster.html)。

## 后续步骤
<a name="getting-started.wheregofromhere"></a>

至此，您已尝试入门练习，接下来可以探索以下部分以了解有关 MemoryDB 和可用工具的更多信息：
+ [入门 AWS](https://aws.amazon.com/getting-started/)
+ [用于 Amazon Web Services 的工具](https://aws.amazon.com/tools/)
+ [AWS 命令行界面](https://aws.amazon.com/cli/)
+ [MemoryDB API 参考。](https://docs.aws.amazon.com/memorydb/latest/APIReference/Welcome.html)