I'm baking an AMI from a database server which has 300GB root volume. 80% of the volume is in use. Reason behind baking the AMI is that we need multiple new instances with the exact same data everyday. AMI is the appropriate solution because the restoration process is extremely slow. So the data restoration process can't be initiated after creating the instances. We want instances to be ready in 7-8 minutes with all the data.
But, the performance in the new instances is extremely poor. The reason behind it is the instances use EBS and that needs to be initialized as described in this doc.
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-initialize.html
Unfortunately, the initialization process takes 5-6 hours and which is not a solution for us.
So, what is the best practice to bake an AMI when the underlying data needs to be in AMI is really big?