

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

# 修改 MemoryDB 集群
<a name="clusters.modify"></a>

除了对集群添加或移除节点外，有时您可能还需要对现有集群做出其他更改，如添加安全组、更改维护时段或参数组。

我们建议您将维护时段设置在使用率最低的时间内。因此，维护时段需要不时进行修改。

当您更改集群的参数时，更改会立即应用到集群。无论您是更改集群的参数组本身，还是更改集群参数组内的参数值，都是如此。

您还可以更新集群的引擎版本。例如，您可以选择新的引擎次要版本，MemoryDB 将立即开始更新集群。

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

**修改集群**

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

1. 从右上角的列表中，选择要修改的集群所在的 AWS 区域。

1. 在左侧导航栏中，转到**集群**。在**集群的详细信息**中，使用单选按钮选择集群，并转到**操作**，然后选择**修改**。

1. 此时会显示**修改**页面。

1. 在**修改**窗口中，根据需要做出修改。选项包括：
   + 说明
   + 子网组
   + VPC 安全组
   + 节点类型
**注意**  
如果集群使用 r6gd 系列的节点类型，则只能选择该系列中的不同节点大小。如果您选择 r6gd 系列的节点类型，则系统会自动启用数据分层。有关更多信息，请参阅 [数据分层](data-tiering.md)。
   + Valkey 或 Redis OSS 版本兼容性
   + 启用自动快照
   + 快照保留期
   + 快照窗口
   + 维护窗口
   + SNS 通知的主题

1. 选择**保存更改**。

您还可以转到**集群详细信息**页面，然后单击**修改**对集群进行修改。如果要修改集群的特定章节，请转到**集群详细信息**页面中的相应选项卡，然后单击**修改**。

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

您可以使用 AWS CLI `update-cluster`操作修改现有集群。要修改集群的配置值，请指定集群的 ID、要更改的参数和此参数的新值。以下示例更改名为 `my-cluster` 的集群的维护时段，并立即应用此更改。

对于 Linux、macOS 或 Unix：

```
aws memorydb update-cluster \
    --cluster-name my-cluster \
    --preferred-maintenance-window sun:23:00-mon:02:00
```

对于 Windows：

```
aws memorydb update-cluster ^
    --cluster-name my-cluster ^
    --preferred-maintenance-window sun:23:00-mon:02:00
```

有关更多信息，请参阅《命令参考》中的 [update-cluster](https://docs.aws.amazon.com/cli/latest/reference/memorydb/update-cluster.html)。 AWS CLI 

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

您可以使用 MemoryDB API [UpdateCluster](https://docs.aws.amazon.com/memorydb/latest/APIReference/API_UpdateCluster.html)操作修改现有集群。要修改集群的配置值，请指定集群的 ID、要更改的参数和此参数的新值。以下示例更改名为 `my-cluster` 的集群的维护时段，并立即应用此更改。

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

## 如何触发从 Redis OSS 到 Valkey 的跨引擎升级
<a name="clusters.modifyclusters.cross-engine"></a>

您可以使用控制台、API 或 CLI 将现有 Redis OSS 集群升级到 Valkey 引擎。

如果您有一个使用默认参数组的现有 Redis OSS 集群，则可以通过使用 update-cluster API 指定新的引擎和引擎版本来升级到 Valkey。

对于 Linux、macOS 或 Unix：

```
aws memorydb update-cluster \
   --cluster-name myCluster \
   --engine valkey \
   --engine-version 7.2
```

对于 Windows：

```
aws memorydb update-cluster ^
   --cluster-name myCluster ^
   --engine valkey ^
   --engine-version 7.2
```

如果您对要升级的现有 Redis OSS 集群应用了自定义参数组，则还需要在请求中传递自定义 Valkey 参数组。输入 Valkey 自定义参数组必须具有与现有 Redis OSS 自定义参数组相同的 Redis OSS 静态参数值。

对于 Linux、macOS 或 Unix：

```
aws memorydb update-cluster \
   --cluster-name myCluster \
   --engine valkey \
   --engine-version 7.2 \
   --parameter-group-name myParamGroup
```

对于 Windows：

```
aws memorydb update-cluster ^
   --cluster-name myCluster ^
   --engine valkey ^
   --engine-version 7.2 ^
   --parameter-group-name myParamGroup
```