Ash*_*sta 1 amazon-ec2 amazon-web-services ec2-ami amazon-ami
我正在从具有 300GB 根卷的数据库服务器烘焙 AMI。80% 的容量正在使用中。烘焙 AMI 背后的原因是我们每天需要多个具有完全相同数据的新实例。AMI 是合适的解决方案,因为恢复过程非常缓慢。因此创建实例后无法启动数据恢复过程。我们希望实例在 7-8 分钟内准备好所有数据。
但是,新实例中的性能非常差。其背后的原因是实例使用 EBS 并且需要按照本文档中的描述进行初始化。
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-initialize.html
不幸的是,初始化过程需要 5-6 小时,这对我们来说不是一个解决方案。
那么,当 AMI 中需要的底层数据非常大时,烘焙 AMI 的最佳实践是什么?
现在,我有一些对初始化 EBS 卷有很大帮助的东西。
AWS 建议dd或fio用于初始化 EBS 卷。运行单个dd进程需要太多时间。因此,使用多个进程dd从给定块中提取一小块数据使得初始化过程非常快。
nohup seq 0 $(($(cat /sys/block/xvda/size) / (1 << 10))) | xargs -n1 -P8 -I {} sudo dd if=/dev/xvda of=/dev/null skip={}k count=1 bs=512 > /dev/null 2>&1 &"
| 归档时间: |
|
| 查看次数: |
2185 次 |
| 最近记录: |