AWS: миграция на другой тип инстанса с t2 на с5

Стал вопрос об переезде на другой тип инстанса, так как ресурсов нужно больше и тип 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 /

отлично, миграция прошла без проблем.

Click to rate this post!
[Total: 0 Average: 0]