Вопрос:
Как мне использовать новые классы AWS EC2 (r3, i2) с существующим AMI, не воссоздавая всю настройку системы?
Новые классы EC2 поддерживают только виртуализацию на основе HVM, но у меня есть только образы PVM AMI.
amazon-web-services
amazon-ec2
amazon-ami
user3760692
источник
источник
Ответы:
Ответ:
Запустите Ubuntu HVM linux, любую версию, новую
Запустите Ubuntu / с моим существующим AMI / PVM linux и установите на них пакеты grub:
apt-get install grub-pc grub-pc-bin grub-legacy-ec2 grub-gfxpayload-lists
Остановить PVM linux
Отсоединить корневой раздел (/ dev / sda1) в PVM linux
Прикрепите корневой раздел PVM linux к где-нибудь запущенному HVM linux, например: / dev / sdf
В HVM linux:
mkdir -p /mnt/xvdf && mount /dev/xvdf /mnt/xvdf
rsync -avzXA /boot/ /mnt/xvdf/boot/
mount -o bind /dev /mnt/xvdf/dev && mount -o bind /dev/pts /mnt/xvdf/dev/pts && mount -o bind /proc /mnt/xvdf/proc && mount -o bind /sys /mnt/xvdf/sys
chroot /mnt/xvdf
grub-install --no-floppy --recheck --force /dev/xvdf
update-grub2
выйти из chroot: CTRL + D
остановить HVM Linux
отсоединить / dev / sda1 оригинальный корень И отсоединить / dev / sdf корень PVM
прикрепите корень PVM к HVM linux как / dev / sda1
Запустите HVM linux, вуаля!
Создайте новый образ AMI из запущенного HVM linux, он будет виртуализирован HVM.
источник
warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged.. /usr/sbin/grub-bios-setup: error: will not proceed with blocklists.
Тогда все выглядит хорошо, но не загружается и не дает мне никаких подсказок, почему не загружается.xvd*
на этих экземплярах, есть толькоnvme*
наименования. Заменаxvd
на правильныйnvme
не работает. :(Ответ от @divyenduz работает, но требует некоторой очистки и разъяснения для современного (примерно 2019 г.) AWS EC2. Важно отметить, что современные классы экземпляров по-разному переводят имя устройства.
Вот мои измененные шаги.
Для наглядности узлами являются:
ПЕРЕД ПРОДОЛЖЕНИЕМ: сделайте резервную копию исходного узла PVM01
Установите необходимые компоненты на узле PVM01
установить пакеты grub на PVM01
Остановить узел PVM01
Подключите корневой раздел PVM01 (новый том с предыдущего шага) к новому HVM01 / dev / sdf
ssh PVM01 sudo fdisk -l
На HVM01:
Выйдите из chroot с помощью CTRL + D
источник
DEVNAME
переменную послеchroot
команды.