本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
删除未附加的 Amazon EBS 卷
概述
未连接(孤立)的 EBS 卷可能会给您的环境带来不必要的存储成本。 AWS 作为 AWS 环境卫生的一部分,必须定期审查和删除未使用和未使用的 EBS 卷。最佳做法是建立一个持续审查 EBS 卷使用情况的流程。您可以使用 AWS Compute Optimizer
Amazon EBS
亚马逊弹性区块存储 (Amazon EBS) Elastic Block Store 是一款块级设备,为亚马逊弹性计算云 (Amazon) 实例提供存储量。 EC2EBS 提供永久存储,可以灵活地连接和分离 EC2 实例。这意味着,即使 EC2 实例终止,EBS 卷的生命周期也会持续存在。该DeleteOnTermination属性是一项功能,用于控制在实例终止时是保留还是删除附加的 EBS 卷。默认情况下,根卷的属性被设置为 True,从而导致删除。对于其他卷,它被设置为 False,从而导致保留。
成本影响
未附加的 EBS 卷(也被称为未使用或孤立的卷)与已附加的卷所产生的费用相同,具体取决于预调配的存储大小和存储类型。尽管 Amazon EBS 的平均费用看似很低,仅为每 GB 每月 0.10 美元,但必须认识到,未使用的 EBS 卷的累积会随着时间的推移产生巨大的费用。
例如,假设保留 50 个未使用的 EBS 卷(每个卷预调配了 100GB 的存储大小),其影响情况如下表所示。
| 存储卷的数量 | 卷类型 | Size | 月度总费用 |
|---|---|---|---|
| 50 个卷 | gp2(0.10 美元) | 100 GB | 100 GB × 50 个 EBS 卷 × 0.10 美元/GB-月 = 500.00 美元 |
根据上表所示的情况,每月可节省约 500 美元,每年则可节省约 6000 美元。这是降低成本的有效举措。请务必将删除未连接的 EBS 卷作为 AWS 环境卫生的常规做法。
成本优化建议
您可以使用轻松 AWS 地自动删除未连接的 EBS 卷。例如,您可以使用 AWS Lambda、 AWS Config CloudWatch、Amazon 和,根据年限、标签和其他规格 AWS Systems Manager 来定义删除独立卷的标准。您还可以使用它们 AWS 服务 来大规模自动执行清理过程。
为避免产生意外后果,我们建议您在删除未附加的 EBS 卷之前先进行充分的调查。
管理未附加的 EBS 卷
我们建议您考虑以下最佳实践:
-
满足合规性要求:确认删除未附加的 EBS 卷的行为符合您所在组织的治理和合规性要求。
-
设置数据备份和保留策略:在删除未附加的 EBS 卷之前,请将所有重要数据备份到另一个存储库(例如 Amazon S3
)。在数据留存方面,Amazon EBS 快照是一种比 EBS 卷更经济实惠的数据保留方式,并且如果日后需要,还可以通过它们来恢复该卷。有关有效管理快照的更多信息,请参阅本指南的修改 Amazon EBS 快照部分。 -
检查依赖关系:检查未附加的 EBS 卷与其他 AWS 资源之间是否存在任何依赖关系。您可以使用 AWS 管理控制台 或 API 来收集有关您的 EBS 卷的描述性信息,例如大小、状态以及相关资源。这是防止意外删除任何暂时未附加资源的重要步骤。
-
创建保留策略:为未附加的 EBS 卷设定保留期限。这可以帮助您确定删除未连接卷的合适时间,从而确保您的 AWS 环境保持优化。例如,您可以创建 A mazon EventBridge 规则来按计划启动 Lambda 函数。Lambda 函数可以使用 AWS SDK 主动识别任何未连接的 EBS 卷,应用标记机制以便于跟踪,并在未连接的 EBS 卷达到或超过定义的阈值时发出通知。
-
标记未附加的 EBS 卷:标记 EBS 卷是一项有用的实践,它有助于根据诸如环境、应用程序或所有者等属性对卷进行分类和标识。在决定删除哪些未附加的卷时,这一点尤其有用,因为它能让您根据标签快速识别出不再需要的卷。
-
确保安全删除:查看 EBS 卷上一次被附加的时间,有助于您确定删除该卷是否安全。有关更多信息,请参阅如何使用 AWS CLI 命令列出特定 Amazon EBS 卷的附件或分离历史记录
? 在 AWS 知识中心中。 -
识别未充分利用的 EBS 卷 — 为了降低存储成本和维护优化的环境,强烈建议识别和删除未充分利用的 EBS 卷。 AWS AWS Trusted Advisor 并AWS Compute Optimizer可以帮助您识别未充分利用的 EBS 卷,并提供降低成本和提高效率的建议。例如,请参阅使用 () 设置自动优化 EBS 卷
、建立 Trusted Advisor 组织 AWS Trusted Advisor(TAOGitHub) 控制面板( Worksho AWS p Studio)和使用 AWS Compute Optimizer(AWS 存储博客)优化 Amazon EBS 卷的成 本。
自动清理未附加的 EBS 卷
我们建议您考虑使用以下工具来自动清理未附加的 EBS 卷:
-
AWS APIs (DescribeVolumes) — 您可以使用 AWS SDKs 或 AWS Command Line Interface (AWS CLI) 筛选和查找未连接的 EBS 卷。通过使用脚本或按计划运行的 Lambda 函数来实现此流程自动化,您可以节省时间和精力。中的示例脚本
GitHub 演示了其工作原理。该脚本使用 Lambda 来分析 AWS CloudTrail 日志并识别未连接的 EBS 卷。 -
AWS Systems Manager 自动化 — 这使您能够自动执行基础架构中的日常维护和补救任务。首先,请创建自动化运行手册,该手册会定义一系列按特定顺序执行的步骤。例如,您可以创建一个运行手册,其步骤首先是创建一个未附加 EBS 卷的快照,然后删除该卷本身。这可以帮助您将那些原本需要耗费大量时间且手动操作时容易出错的任务实现自动化。
-
AWS Config— 这使您能够评估、审计和跟踪 AWS 资源随时间推移而发生的变化。通过捕获配置更改,您可以使用 AWS Config 来评估环境中的合规性、治理和资源利用率。例如, AWS Config 可以识别未使用的 EBS 卷。此外,您可以将 AWS Systems Manager Automation 与关联 AWS Config 以自动修复未使用 EBS 卷的删除。
其他资源
-
使用 AWS Systems Manager和 AWS (规范性指南)删除未使用的亚马逊 Elastic Block Store (Amazon EB AWS Config S) 卷
-
通过删除未使用的 Amazon EBS 卷来控制 AWS 成本
(AWS 云运营和迁移博客) -
AWSConfigRemediation-DeleteUnusedEBSVolume(AWS Systems Manager 自动化运行手册参考)