概述说明
在生产环境中,我们经常需要为业务系统进行数据备份防止各种突发的异常问题。创建快照是最方便的一种数据安全手段,它有两种方式来进行快照创建。参考如下:
- 生命周期管理器
- Cloudwatch规则配置
生命周期管理方式
您可以使用 Amazon 数据生命周期管理器 来自动创建、保留和删除为备份 Amazon EBS 卷而制作的快照。自动化快照管理可以帮助您:
- 通过实施定期备份计划来保护重要数据。
- 按照审核员的要求或内部合规性保留备份。
- 通过删除过时的备份来降低存储成本。
与 Amazon CloudWatch Events 和 AWS CloudTrail 的监控功能结合使用,Amazon 数据生命周期管理器 可为 EBS 卷提供完整备份解决方案,而无需额外费用。
※ 这里指的无需额外费用指Amazon CloudWatch Events 与 AWS CloudTrail 等组件组合运用免费,而不是指备份快照所产生的存储空间等免费。
创建生命周期策略
菜单导航:服务 > EC2 > ELASTIC BLOCK STORE > 生命周期管理
生命周期策略需提供以下信息:
- Description (描述) – 策略的描述。
- 资源类型 – 要备份的资源的类型。使用 VOLUME 创建单个卷的快照,或使用 INSTANCE 从实例的卷创建多卷快照。
- Target with these tags (具有这些标签的目标) – 标识要备份的卷或实例的资源标签。
- Lifecycle policy tags (生命周期策略标签) – 生命周期策略的标签。
- Schedule name (计划名称) – 计划的名称。
- Run policy every n Hours (每 n 小时运行一次策略) – 运行两次策略间隔的小时数。支持的值为 1、2、3、4、6、8、12 和 24。
- Starting at hh:mm UTC (开始时间 - 小时:分钟 UTC) – 计划开始运行策略的时间。第一次策略运行在计划时间之后的一小时内开始。它是以UTC时间为计算起点,而非当地时间为计算起点!
- 保留 – 您可以基于快照的总计数或每个快照的存在时间保留快照。
- 对于基于计数的保留,范围是 1 到 1000。在达到最大计数后,将在创建新快照时删除最早的快照。
- 对于基于存在时间的保留,范围是 1 天到 100 年。在每个快照的保留期过期后,将删除它。保留期应大于或等于创建间隔。
- Cross Region copy (跨区域复制) – 您可以将每个快照复制到最多三个其他区域。对于每个区域,您可以选择不同的保留策略,以及是复制所有标签还是不复制任何标签。如果源快照已加密或默认启用加密,则会加密快照副本。如果源快照未加密,您可以启用加密。如果未指定 CMK,则会在每个目标区域中使用 EBS 加密的默认**对快照进行加密。您必须确保没有超过每个区域的并发快照副本数。
- Tagging information (标记信息) – 选择是否将源卷上的所有用户定义的标签复制到该策略创建的快照。除了 Amazon 数据生命周期管理器 应用的标签以外,您还可以为快照指定其他标签。如果资源类型为 INSTANCE,则可以选择使用以下变量标签来自动标记快照:instance-id 和 timestamp。变量标签的值在添加标签时确定。
- Fast snapshot restore (快速快照还原) – 选择是否启用快速快照还原以及在哪个可用区中启用。您还可以指定可启用快速快照还原的最大快照数。此选项将会产生额外费用,普通EBS Snapshots约$0.05 per GB-month,而Fast Snapshot Restore约$0.75 per 1 DSU hour in each AZ it is enabled(Data Services Unit-Hours (DSUs))
- IAM role (IAM 角色) – 有权创建、删除和描述快照以及描述卷的 IAM 角色。AWS 提供一个默认角色 AWSDataLifecycleManagerDefaultRole,您也可以创建自定义 IAM 角色。
- Policy status after creation (创建后的策略状态) – 选择 Enable policy (启用策略) 以在下个计划时间开始运行策略,或者选择 Disable policy (禁用策略) 以禁止运行策略。
监控快照生命周期
策略创建的每个快照均具有时间戳以及与策略相关的标签。您可以使用标签来筛选快照以验证是否按预期创建备份。我们可以有如下方式来监控:
- 控制台人工监控;
- CLI脚本方式监控;
- AWS Lambda关联CloudWatch Events以编程方式处理策略事件通知;当创建快照的操作完成后,系统会将 createSnapshot 事件发送至您的 AWS 账户。不过,不会保存、记录或存档该事件。此事件的结果可能是 succeeded 或 failed。
参考https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/ebs-cloud-watch-events.html#create-snapshot-complete
Cloudwatch规则配置
通过这种方式创建的快照,是不会自动删除的,就是会将创建的快照一直保存。
如果你要通过此方法来创建快照,优势是可以以分钟为单位创建快照,劣势是你无法大规模设定(因为你需要知道卷ID,才可以设置规则)。
补充信息
从快照还原卷时,您将在过去的特定点重新创建其状态,而所有数据均保持不变。通过将还原的卷附加到实例,您可以跨区域复制数据,创建测试环境,整体替换损坏或损坏的生产卷,或者检索特定的文件和目录并将它们传输到另一个附加卷。
言下之意,你不可以直接将快照直接恢复到现有实例实施覆盖(现有实例关机也不可以)。你可以针对故障的部分实施还原,然后挂载其他数据,比如操作系统异常,则恢复操作系统将原有数据盘进行挂载启动恢复业务系统运行。
参考信息
https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/snapshot-lifecycle.html