如何在特定的时间间隔内自动执行 AWS DMS 任务?

2 分钟阅读
0

我想在特定的时间间隔内自动执行 AWS Database Migration Service (AWS DMS) 任务。或者,我想自动启动和停止 DMS 任务。

解决方法

要在特定时间间隔内自动执行 AWS DMS 任务,请使用 Amazon EventBridge 规则启动任务。

要使用 EventBridge 规则自动执行 DMS 任务,请完成以下步骤:

  1. 创建 DMS 任务。或者,如果您已有 DMS 任务,请根据任务状态修改 EventBridge 规则。
  2. 打开 EventBridge 控制台
  3. 在导航窗格中,选择 Schedules(计划),然后选择 Create schedule(创建计划)。
  4. Specify schedule detail(指定计划详细信息)页面上,输入您的计划的以下详细信息:
    对于 Schedule Name and Description(计划名称和描述),输入您的信息。
    对于 Schedule group(计划组),选择 Default(默认)。
    对于 Schedule pattern(计划模式),选择 One time(一次性)或 Recurring(定期)。
  5. 选择 Next(下一步)。
  6. Target detail(目标详细信息)下,对于 Target API(目标 API),选择 All APIs(所有 API)。
  7. All AWS services(所有 AWS 服务)字段中,输入 AWS Database Migration(AWS 数据库迁移)。当出现 AWS Database Migration(AWS 数据库迁移)选项时,将其选中。
  8. Find API(查找 API)字段中,输入 StartReplicationTask。当出现 StartReplicationTask 选项时,将其选中。
  9. 对于 JSON 输入,请提供您的 DMS 任务 ARN。对于 StartReplicationTaskType,输入 resume-processing。有关详细信息,请参阅 StartReplicationTask
    **注意:**当迁移类型为 full-loadfull-load-and-cdc 时,首次运行任务的唯一值是 start-replication。此选项开始迁移。
  10. 对于 Retry policy(重试策略)、DLQEncryption(加密),请根据您的要求更新这些值。
  11. 选择 Next(下一步)。
  12. 对于 Permissions(权限),附加拥有运行计划和启动 DMS 任务的权限的 AWS Identity and Access Management (IAM) 角色。然后,选择 Next(下一步)。
    IAM 策略信任关系示例:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": [
          "scheduler.amazonaws.com",
          "apidestinations.events.amazonaws.com"
        ]
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

以下示例策略提供完整的 DMS 访问权限。根据您的要求配置您的访问权限。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "VisualEditor0",
      "Effect": "Allow",
      "Action": "dms:*",
      "Resource": "*"
    }
  ]
}
  1. 选择 Create schedule(创建计划)。

您可以使用 Amazon CloudWatchAWS CloudTrail 监控 EventBridge 规则。

相关信息

自动执行 AWS DMS 迁移任务

使用 AWS DMS 自动进行数据库迁移和刷新活动

处理 AWS DMS 任务

AWS 官方
AWS 官方已更新 1 年前