View a markdown version of this page

通知选项有 AWS Backup - AWS Backup

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

通知选项有 AWS Backup

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

  • 用户通知服务 可以发送通知,包括亚马逊 CloudWatch 警报和其他服务的通知。 AWS 支持

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

用户通知服务 and AWS Backup

AWS Backup 支持管理来自用户通知服务 控制台的备份通知。通过 用户通知服务,您可以从 User Notifications Notification Center 查看备份、复制和还原作业的进度,以及对备份策略、保管库、恢复点和设置的更改。

亚马逊 CloudWatch、亚马逊 EventBridge 警报和 AWS 支持 案例更新是您可以通过控制台管理的其他通知类型。此外,您可以设置多个交付选项,包括电子邮件、聊天应用程序中的 Amazon Q Developer 通知和 AWS Console Mobile Application 推送通知。

亚马逊 SNS 和 AWS Backup events

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

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

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

常见使用案例

有关一般 Amazon SNS 的更多信息,请参阅《Amazon Simple Notification Service Developer Guide》中的 Getting Started with Amazon SNS

AWS Backup 通知 API

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

AWS Backup 支持以下事件:

作业类型 事件
备份作业 BACKUP_JOB_STARTED | BACKUP_JOB_COMPLETED | BACKUP_JOB_SUCCESSFUL | BACKUP_JOB_FAILED | BACKUP_JOB_EXPIRED | CONTINUOUS_BACKUP_INTERRUPTED
复制作业 COPY_JOB_STARTED | COPY_JOB_SUCCESSFUL | COPY_JOB_FAILED
还原作业 RESTORE_JOB_STARTED | RESTORE_JOB_COMPLETED | RESTORE_JOB_SUCCESSFUL | RESTORE_JOB_FAILED
恢复点 RECOVERY_POINT_MODIFIED
恢复点索引 RECOVERY_POINT_INDEX_COMPLETED | RECOVERY_POINT_INDEX_DELETED | RECOVERY_POINT_INDEXING_FAILED
访问点 ACCESS_POINT_AVAILABLE | ACCESS_POINT_CREATION_FAILED | ACCESS_POINT_DELETED | ACCESS_POINT_DELETION_FAILED | ACCESS_POINT_EXPIRED | ACCESS_POINT_DISASSOCIATED

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

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

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

AWS Backup for EKS 支持另外三个事件:

  • EKS_BACKUP_OBJECT_FAILED通知您任何 EKS 对象在备份任务期间备份 AWS Backup 失败。

  • EKS_RESTORE_OBJECT_FAILED通知您任何 EKS 对象在还原任务期间 AWS Backup 无法恢复。

  • EKS_RESTORE_OBJECT_SKIPPED通知您在还原任务期间 AWS Backup 跳过的任何 EKS 对象。

事件示例

例示例:已完成的备份作业
{ "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"} } } }] }
例示例:失败的备份作业
{ "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"} } } }] }
例示例:已完成的恢复点索引
{ "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 backup index job was completed. Indexed recovery point arn: arn:aws:backup:us-west-2:1112233445566:recovery-point:abcd1234-5678-abcd-9012-abcdef123456", "Timestamp": "2025-05-25T18:46:02.788Z", ... "MessageAttributes" : { "EventType" : {"Type":"String","Value":"RECOVERY_POINT_INDEXING_COMPLETED"}, "AccountId" : {"Type":"String","Value":"123456789012"}, "IndexStatus" : {"Type":"String","Value":"ACTIVE"}, "IsIndexingContinuous" : {"Type":"String","Value":"false"}, "RecoveryPointArn" : {"Type":"String","Value":"arn:aws:backup:us-west-2:1112233445566:recovery-point:abcd1234-5678-abcd-9012-abcdef123456"} } } }] }
例示例:EKS 备份对象失败
{ "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": "A Kubernetes resource failed to backup from your Amazon EKS Backup. Resource: example.resource.io/v1. EKS Cluster Name: eks-cluster-name. BackupJob ID: 1b2345b2-f22c-4dab-5eb6-bbc7890ed123", "Timestamp": "2025-05-25T18:46:02.788Z", ... "MessageAttributes" : { "eventType" : {"Type":"String","Value":"EKS_BACKUP_OBJECT_FAILED"}, "backupJobId" : {"Type":"String","Value":"1b2345b2-f22c-4dab-5eb6-bbc7890ed123"}, "clusterName" : {"Type":"String","Value":"eks-cluster-name"}, "reason" : {"Type":"String","Value":"Example failure reason."}, "resourceName" : {"Type":"String","Value":"example.resource.io/v1"} } } }] }
例示例:EKS 还原对象失败
{ "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": "A Kubernetes resource failed to restore from your Amazon EKS Backup. Resource: apiextensions.k8s.io/v1/customresourcedefinitions. Resource Name: exampleresource. Destination EKS Cluster Name: eks-restore-target-cluster-name. RestoreJob ID: 1b2345b2-f22c-4dab-5eb6-bbc7890ed123", "Timestamp": "2025-05-25T18:46:02.788Z", ... "MessageAttributes" : { "eventType" : {"Type":"String","Value":"EKS_RESTORE_OBJECT_FAILED"}, "clusterName" : {"Type":"String","Value":"eks-restore-target-cluster-name"}, "parentRestoreJobId" : {"Type":"String","Value":"12345678-abcd-123a-def0-abcd1a234567"}, "reason" : {"Type":"String","Value":"Example failure reason."}, "resourceName" : {"Type":"String","Value":"exampleresourceio"}, "resourceType" : {"Type":"String","Value":"apiextensions.k8s.io/v1/customresourcedefinitions"}, "restoreJobId" : {"Type":"String","Value":"1b2345b2-f22c-4dab-5eb6-bbc7890ed123"} } } }] }
例示例:已跳过 EKS 还原对象
{ "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": "A Kubernetes resource was skipped from restore from your Amazon EKS Backup. This Kubernetes resource already exists in your target EKS cluster. Resource: apiextensions.k8s.io/v1/customresourcedefinitions. Resource Name: exampleresource. Destination EKS Cluster Name: eks-restore-target-cluster-name. RestoreJob ID: 1b2345b2-f22c-4dab-5eb6-bbc7890ed123", "Timestamp": "2025-05-25T18:46:02.788Z", ... "MessageAttributes" : { "eventType" : {"Type":"String","Value":"EKS_RESTORE_OBJECT_SKIPPED"}, "clusterName" : {"Type":"String","Value":"eks-restore-target-cluster-name"}, "parentRestoreJobId" : {"Type":"String","Value":"12345678-abcd-123a-def0-abcd1a234567"}, "reason" : {"Type":"String","Value":"Already exists."}, "resourceName" : {"Type":"String","Value":"exampleresource"}, "resourceType" : {"Type":"String","Value":"apiextensions.k8s.io/v1/customresourcedefinitions"}, "restoreJobId" : {"Type":"String","Value":"1b2345b2-f22c-4dab-5eb6-bbc7890ed123"} } } }] }
例示例:接入点可用
{ "Type": "Notification", "MessageId": "dd7579e6-47bb-51af-866c-1b36e07d9aaa", "TopicArn": "arn:aws:sns:us-east-1:123456789012:my-backup-topic", "Subject": "Notification from AWS Backup", "Message": "An AWS Backup access point was created successfully. Access point ARN: arn:aws:backup:us-east-1:123456789012:accesspoint/my-access-point. S3 access point ARN: arn:aws:s3:us-east-1:123456789012:accesspoint/my-access-point. Recovery point ARN: arn:aws:backup:us-east-1:123456789012:recovery-point:rp-1234567890abcdef0.", "Timestamp": "2026-07-28T12:00:26.426Z", "MessageAttributes": { "EventType": {"Type":"String","Value":"ACCESS_POINT_AVAILABLE"}, "Status": {"Type":"String","Value":"AVAILABLE"}, "AccountId": {"Type":"String","Value":"123456789012"}, "AccessPointArn": {"Type":"String","Value":"arn:aws:backup:us-east-1:123456789012:accesspoint/my-access-point"}, "CreationTime": {"Type":"String","Value":"2026-07-28T12:00:25.938846787Z"} } }
例示例:接入点创建失败
{ "Type": "Notification", "MessageId": "abcdef01-2345-6789-abcd-ef0123456789", "TopicArn": "arn:aws:sns:us-east-1:123456789012:my-backup-topic", "Subject": "Notification from AWS Backup", "Message": "An AWS Backup access point failed to create. Access point ARN: arn:aws:backup:us-east-1:123456789012:accesspoint/my-access-point. Recovery point ARN: arn:aws:backup:us-east-1:123456789012:recovery-point:rp-1234567890abcdef0.", "Timestamp": "2026-07-28T12:05:10.123Z", "MessageAttributes": { "EventType": {"Type":"String","Value":"ACCESS_POINT_CREATION_FAILED"}, "Status": {"Type":"String","Value":"FAILED"}, "AccountId": {"Type":"String","Value":"123456789012"}, "AccessPointArn": {"Type":"String","Value":"arn:aws:backup:us-east-1:123456789012:accesspoint/my-access-point"}, "CreationTime": {"Type":"String","Value":"2026-07-28T12:04:55.123456789Z"} } }
例示例:接入点已过期
{ "Type": "Notification", "MessageId": "fedcba98-7654-3210-fedc-ba9876543210", "TopicArn": "arn:aws:sns:us-east-1:123456789012:my-backup-topic", "Subject": "Notification from AWS Backup", "Message": "An AWS Backup access point expired. Access point ARN: arn:aws:backup:us-east-1:123456789012:accesspoint/my-access-point. Recovery point ARN: arn:aws:backup:us-east-1:123456789012:recovery-point:rp-1234567890abcdef0.", "Timestamp": "2026-07-28T18:30:05.789Z", "MessageAttributes": { "EventType": {"Type":"String","Value":"ACCESS_POINT_EXPIRED"}, "Status": {"Type":"String","Value":"EXPIRED"}, "AccountId": {"Type":"String","Value":"123456789012"}, "AccessPointArn": {"Type":"String","Value":"arn:aws:backup:us-east-1:123456789012:accesspoint/my-access-point"}, "CreationTime": {"Type":"String","Value":"2026-07-28T12:00:25.938846787Z"} } }

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 为服务主体。

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

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

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

注意

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