

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

# 修改 ElastiCache 集群
<a name="Clusters.Modify"></a>

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

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

在更改集群的参数时，所做的更改将立即或在重新启动集群后应用于集群。无论是更改集群的参数组本身还是更改集群参数组中的参数值，都是如此。要确定何时应用特定的参数更改，请参阅[Memcached 特定的参数](ParameterGroups.Engine.md#ParameterGroups.Memcached)和[Valkey 和 Redis OSS 参数](ParameterGroups.Engine.md#ParameterGroups.Redis)的表中**详细信息**列的**更改生效**部分。有关重启集群节点的信息，请参阅 [重启节点](nodes.rebooting.md)。

## 使用 ElastiCache AWS 管理控制台
<a name="Clusters.Modify.CON"></a>

**修改集群**

1. 登录 AWS 管理控制台 并打开 ElastiCache 控制台（[https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/)）。

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

1. 在导航窗格中，选择在您要修改的集群上运行的引擎。

   此时会显示选定引擎的集群列表。

1. 在集群列表中，对于要修改的集群，选择其名称。

1. 选择 **Actions**（操作），然后选择 **Modify**（修改）。

   **Modify Cluster**（修改集群）窗口随即出现。

1. 在**修改集群**窗口中，根据需要做出修改。选项包括：
   + 描述
   + 集群模式 - 要将集群模式从**已禁用**修改为**已启用**，必须先将集群模式设置为**兼容**。

     兼容模式让 Valkey 或 Redis 客户端在启用集群模式和禁用集群模式的情况下都能进行连接。在将所有 Valkey 或 Redis OSS 客户端迁移到使用**已启用**集群模式后，就可以完成集群模式配置并将集群模式设置为已启用。
   + 引擎版本兼容性
**重要**  
您可以升级到较新的引擎版本。升级主要引擎版本（例如从 5.0.6 升级到 6.0）时，您需要选择一个与新引擎版本兼容的参数组系列。有关执行此操作的更多信息，请参阅 [的版本管理 ElastiCache](VersionManagement.md)。不过，您不能降级到较早的引擎版本，除非删除现有集群并重新创建它。
   + VPC 安全组
   + 参数组
   + 节点类型
**注意**  
如果集群使用 r6gd 系列的节点类型，则只能选择该系列中的不同节点大小。如果您选择 r6gd 系列的节点类型，则系统会自动启用数据分层。有关更多信息，请参阅[数据分层](data-tiering.md)。
   + 多可用区
   + 自动故障转移（仅限已禁用集群模式）
   + 启用自动备份
   + 备份节点 ID
   + 备份保留期
   + 备份时段
   + SNS 主题通知
   + Memcached 引擎版本兼容性
   + 网络类型
**注意**  
如果要从 IPv4 切换到 IPv6，则必须选择或创建与 IPv6 兼容的子网组。有关更多信息，请参阅 [在中选择网络类型 ElastiCache](network-type.md)。
   + VPC 安全组
   + 参数组
   + 维护时段
   + SNS 主题通知

   **立即应用**框仅适用于修改引擎版本和节点类型。要立即应用更改，请选中 **Apply Immediately**（立即应用）复选框。如果未选中此框，则将在下一维护时段内应用引擎版本修改。诸如更改维护时段这样的其他修改是立即应用的。

**为 Redis 启用/禁用日志传输**

1. 从集群列表中，选择要修改的集群。选择 **Cluster name（集群名称）**而不是旁边的复选框。

1. 在**集群详细信息**页面上，选择**日志**选项卡。

1. 要启用或禁用慢日志，请选择**启用**或**禁用**。

   如果您选择启用：

   1. 在 **Log format**（日志格式）下，选择 **JSON** 或 **Text**（文本）。

   1. 在 **Log destination type**（日志目标类型）下，选择 **CloudWatch Logs** 或 **Kinesis Firehose**。

   1. 在**日志目标**下，您可以选择**新建**，然后输入您的 CloudWatch Logs 日志组名称或 Kinesis Data Firehose 流名称。您也可以选择**选择现有**，然后选择您的 CloudWatch Logs 日志组名称或 Kinesis Data Firehose 流名称。

   1. 请选择**启用**。

**要更改 Redis 的配置：**

1. 选择**修改**。

1. 在 **Log format**（日志格式）下，选择 **JSON** 或 **Text**（文本）。

1. 在 **Destination Type**（目标类型）下，选择 **CloudWatch Logs** 或 **Kinesis Firehose**。

1. 在 **Log destination**（日志目标）下，选择 **Create new**（新建），然后输入您的 CloudWatchLogs 日志组名称或 Kinesis Data Firehose 流名称。或者选择 **Select existing**（选择现有），然后选择您的 CloudWatchLogs 日志组名称或 Kinesis Data Firehose 流名称。

## 使用 ElastiCache AWS CLI
<a name="Clusters.Modify.CLI"></a>

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

**重要**  
您可以升级到较新的 Memcached 引擎版本。有关执行此操作的更多信息，请参阅 [的版本管理 ElastiCache](VersionManagement.md)。不过，您不能降级到较早的引擎版本，除非删除现有集群并重新创建它。

**重要**  
您可以升级到较新的 Valkey 或 Redis OSS 引擎版本。升级主要引擎版本（例如从 Redis OSS 5.0.6 升级到 Redis OSS 6.0）时，您需要选择一个与新引擎版本兼容的参数组系列。有关执行此操作的更多信息，请参阅 [的版本管理 ElastiCache](VersionManagement.md)。不过，您不能降级到较早的引擎版本，除非删除现有集群并重新创建它。

对于 Linux、macOS 或 Unix：

```
aws elasticache modify-cache-cluster \
    --cache-cluster-id my-cluster \
    --preferred-maintenance-window sun:23:00-mon:02:00
```

对于 Windows：

```
aws elasticache modify-cache-cluster ^
    --cache-cluster-id my-cluster ^
    --preferred-maintenance-window sun:23:00-mon:02:00
```

`--apply-immediately` 参数仅适用于节点类型、引擎版本的修改，并更改集群中的节点数。如果您希望立即应用任意这些更改，请使用 `--apply-immediately` 参数。如果您希望将这些更改推迟到下一维护时段，请使用 `--no-apply-immediately` 参数。诸如更改维护时段这样的其他修改是立即应用的。

有关更多信息，请参阅 AWS CLI for ElastiCache 主题 [https://docs.aws.amazon.com/cli/latest/reference/elasticache/modify-cache-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/elasticache/modify-cache-cluster.html)。

## 使用 ElastiCache API
<a name="Clusters.Modify.API"></a>

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

**重要**  
您可以升级到较新的 Memcached 引擎版本。有关执行此操作的更多信息，请参阅 [的版本管理 ElastiCache](VersionManagement.md)。不过，您不能降级到较早的引擎版本，除非删除现有集群并重新创建它。

**重要**  
您可以升级到较新的 Valkey 或 Redis OSS 引擎版本。升级主要引擎版本（例如从 Redis OSS 5.0.6 升级到 Redis OSS 6.0）时，您需要选择一个与新引擎版本兼容的参数组系列。有关执行此操作的更多信息，请参阅 [的版本管理 ElastiCache](VersionManagement.md)。不过，您不能降级到较早的引擎版本，除非删除现有集群并重新创建它。

添加换行符以便于阅读。

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=ModifyCacheCluster
    &CacheClusterId=my-cluster
    &PreferredMaintenanceWindow=sun:23:00-mon:02:00
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20150901T220302Z
    &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
    &X-Amz-Date=20150202T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Expires=20150901T220302Z
    &X-Amz-Credential=<credential>
    &X-Amz-Signature=<signature>
```

`ApplyImmediately` 参数仅适用于节点类型、引擎版本的修改，并更改集群中的节点数。如果您希望立即应用任意这些更改，请将 `ApplyImmediately` 参数设置为 `true`。如果您希望将这些更改推迟到下一维护时段，请将 `ApplyImmediately` 参数设置为 `false`。诸如更改维护时段这样的其他修改是立即应用的。

有关更多信息，请参阅 ElastiCache API 参考主题 [https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html)。