从同一 EBS 卷的几个快照的最后一个 EBS 快照创建 EBS 卷

问题描述 投票:0回答:3

我有一个 EBS 支持的 EC2 实例。我为 EBS 卷拍摄了几次快照,例如 s1、s2、s3,其中 s3 是最后一次拍摄的快照。现在,我需要启动另一个 EBS 支持的 EC2 实例,并且还想将之前拍摄的快照应用到新实例的 EBS 卷上。我知道 EBS 快照是增量拍摄的,这意味着只会捕获自上次快照以来发生更改的块。我想知道如果我只将最后一个快照 (s3) 应用到新的 EBS 卷,这是否意味着 s1 和 s2 中捕获的数据不会到达新卷?或者换句话说,我是否需要按顺序手动将 s1、s2、s3 应用到新卷上才能获得完整的数据集?

snapshot amazon-ebs
3个回答
2
投票

当您从 s3 的 EBS 快照启动新映像时,您将获得创建 s3 时 EBS 实例所处的完整状态。

快照是使用增量方法创建的,以提高性能,但您将从给定的快照中恢复与整个系统一致的状态。

即使快照是增量保存的,当您删除快照时,也只会删除任何其他快照不需要的数据。因此,无论删除了哪些先前的快照,所有活动快照都将包含恢复卷所需的所有信息。

http://aws.amazon.com/ebs/


0
投票

试试这个

schemaVersion: "2.2"

描述:“本文档使用主机名从 EC2 实例中获取所有关联卷的快照,并通过维护时段运行。”

阶段:

  • 名称:get_instance_hostnames 脚步:
    • 名称:describe_instances 操作:aws:DescribeInstances 输入: 过滤器: - 名称:州名 值:[运行]

    • 名称:loop_through_instances 动作:控制:ForEach 输入: 表达式:$.Instances 参数: - 名称:实例 ID 值:“<< $.InstanceId >>” - 名称:主机名 值:“<< $.Hostname >>”

    • 名称:describe_volumes 操作:aws:DescribeVolumes 输入: 过滤器: - 名称:附件.实例 ID 值:[<< .step.parameters.InstanceId >>]

    • 名称:loop_through_volumes 动作:控制:ForEach 输入: 表达式:$.Volumes 参数: - 名称:卷 ID 值:“<< .VolumeId >>”

    • 名称:create_snapshot 操作:aws:CreateSnapshot 输入: 卷 ID:“<< .step.parameters.VolumeId >>” 描述:“实例快照<< .step.parameters.Hostname >>”


0
投票
schemaVersion: "2.2"

描述:“为 EC2 实例的所有卷创建快照” 假设角色:“{{ AutomationAssumeRole }}” 参数:{}

主要步骤:

  • 名称:describeInstances 操作:aws:executeAwsApi 输入: 服务:ec2 API:描述实例 过滤器: - 名称:州名 值:[运行]

  • 名称:loopThroughInstances 操作:aws:forEach 输入: 输入列表:$.Instances 最大并发数:1 超时秒数:1800 行动: 操作:aws:executeAwsApi 输入: 服务:ec2 API:描述卷 实例ID:“<< $.InstanceId >>”

  • 名称:loopThroughVolumes 操作:aws:forEach 输入: 输入列表:$.Volumes 最大并发数:1 超时秒数:1800 行动: 操作:aws:executeAwsApi 输入: 服务:ec2 API:创建快照 卷 ID:“<< $.VolumeId >>” 描述:“实例快照<< $.Hostname >>”

© www.soinside.com 2019 - 2024. All rights reserved.