48. Миграция Home Assistant с VMWare Workstation на Proxmox.
Дано:
Компьютер (А) с операционной системой Windows, в которой установлен VMWare Workstation внутри которого есть виртуальная машина с Home Assistant.
Другой компьютер (Б) , с Proxmox на борту, находящийся в этой же сети.
Задача:
Сделать так, чтобы виртуалка переехала с компьютера А на Б, с минимумом потерь данных.
В рассматриваемом примере эту миграцию можно сделать несколькими способами:
- Создать в проксмоксе новую виртуалку с ХА со свежего дистрибутива, заново создать и добавить все сущности (дав им те же имена как и на системе А), установить и настроить необходимые компоненты, Вручную скопировать код интерфейса и остальных настроек.
- Создать в проксмоксе новую виртуалку с ХА со свежего дистрибутива, установить Google drive backup вместе со всеми остальными дополнениями, и надеяться что после скачивания и развёртывания бэкапа всё заработает.
- Способ аналогичный предыдущему, но только с помощью встроенных средств ХА.
- Взять имеющуюся готовую рабочую машину и просто скопировать её из одной среды в другую. Со всем содержимым, как есть.
Последний пункт является самым правильным и в то же время интересным. Немного теории чтобы было понятнее.
Виртуальная машина, по сути, это обычный файл, в определённом формате, содержащий в себе информацию о самой виртуалке, её "железе", а так же хранящий в себе диски с загрузочной (а возможно не только) информацией. Файлы созданные в одном гипервизоре далеко не всегда пригодны для использования в другом.
Теперь задача обрастает новыми подробностями и становится ясно, что простым копированием тут не обойтись. Нужно будет этот файл ещё и преобразовать из одного формата в другой.
А самое главное - это обеспечить сохранность данных и работу всей системы умного дома.
Приступим.
Вариант #1 - обычный.
Первым делом ненадолго полностью выключим текущую машину (A) и сделаем её копию - клона.
Выбираем полное клонирование текущего состояния. Это создаст отдельную и независимую от оригинальной машины копию виртуалки.
Важное замечание - с этого момента мы работаем с копией оригинальной машины. Копия выключена, в то время как оригинал продолжает выполнять свою роль.
Теперь надо "закинуть" этот файл в проксмокс. Для этого воспользуемся утилитой WinSCP.
Чтобы не запутаться, скопируем файл vmdk в директорию образов виртуалок. В данном примере,
для образов и резервных копий, выделен отдельный физический диск. Он
виден в системе как устройство /dev/sda и смонтирован в качестве
каталога с именем WD.
Подключаемся через WinSCP к проксмоксу, идём в вышеназванную директорию и копируем туда vmdk файл клонированной машины.
До или после копирования важно поменять имя файла, в формат подходящий для проксмокса. Он должен содержать в себе имя (номер) будущей виртуальной машины.
Следующей операцией будет конвертация этого файла в "сырой" формат, который сможет понять Proxmox. Для этого воспользуемся следующей командой: qemu-img convert -p -O raw /mnt/pve/WD/template/iso/vm-104-disk-0.vmdk /mnt/pve/WD/template/iso/vm-104-disk-0.raw
Теперь создадим новую виртуальную машину для Home Assistant'а. Повторим те же шаги по ручному созданию виртуалки из этой статьи. Обращаем внимание на номер машины, он должен совпадать с числом указанном в имени файла.
Сейчас вместо диска с образом, импортируем сконвертированный RAW файл: qm importdisk 104 /mnt/pve/WD/template/iso/vm-104-disk-0.raw local-lvm
На этом можно было бы и закончить, однако доведём всё до идеала.
Для начала выключаем работающий сервер Home Assistant. Пока он выключается, берём сохранённый ранее МАК адрес его сетевой карты, и назначаем его в сетевой карте новой виртуалки в проксмоксе.
Очень важно следить за состоянием загрузки через консоль виртуалки.
Вариант #2 -продвинутый.
Создаём кластер из двух гипервизоров - нового виртуального и уже работающего на отдельном железе.
Выполняем все действия из первого способа (на компе это будет происходить гораздо быстрее) в новом виртуальном проксмоксе.
Делаем миграцию машины и её дисков с виртуального гипервизора на физический.
Разбиваем и удаляем кластер.
Комментарии
Отправить комментарий