Итак, я следил за замечательной статьей Эрика здесь: http://alestic.com/2009/12/ec2-ebs-boot-resize
В основном это был код, который мне помог увеличение размер AMI по умолчанию:
ec2-run-sintances ami-ID -n 1 --key keypair.pem --block-device-mapping "/dev/sda1=:250"
После запуска Ubuntu 11.10 мне даже не пришлось изменять размер диска, это сразу же стал диском на 250 ГБ.
Как мне уменьшить размер AMI по умолчанию ???
Я попытался:
ec2-run-sintances ami-ID -n 1 --key keypair.pem --block-device-mapping "/dev/sda1=:100"
Очевидно ... но мне сказали:
Client.InvalidBlockDeviceMapping: том размером 100 ГБ меньше снимка ####### <250>
Я использую следующий подход к уменьшению корневого тома EBS:
Остановите (не завершайте) целевой экземпляр и отсоедините корневой том EBS. Кроме того, вы можете сделать снимок корневого тома (или использовать существующий снимок) и создать на его основе новый том EBS. (например, / dev / xvda1)
Примечание: объем, который вы используете на шаге выше, будет изменен, поэтому вы можете сделать снимок, если вы этого еще не сделали.
Запустите экземпляр и присоедините к нему оба тома EBS.
Проверьте файловую систему (исходного корневого тома): (например,) e2fsck -f /dev/xvda1
Максимально уменьшить исходный корневой том: (например, ext2 / 3/4) resize2fs -M -p /dev/xvda1
Скопируйте данные с помощью dd:
Вычислите количество блоков (используя количество блоков из вывода resize2fs): blocks*4/(chunk_size_in_mb*1024) - round up a bit for safety
Скопируйте данные: (например,) dd if=/dev/xvda1 ibs=16M of=/dev/xvdg obs=16M count=80
Измените размер файловой системы на новом (меньшем) томе EBS: (например,) resize2fs -p /dev/xvdg
Проверьте файловую систему (исходного корневого тома): (например,) e2fsck -f /dev/xvdg
Отсоедините новый корневой том EBS и присоедините его к исходному экземпляру.
Лучший способ уменьшить размер - создать новый пустой (маленький) том и скопировать файловую систему со старого (большого) тома.
AMI загрузки EBS основаны на снимках состояния. Если у вас есть AMI, вы можете создать том из моментального снимка, чтобы скопировать его. Присоедините оба тома к работающему экземпляру копии.
Мои любимые варианты rsync в Ubuntu:
rsync -PaSHAX /bigvol/ /smallvol/
Эти параметры сохраняют такие вещи, как право собственности, разрешения, ссылки и многое другое.
Отсоедините тома и создайте снимок нового, меньшего размера.
Зарегистрируйте новый (небольшой) снимок как AMI, указав ту же архитектуру и AKI (ядро), что и исходный AMI.