Стал вопрос об переезде на другой тип инстанса, так как ресурсов нужно больше и тип t2 уже не подходит, упал выбор на с5. Подробнее про типы инстансов смотрим здесь.
Для тестирования поднят тестовый сервер с типом t2, после чего остановил его, в настройках изменил тип и снова запустил. Инстанс поднялся, но почему, то не работает. Стал смотреть логи через AWC console и увидел что сервер никак не может примонтировать диск. По данной проблеме пошел читать документацию и нашел ответ здесь >>>.
В общем есть целый список рекомендаций, что нужно сделать и проверить перед миграцией, но в моем случае была проблема с дисками. Если кратко, то старые типы инстансов не поддерживают NVME и у них не установлен драйвер для этого, а у новых есть поддержка. Вот почему инстанс не может запуститься так как диск хочет примонтироваться как /dev/xvda1.
Для того чтоб не возникло никаких проблем с переходом на другой тип нужно следующее:
- проверить содержимое файла /etc/fstab на явность автоматического монтирования не по UUID, а по имени устройства (/dev/xvda1). Если такая запись есть, нужно заменить ее на использование UUID;
- установить драйвер nvme;
- остановить инстанс и изменить его тип.
Приступим к проверке.
Подключаемся к тестовому инстансу и проверяем cодержимое файла /etc/fstab:
admin@ip-172-31-10-216:~$ cat /etc/fstab # /etc/fstab: static file system information UUID=5db68868-2d70-449f-8b1d-f3c769ec01c7 / ext4 rw,discard,errors=remount-ro,x-systemd.growfs 0 1 UUID=72C9-F191 /boot/efi vfat defaults 0 0
как видим в файле нет указания на монтирование с использованием имени девайса, используется только UUID.
Далее посмотрим список доступных блочных устройств используя команду lsblk:
admin@ip-172-31-10-216:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk |-xvda1 202:1 0 7.9G 0 part /
устанавливаем драйвер:
admin@ip-172-31-10-216:~$ sudo apt install nvme-cli
Заходим в AWS Console, останавливаем инстанс EC2 –> Instanсe State –> Stop Instanсe:
меняем его тип EC2 — Action — Instanсe Setting – Change Instanсe Type:
выбрали c5.large, жмем Apply.
Запускаем инстанс EC2 –> Instance State –> Start Instance, после чего ждем когда он поднимется и попробуем к нему подключиться:
Подключиться удалось, еще раз проверим список блочных устройств:
admin@ip-172-31-10-216:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme0n1 259:0 0 8G 0 disk |-nvme0n1p1 259:1 0 7.9G 0 part /
отлично, миграция прошла без проблем.