Som-uka/ebs-encryption-migration
GitHub: Som-uka/ebs-encryption-migration
这是一个AWS EBS存储修复项目,旨在加密未加密卷、将存储类型从gp2迁移到gp3并清理未挂载卷以优化环境。
Stars: 0 | Forks: 0
# EBS加密与 gp2 → gp3 迁移
修复整个AWS环境中未加密的EBS卷和遗留的gp2存储,涵盖启用加密、将存储类别升级至gp3,以及清理未挂载的卷。
## 概述
本项目记录了针对一个AWS环境的EBS存储态势修复工作,该环境中所有挂载的卷都未加密,且大部分使用的是旧的gp2存储类型。
范围:
- 加密所有EBS卷(已挂载和未挂载)
- 从gp2迁移至gp3以获得成本和性能改进
- 识别并清理未挂载的卷
## 存储清单(迁移前)
| 发现项 | 数量 |
|---|---|
| EBS卷总数 | 46 |
| 未加密的卷 | 46 (100%) |
| gp2卷 | 44 |
| 未挂载的卷 | 5 |
## 为何选择gp3?
| 属性 | gp2 | gp3 |
|---|---|---|
| 基准IOPS | 3 IOPS/GB(可突发) | 3,000 IOPS(固定) |
| 最大吞吐量 | 250 MB/s | 1,000 MB/s |
| 成本 | 基准 | 约便宜20% |
gp3是AWS当前推荐的通用型SSD。对于大多数工作负载,从gp2迁移到gp3可以在零停机时间内免费提升性能和降低成本。
## 加密方案
EBS卷无法原地加密。针对每个卷的处理流程:
```
# 创建现有卷的快照
aws ec2 create-snapshot \
--volume-id \
--description "Pre-encryption snapshot"
# 复制启用加密的快照
aws ec2 copy-snapshot \
--source-region us-east-1 \
--source-snapshot-id \
--encrypted --kms-key-id alias/aws/ebs
# 从加密快照创建新的加密 gp3 卷
aws ec2 create-volume \
--snapshot-id \
--volume-type gp3 --encrypted \
--availability-zone us-east-1a
# 卸载旧卷,挂载新的加密卷
aws ec2 detach-volume --volume-id
aws ec2 attach-volume \
--volume-id \
--instance-id --device /dev/xvda
```
## gp2 → gp3 升级(零停机)
```
# 实时修改卷类型,无需停机
aws ec2 modify-volume \
--volume-id --volume-type gp3
# 监控修改进度
aws ec2 describe-volumes-modifications \
--volume-ids \
--query 'VolumesModifications[*].{Status:ModificationState,Progress:Progress}'
```
## 启用默认加密
```
# 今后强制对所有新 EBS 卷进行加密
aws ec2 enable-ebs-encryption-by-default
aws ec2 get-ebs-encryption-by-default
```
## 仓库结构
```
ebs-encryption-migration/
├── README.md
├── findings/
│ └── volume-inventory.md
├── change-records/
│ ├── CR-ebs-default-encryption.md
│ ├── CR-gp2-to-gp3-migration.md
│ └── CR-unattached-volume-cleanup.md
└── scripts/
├── audit-ebs-volumes.sh
├── encrypt-volume.sh
└── upgrade-gp2-to-gp3.sh
```
## 技术栈
- AWS EC2, EBS, KMS, AWS CLI
- Bash
## 架构图

标签:AWS, AWS CLI, DPI, EBS存储, gp3迁移, IOPS优化, SSD优化, 云计算, 加密, 卷加密, 吞吐量提升, 存储优化, 存储安全, 存储类升级, 安全合规, 应用安全, 快照管理, 成本优化, 漏洞利用检测, 漏洞扫描器, 网络代理, 规则引擎, 资源清理, 运维自动化