

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 管理 ElastiCache Amazon SNS 通知
<a name="ECEvents.SNS"></a>

您可以將 ElastiCache 設定為使用 Amazon Simple Notification Service (Amazon SNS) 傳送重要叢集事件的通知。在這些範例中，您會使用 Amazon SNS 主題的 Amazon Resource Name (ARN) 設定叢集以接收通知。

**注意**  
本主題假設您已註冊 Amazon SNS，並已設定及訂閱 Amazon SNS 主題。如需操作方式的相關資訊，請參閱 [Amazon Simple Notification Service 開發人員指南](https://docs.aws.amazon.com/sns/latest/dg/)。
根據預設， `API modify-replication-group`會影響區域中的所有群組，而不只是目前指定的群組。如果您想要在區域中設定與其他群組不同的特定群組，您可以使用 `--notification-topic-arn`選項來為該群組建立個別主題。

## 新增 Amazon SNS 主題
<a name="ECEvents.SNS.Adding"></a>

下列各節說明如何使用 AWS 主控台 AWS CLI、 或 ElastiCache API 新增 Amazon SNS 主題。

### 新增 Amazon SNS 主題 (主控台)
<a name="ECEvents.SNS.Adding.Console"></a>

 下列程序示範如何為叢集新增 Amazon SNS 主題。在步驟 2 中使用 Valkey 或 Redis OSS 為複寫群組新增 Amazon SNS 主題時，而不是選擇叢集，請選擇複寫群組。然後遵循相同的剩餘步驟。

**注意**  
 此程序也可用於修改 Amazon SNS 主題。

**為叢集新增或修改 Amazon SNS 主題 (主控台)**

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/) 的 ElastiCache 主控台。

1. 在 **Clusters (叢集)** 中，選擇您要新增或修改 Amazon SNS 主題 ARN 的叢集。

1. 選擇 **Modify** (修改)。

1. 在 **Modify Cluster (修改叢集)** 的 **Topic for SNS Notification (SNS 通知的主題)** 下，選擇您要新增的 SNS 主題，或選擇 **Manual ARN input (手動輸入 ARN)**，並輸入 Amazon SNS 主題的 ARN。

1. 選擇 **Modify** (修改)。

### 新增 Amazon SNS 主題 (AWS CLI)
<a name="ECEvents.SNS.Adding.CLI"></a>

若要新增或修改叢集的 Amazon SNS 主題，請使用 AWS CLI 命令 `modify-cache-cluster`。

下列程式碼範例會將 Amazon SNS 主題 ARN 新增至 *my-cluster*。

針對 Linux、macOS 或 Unix：

```
aws elasticache modify-cache-cluster \
    --cache-cluster-id {{my-cluster}} \
    --notification-topic-arn {{arn:aws:sns:us-west-2:123456789xxx:ElastiCacheNotifications}}
```

針對 Windows：

```
aws elasticache modify-cache-cluster ^
    --cache-cluster-id {{my-cluster}} ^
    --notification-topic-arn {{arn:aws:sns:us-west-2:123456789xx:ElastiCacheNotifications}}
```

如需詳細資訊，請參閱 [modify-cache-cluster](https://docs.aws.amazon.com/cli/latest/reference/elasticache/modify-cache-cluster.html)。

### 新增 Amazon SNS 主題 (ElastiCache API)
<a name="ECEvents.SNS.Adding.API"></a>

若要為叢集新增或修改 Amazon SNS 主題，請搭配下列參數呼叫 `ModifyCacheCluster` 動作：
+ `CacheClusterId``=my-cluster`
+ `TopicArn``=arn%3Aaws%3Asns%3Aus-west-2%3A565419523791%3AElastiCacheNotifications`

**Example**  

```
 1. https://elasticache.amazon.com/
 2.     ?Action=ModifyCacheCluster
 3.     &ApplyImmediately=false
 4.     &CacheClusterId=my-cluster
 5.     &NotificationTopicArn=arn%3Aaws%3Asns%3Aus-west-2%3A565419523791%3AElastiCacheNotifications
 6.     &Version=2014-12-01
 7.     &SignatureVersion=4
 8.     &SignatureMethod=HmacSHA256
 9.     &Timestamp=20141201T220302Z
10.     &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
11.     &X-Amz-Date=20141201T220302Z
12.     &X-Amz-SignedHeaders=Host
13.     &X-Amz-Expires=20141201T220302Z
14.     &X-Amz-Credential=<credential>
15.     &X-Amz-Signature=<signature>
```

如需詳細資訊，請參閱 [ModifyCacheCluster](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html)。

## 啟用和停用 Amazon SNS 通知
<a name="ECEvents.SNS.Disabling"></a>

 您可以為叢集開啟或關閉通知。下列程序示範如何停用 Amazon SNS 通知。

### 啟用和停用 Amazon SNS 通知 (主控台)
<a name="ECEvents.SNS.Disabling.Console"></a>

**使用 停用 Amazon SNS 通知 AWS 管理主控台**

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/) 的 ElastiCache 主控台。

1. 若要查看執行 Memcached 的叢集清單，請在導覽窗格中選擇 **Memcached**。

   若要查看執行 Valkey 或 Redis OSS 的叢集清單，請在導覽窗格中選擇 **Valkey** 或 **Redis OSS**。

1. 選擇您要修改通知之叢集左邊的方塊。

1. 選擇 **Modify** (修改)。

1. 在 **Modify Cluster (修改叢集)** 的 **Topic for SNS Notification (SNS 通知的主題)** 下，選擇 *Disable Notifications (停用通知)*。

1. 選擇 **Modify** (修改)。

### 啟用和停用 Amazon SNS 通知 (AWS CLI)
<a name="ECEvents.SNS.Disabling.CLI"></a>

若要停用 Amazon SNS 通知，請搭配下列參數使用 `modify-cache-cluster` 命令：

針對 Linux、macOS 或 Unix：

```
aws elasticache modify-cache-cluster \
    --cache-cluster-id {{my-cluster}} \
    --notification-topic-status {{inactive}}
```

針對 Windows：

```
aws elasticache modify-cache-cluster ^
    --cache-cluster-id {{my-cluster}} ^
    --notification-topic-status {{inactive}}
```

**注意**  
當叢集屬於複寫群組時，您必須使用 CLI 命令`modify-replication-group`來啟用或停用 SNS 通知。

### 啟用和停用 Amazon SNS 通知 (ElastiCache API)
<a name="ECEvents.SNS.Disabling.API"></a>

若要停用 Amazon SNS 通知，請搭配下列參數呼叫 `ModifyCacheCluster` 動作：
+ `CacheClusterId``=my-cluster`
+ `NotificationTopicStatus``=inactive`

此呼叫會傳回類似以下的輸出：

**Example**  

```
 1. https://elasticache.us-west-2.amazonaws.com/
 2.     ?Action=ModifyCacheCluster
 3.     &ApplyImmediately=false
 4.     &CacheClusterId=my-cluster
 5.     &NotificationTopicStatus=inactive
 6.     &Version=2014-12-01
 7.     &SignatureVersion=4
 8.     &SignatureMethod=HmacSHA256
 9.     &Timestamp=20141201T220302Z
10.     &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
11.     &X-Amz-Date=20141201T220302Z
12.     &X-Amz-SignedHeaders=Host
13.     &X-Amz-Expires=20141201T220302Z
14.     &X-Amz-Credential=<credential>
15.     &X-Amz-Signature=<signature>
```