AWS Database Migration Service
用户指南 (版本 API Version 2016-01-01)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

在 AWS Database Migration Service 中使用事件和通知

AWS Database Migration Service (AWS DMS) 使用 Amazon Simple Notification Service (Amazon SNS) 在发生 AWS DMS 事件(例如创建或删除复制实例)时提供通知。您可以 AWS 区域的 Amazon SNS 支持的任何形式使用这些通知,如电子邮件、短信或者调用 HTTP 终端节点。

AWS DMS 将这些事件分组为您可以订阅的类型,以便您在出现该类事件时收到通知。例如,如果您订阅了指定复制实例的“创建”类别,则只要发生了与创建相关的事件影响到您的复制实例,您就会收到通知。如果您订阅了复制实例的“配置更改”类别,则您将在复制实例的配置更改时收到通知。您还将在事件通知订阅更改时收到通知。有关 AWS DMS 提供的事件类别的列表,请参阅后文中的 AWS DMS 事件类型和事件消息

AWS DMS 将事件通知发送到您在创建事件订阅时提供的地址。您可能希望创建多个不同的订阅,如使用一个订阅接收所有事件通知,并使用另一个订阅接收仅针对生产 DMS 资源的关键事件。您可以在 AWS DMS 控制台中将 Enabled (启用) 选项设置为 No (否),或者使用 AWS DMS API 将 Enabled 参数设置为 false,从而轻松地关闭通知而无需删除订阅。

注意

目前,在支持 AWS DMS 的所有区域中,使用 SMS 文本消息的 AWS DMS 事件通知当前对 AWS DMS 资源可用。有关在 SNS 上使用短信的更多信息,请参阅使用 Amazon SNS 发送和接收 SMS 通知

AWS DMS 使用订阅标识符来标识各个订阅。您可以将多个 AWS DMS 事件订阅发布到同一个 Amazon SNS 主题。在您使用事件通知时,需要支付 Amazon SNS 费用;有关 Amazon SNS 计费的更多信息,请参阅 Amazon SNS定价

要订阅 AWS DMS 事件,您可以使用以下过程:

  1. 创建一个 Amazon SNS 主题。在主题中,指定您要接收的通知类型,以及要将通知发送到的地址或号码。

  2. 使用 AWS 管理控制台、AWS CLI 或 AWS DMS API 创建 AWS DMS 事件通知订阅。

  3. AWS DMS 发送批准电子邮件或者 SMS 消息给您在订阅时提交的地址。要确认订阅,请单击批准电子邮件或 SMS 消息中的链接。

  4. 确认订阅后,订阅状态即会在 AWS DMS 控制台的 Event Subscriptions (我的事件订阅) 部分中更新。

  5. 您将开始接收事件通知。

有关您可以接收通知的类型和事件的列表,请参阅下面的章节。有关订阅和使用 AWS DMS 事件通知的更多详情,请参阅订阅 AWS DMS 事件通知

AWS DMS 事件类型和事件消息

AWS DMS 会在各种类型中生成许多事件,您可以使用 AWS DMS 控制台或者 AWS DMS API 对它们进行订阅。每个类别应用于一种源类型;当前 AWS DMS 支持复制实例和复制任务源类型。

下表显示了复制实例源类型可能的类别和事件。

类别

DMS 事件 ID

描述

配置更改 DMS-EVENT-0012

REP_INSTANCE_CLASS_CHANGING – 正在更改此复制实例的复制实例类。

配置更改 DMS-EVENT-0014

REP_INSTANCE_CLASS_CHANGE_COMPLETE – 已更改此复制实例的复制实例类。

配置更改 DMS-EVENT-0018

BEGIN_SCALE_STORAGE – 正在增加复制实例的存储。

配置更改 DMS-EVENT-0017

FINISH_SCALE_STORAGE – 已增加复制实例的存储。

配置更改 DMS-EVENT-0024

BEGIN_CONVERSION_TO_HIGH_AVAILABILITY – 正在将复制实例转换为多可用区配置。

配置更改 DMS-EVENT-0025

FINISH_CONVERSION_TO_HIGH_AVAILABILITY – 将复制实例转换为多可用区配置已完成。

配置更改 DMS-EVENT-0030

BEGIN_CONVERSION_TO_NON_HIGH_AVAILABILITY – 正在将复制实例转换为单可用区配置。

配置更改 DMS-EVENT-0029

FINISH_CONVERSION_TO_NON_HIGH_AVAILABILITY – 将复制实例转换为单可用区配置已完成。

创建 DMS-EVENT-0067

CREATING_REPLICATION_INSTANCE – 正在创建复制实例。

创建 DMS-EVENT-0005

CREATED_REPLICATION_INSTANCE – 复制实例已创建。

删除 DMS-EVENT-0066

DELETING_REPLICATION_INSTANCE – 正在删除复制实例。

删除 DMS-EVENT-0003

DELETED_REPLICATION_INSTANCE – 复制实例已删除。

维护 DMS-EVENT-0047 FINISH_PATCH_INSTANCE – 复制实例上的管理软件已更新。
维护 DMS-EVENT-0026 BEGIN_PATCH_OFFLINE – 正在对复制实例进行脱机维护。复制实例当前不可用。
维护 DMS-EVENT-0027 FINISH_PATCH_OFFLINE – 复制实例的脱机维护已完成。现在可以使用复制实例。
LowStorage DMS-EVENT-0007 LOW_STORAGE – 复制实例的免费存储不足。
故障转移 DMS-EVENT-0013 FAILOVER_STARTED – 为多可用区复制实例启用了故障转移。
故障转移 DMS-EVENT-0049 FAILOVER_COMPLETED – 多可用区复制实例的故障转移已完成。
故障转移 DMS-EVENT-0050 MAZ_INSTANCE_ACTIVATION_STARTED – 多可用区激活已开始。
故障转移 DMS-EVENT-0051 MAZ_INSTANCE_ACTIVATION_COMPLETED – 多可用区激活已完成。
故障 DMS-EVENT-0031 REPLICATION_INSTANCE_FAILURE – 复制实例遇到了存储故障。
故障 DMS-EVENT-0036 INCOMPATIBLE_NETWORK – 由于不兼容的网络,复制实例失败。

下表显示了复制任务源类型可能的类别和事件。

类别

DMS 事件 ID

描述

StateChange DMS-EVENT-0069

REPLICATION_TASK_STARTED – 复制任务已开始。

StateChange DMS-EVENT-0077

REPLICATION_TASK_STOPPED – 复制任务已停止。

故障 DMS-EVENT-0078

REPLICATION_TASK_FAILED – 复制任务已失败。

删除 DMS-EVENT-0073

REPLICATION_TASK_DELETED – 复制任务已删除。

创建 DMS-EVENT-0074 REPLICATION_TASK_CREATED – 复制任务已创建。

订阅 AWS DMS 事件通知

您可以创建 AWS DMS 事件通知订阅,这样就能在发生 AWS DMS 事件时收到通知。创建订阅最简单的方式是使用 AWS DMS 控制台。如果选择使用 AWS DMS API 创建事件通知订阅,就必须创建一个 Amazon SNS 主题,并使用 Amazon SNS 控制台或 API 订阅该主题。在这种情况下,您还需要记下主题的 Amazon 资源名称 (ARN),因为在提交 CLI 命令或者 API 操作时会用到此 ARN。有关创建和订阅 Amazon SNS 主题的信息,请参阅 Amazon SNS 入门

在通知订阅中,您可以指定希望收取其通知的源类型以及触发该事件的 AWS DMS 源。您使用 SourceType 值定义 AWS DMS 源类型。您可以使用 SourceIdentifier 值定义生成事件的源。如果同时指定 SourceTypeSourceIdentifier(如 SourceType = db-instanceSourceIdentifier = myDBInstance1),则会收到指定源的所有 DB_Instance 事件。如果指定 SourceType 但未指定 SourceIdentifier,则会收到所有 AWS DMS 源的该源类型的事件通知。如果未指定 SourceTypeSourceIdentifier,则会收到从属于您的客户账户的所有 AWS DMS 源中生成的事件通知。

AWS 管理控制台

使用控制台订阅 AWS DMS 事件通知

  1. 登录到 AWS 管理控制台,然后选择 AWS DMS。注意,如果以 AWS Identity and Access Management (IAM) 用户身份登录,则必须具有适当权限才能访问 AWS DMS。

  2. 在导航窗格中,选择事件订阅

  3. 事件订阅页中,选择创建事件订阅

  4. 创建事件订阅页中,执行以下操作:

    1. 对于名称,键入事件通知订阅的名称。

    2. Send notifications to (发送通知到) 选择一个现有的 Amazon SNS 主题,或者选择 create topic (创建主题)。您必须具有一个可将通知发送到的现有 Amazon SNS 主题,否则必须创建主题。如果选择创建主题,您可以输入将通知发送到的电子邮件地址。

    3. 对于源类型,请选择一种源类型。唯一选项是复制实例

    4. 选择以启用订阅。如果要创建订阅,但尚未发送通知,请选择

    5. 根据选定源类型的情况,选择您希望接收其事件通知的事件类别和源。

      
                                        “Console Tags”选项卡
    6. 选择 Create

AWS DMS 控制台会表明正在创建订阅。

AWS DMS API

使用 AWS DMS API 订阅 AWS DMS 事件通知