优化大EBS卷初始化(预热)

时间:2017-09-18 17:16:15

标签: amazon-web-services amazon-ec2 ami ec2-ami

我从具有300GB根卷的数据库服务器烘焙AMI。 80%的音量正在使用中。烘焙AMI背后的原因是我们每天需要多个具有完全相同数据的新实例。 AMI是合适的解决方案,因为恢复过程非常缓慢。因此,在创建实例之后无法启动数据恢复过程。我们希望实例在7-8分钟内准备好所有数据。

但是,新实例中的表现极差。其背后的原因是实例使用EBS,需要按照本文档中的描述进行初始化。

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-initialize.html

不幸的是,初始化过程需要5-6个小时,这对我们来说不是解决方案。

那么,当底层数据需要在AMI中时,烘焙AMI的最佳做法是什么?

1 个答案:

答案 0 :(得分:0)

现在,我在初始化EBS卷方面有很多帮助。

AWS建议ddfio初始化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 &"