还原 Amazon Redshift 集群 - AWS Backup

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

还原 Amazon Redshift 集群

您可以在 AWS Backup 控制台中或通过 CLI 还原自动和手动快照。

在还原 Amazon Redshift 集群时,默认情况下将原始集群设置输入到控制台中。您可以为以下配置指定不同的设置。在还原表时,必须指定源数据库和目标数据库。有关这些配置的更多信息,请参阅《Amazon Redshift 管理指南》中的从快照还原集群

  • 单个表或集群:您可以选择还原整个集群或单个表。如果您选择还原单个表,则需要提供源数据库、源架构和源表名称,以及目标集群、架构和新表名称。

  • 节点类型:每个 Amazon Redshift 集群均由一个领导节点和至少一个计算节点组成。在还原集群时,您需要指定符合您的 CPU、RAM、存储容量和驱动器类型要求的节点类型。

  • 节点数:在还原集群时,您需要指定需要的节点数量。

  • 配置摘要

  • 集群权限

使用 AWS Backup 控制台还原 Amazon Redshift 集群或表

  1. 打开 AWS Backup 控制台,网址为:https://console.aws.amazon.com/backup

  2. 在导航窗格中,选择设置和要还原的 Amazon Redshift 资源 ID。

  3. Resource details (资源详细信息) 页面上,将显示所选资源 ID 的恢复点列表。要还原资源,请在恢复点窗格中,选择资源的恢复点 ID 旁边的单选按钮。在窗格的右上角,选择还原

  4. 还原选项

    1. 从快照还原集群,或者

    2. 将快照中的单个表还原到新集群。如果选择此选项,则必须配置以下各项:

      1. 开启或关闭区分大小写的名称。

      2. 输入源表值,包括数据库、架构和表。源表信息可以在 Amazon Redshift 控制台中找到。

      3. 输入目标表值,包括数据库、架构和新表名称。

  5. 指定新的集群配置设置。

    1. 对于集群还原:选择集群标识符、节点类型和节点数量。

    2. 指定可用区和维护时段。

    3. 您可以通过单击关联 IAM 角色关联其他角色。

  6. 可选:其他配置:

    1. 默认情况下,使用默认值处于开启状态。

    2. 使用下拉菜单选择网络和安全、VPC 安全组、集群子网组和可用区的设置。

    3. 开启或关闭增强型 VPC 路由

    4. 确定是否要使您的集群端点可公开访问。如果是,VPC 之外的实例和设备可以通过集群端点连接到您的数据库。如果将其开启,请输入弹性 IP 地址。

  7. 可选:数据库配置。您可以选择输入

    1. 数据库端口(通过在文本字段中键入)

    2. 参数组

  8. 维护:您可以选择

    1. 维护时段

    2. 维护记录,从当前、尾随或预览中进行选择。这控制将在维护时段内应用的集群版本。

  9. 自动快照设置为默认值。

    1. 自动快照保留期。保留期必须为 0 到 35 天。选择 0 将不创建自动快照。

    2. 手动快照保留期为 1 到 3653 天。

    3. 有一个可选复选框用于集群重新定位。如果选中此复选框,则允许将您的集群重新定位到另一个可用区。启用重新定位后,您可以使用 VPC 端点。

  10. 监控:集群恢复后,您可以通过 CloudWatch 或 Amazon Redshift 设置监控。

  11. 选择要传递的用于执行还原的 IAM 角色。您可以使用默认角色或指定其他角色。

您的还原作业将显示在作业下。您可以通过单击刷新按钮或 CTRL-R 来查看还原作业的当前状态。

使用 API、CLI 或 SDK 还原 Amazon Redshift 集群

使用 StartRestoreJob 还原 Amazon Redshift 集群。

要使用 AWS CLI 还原 Amazon Redshift,请使用命令 start-restore-job 并指定以下元数据:

ClusterIdentifier // required string AdditionalInfo // optional string AllowVersionUpgrade // optional Boolean AquaConfigurationStatus // optional string AutomatedSnapshotRetentionPeriod // optional integer 0 to 35 AvailabilityZone // optional string AvailabilityZoneRelocation // optional Boolean ClusterParameterGroupName // optional string ClusterSecurityGroups // optional array of strings ClusterSubnetGroupName // optional strings DefaultIamRoleArn // optional string ElasticIp // optional string Encrypted // Optional TRUE or FALSE EnhancedVpcRouting // optional Boolean HsmClientCertificateIdentifier // optional string HsmConfigurationIdentifier // optional string IamRoles // optional array of strings KmsKeyId // optional string MaintenanceTrackName // optional string ManageMasterPassword // optional Boolean ManualSnapshotRetentionPeriod // optional integer MasterPasswordSecretKmsKeyId // optional string NodeType // optional string NumberOfNodes // optional integer OwnerAccount // optional string Port // optional integer PreferredMaintenanceWindow // optional string PubliclyAccessible // optional Boolean ReservedNodeId // optional string SnapshotClusterIdentifier // optional string SnapshotScheduleIdentifier // optional string TargetReservedNodeOfferingId // optional string VpcSecurityGroupIds // optional array of strings RestoreType // CLUSTER_RESTORE or TABLE_RESTORE

有关更多信息,请参阅《Amazon Redshift API 参考》中的 RestoreFromClusterSnapshot 和《AWS CLI 指南》中的 restore-from-cluster-snapshot

示例模板如下:

aws backup start-restore-job \ -\-recovery-point-arn "arn:aws:backup:region:account:snapshot:name -\-iam-role-arn "arn:aws:iam:account:role/role-name" \ -\-metadata -\-resource-type Redshift \ -\-region AWS 区域 -\-endpoint-url URL

示例如下:

aws backup start-restore-job \ -\-recovery-point-arn "arn:aws:redshift:us-west-2:123456789012:snapshot:redshift-cluster-1/awsbackup:job-c40dda3c-fdcc-b1ba-fa56-234d23209a40" \ -\-iam-role-arn "arn:aws:iam::974288443796:role/Backup-Redshift-Role" \ -\-metadata 'RestoreType=CLUSTER_RESTORE,ClusterIdentifier=redshift-cluster-restore-78,Encrypted=true,KmsKeyId=45e261e4-075a-46c7-9261-dfb91e1c739c' \ -\-resource-type Redshift \ -\-region us-west-2 \

还可以使用 DescribeRestoreJob 帮助获取还原信息。

在 AWS CLI 中,使用操作 describe-restore-job 并使用以下元数据:

Region

示例模板如下:

aws backup describe-restore-job —restore-job-id restore job ID -\-region AWS 区域

示例如下:

aws backup describe-restore-job -\-restore-job-id BEA3B353-576C-22C0-9E99-09632F262620 \ -\-region us-west-2 \