带有的通知选项 AWS Backup - AWS Backup

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

带有的通知选项 AWS Backup

有两种方式可以接收有关 AWS Backup以下内容的通知:

  • 用户通知服务 可以发送通知,包括 Amazon CloudWatch 警报和其他服务的通知。 AWS Support

  • Amazon 简单通知服务可以将 AWS Backup 事件通知您。

用户通知服务 和 AWS Backup

AWS Backup 支持通过用户通知服务 控制台管理备份通知。使用 用户通知服务,您可以从用户通知通知中心查看备份、复制和还原任务的进度以及对备份策略、文件库、恢复点和设置的更改。

您可以通过控制台管理其他类型的通知,包括亚马逊、亚马逊 EventBridge 警报和 AWS Support 案例更新。 CloudWatch此外,您还可以设置多个配送选项,包括电子邮件、 AWS Chatbot 通知和 AWS Console Mobile Application 推送通知。

Amazon SNS 和 AWS Backup 活动

AWS Backup 利用了亚马逊简单通知服务 (AmazonSNS) 提供的强大通知。您可以将 Amazon 配置SNS为通过亚马逊SNS控制台向您发送 AWS Backup 事件通知。

限制
  • 虽然 Amazon SNS 服务允许跨账户通知, AWS Backup 但目前不支持此功能。您必须指定自己的 AWS 账户 ID 和主题资源ARN。

  • AWS Backup 支持SNS尽力删除重复数据的标准主题,但目前 AWS Backup 不支持严格重复数据删除SNSFIFO的主题。

常见使用案例

有关亚马逊SNS的更多信息,请参阅《亚马逊简单通知服务开发者指南》SNS中的 “亚马逊入门”。

AWS Backup 通知 APIs

使用 Amazon SNS 控制台或 AWS Command Line Interface (AWS CLI) 创建主题后,您可以使用以下 AWS Backup API操作来管理备份通知。

AWS Backup 支持以下事件:

作业类型 事件
备份作业 BACKUP_JOB_STARTED | BACKUP_JOB_COMPLETED | CONTINUOUS_BACKUP_INTERRUPTED
复制作业 COPY_JOB_STARTED | COPY_JOB_SUCCESSFUL | COPY_JOB_FAILED
还原作业 RESTORE_JOB_STARTED | RESTORE_JOB_COMPLETED
恢复点 RECOVERY_POINT_MODIFIED

AWS Backup for S3 支持另外两个事件:

  • S3_BACKUP_OBJECT_FAILED 会通知您在备份作业期间 AWS Backup 未能备份的任何 S3 对象。

  • S3_RESTORE_OBJECT_FAILED 会通知您在还原作业期间 AWS Backup 未能还原的任何 S3 对象。

事件示例

例 示例:Backup 任务已完成
{ "Records": [{ "EventSource": "aws:sns", "EventVersion": "1.0", "EventSubscriptionArn": "arn:aws:sns:...-a3802aa1ed45", "Sns": { "Type": "Notification", "MessageId": "12345678-abcd-123a-def0-abcd1a234567", "TopicArn": "arn:aws:sns:us-west-1:123456789012:backup-2sqs-sns-topic", "Subject": "Notification from AWS Backup", "Message": "An AWS Backup job was completed successfully. Recovery point ARN: arn:aws:ec2:us-west-1:123456789012:volume/vol-012f345df6789012d. Resource ARN : arn:aws:ec2:us-west-1:123456789012:volume/vol-012f345df6789012e. BackupJob ID : 1b2345b2-f22c-4dab-5eb6-bbc7890ed123", "Timestamp": "2019-08-02T18:46:02.788Z", ... "MessageAttributes": { "EventType": {"Type":"String","Value":"BACKUP_JOB"}, "State": {"Type":"String","Value":"COMPLETED"}, "AccountId": {"Type":"String","Value":"123456789012"}, "Id": {"Type":"String","Value":"1b2345b2-f22c-4dab-5eb6-bbc7890ed123"}, "StartTime": {"Type":"String","Value":"2019-09-02T13:48:52.226Z"} } } }] }
例 示例:Backup 任务失败
{ "Records": [{ "EventSource": "aws:sns", "EventVersion": "1.0", "EventSubscriptionArn": "arn:aws:sns:...-a3802aa1ed45", "Sns": { "Type": "Notification", "MessageId": "12345678-abcd-123a-def0-abcd1a234567", "TopicArn": "arn:aws:sns:us-west-1:123456789012:backup-2sqs-sns-topic", "Subject": "Notification from AWS Backup", "Message": "An AWS Backup job failed. Resource ARN : arn:aws:ec2:us-west-1:123456789012:volume/vol-012f345df6789012e. BackupJob ID : 1b2345b2-f22c-4dab-5eb6-bbc7890ed123", "Timestamp": "2019-08-02T18:46:02.788Z", ... "MessageAttributes": { "EventType": {"Type":"String","Value":"BACKUP_JOB"}, "State": {"Type":"String","Value":"FAILED"}, "AccountId": {"Type":"String","Value":"123456789012"}, "Id": {"Type":"String","Value":"1b2345b2-f22c-4dab-5eb6-bbc7890ed123"}, "StartTime": {"Type":"String","Value":"2019-09-02T13:48:52.226Z"} } } }] }
例 示例:备份任务无法在备份窗口内完成
{ "Records": [{ "EventSource": "aws:sns", "EventVersion": "1.0", "EventSubscriptionArn": "arn:aws:sns:...-a3802aa1ed45", "Sns": { "Type": "Notification", "MessageId": "12345678-abcd-123a-def0-abcd1a234567", "TopicArn": "arn:aws:sns:us-west-1:123456789012:backup-2sqs-sns-topic", "Subject": "Notification from AWS Backup", "Message": "An AWS Backup job failed to complete in time. Resource ARN : arn:aws:ec2:us-west-1:123456789012:volume/vol-012f345df6789012e. BackupJob ID : 1b2345b2-f22c-4dab-5eb6-bbc7890ed123", "Timestamp": "2019-08-02T18:46:02.788Z", ... "MessageAttributes" : { "EventType" : {"Type":"String","Value":"BACKUP_JOB"}, "State" : {"Type":"String","Value":"EXPIRED"}, "AccountId" : {"Type":"String","Value":"123456789012"}, "Id" : {"Type":"String","Value":"1b2345b2-f22c-4dab-5eb6-bbc7890ed123"}, "StartTime" : {"Type":"String","Value":"2019-09-02T13:48:52.226Z"} } } }] }

AWS Backup 通知命令示例

您可以使用 AWS CLI 命令订阅、列出和删除 AWS Backup 活动的 Amazon SNS 通知。

放置备份保管库通知示例

以下命令订阅指定备份库的 Amazon SNS 主题,该主题会在还原任务开始或完成或修改恢复点时通知您。

aws backup put-backup-vault-notifications --backup-vault-name myBackupVault --sns-topic-arn arn:aws:sns:region:account-id:myBackupTopic --backup-vault-events RESTORE_JOB_STARTED RESTORE_JOB_COMPLETED RECOVERY_POINT_MODIFIED

获取备份保管库通知示例

以下命令列出了当前订阅指定备份库的 Amazon SNS 主题的所有事件。

aws backup get-backup-vault-notifications --backup-vault-name myVault

示例输出如下所示:

{ "SNSTopicArn": "arn:aws:sns:region:account-id:myBackupTopic", "BackupVaultEvents": [ "RESTORE_JOB_STARTED", "RESTORE_JOB_COMPLETED", "RECOVERY_POINT_MODIFIED" ], "BackupVaultName": "myVault", "BackupVaultArn": "arn:aws:backup:region:account-id:backup-vault:myVault" }

删除备份保管库通知示例

以下命令取消订阅指定备份库的 Amazon SNS 主题。

aws backup delete-backup-vault-notifications --backup-vault-name myVault

指定 AWS Backup 为服务主体

注意

AWS Backup 要允许代表您发布SNS主题,您必须指定 AWS Backup 为服务主体。

JSON在用于跟踪 AWS Backup 事件的 Amazon SNS 主题的访问策略中加入以下内容。您必须指定主题的资源 Amazon 资源名称 (ARN)。

{ "Sid": "My-statement-id", "Effect": "Allow", "Principal": { "Service": "backup.amazonaws.com" }, "Action": "SNS:Publish", "Resource": "arn:aws:sns:region:account-id:myTopic" }

有关在亚马逊SNS访问策略中指定服务主体的更多信息,请参阅《亚马逊简单通知服务开发者指南》中的 “允许任何 AWS 资源发布到主题”。

注意

如果您的主题已加密,则必须在策略中包含其他权限才能 AWS Backup 向其发布内容。有关启用服务发布到加密主题的更多信息,请参阅《Amazon 简单通知服务开发者指南》中的 “启用来自 AWS 服务的事件源和加密主题之间的兼容性”。