wiki:technical:proxmox:openvz_kvm
Различия
Показаны различия между двумя версиями страницы.
Следующая версия | Предыдущая версия | ||
wiki:technical:proxmox:openvz_kvm [2024/09/14 15:25] – создано Diman | wiki:technical:proxmox:openvz_kvm [2025/02/03 00:13] (текущий) – [Миграция] Diman | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
====== Миграция из контейнера (openvz, lxc) в KVM ====== | ====== Миграция из контейнера (openvz, lxc) в KVM ====== | ||
+ | ===== Подготовка к миграции ===== | ||
+ | На целевом сервере следует создать виртуалку со схожими с контейнером параметрами и загрузиться в linux live CD (GRML). Размечаем диск одним разделом и создаем на нем файловую систему (рекомендуется **ext3**). Также | ||
+ | ===== Миграция ===== | ||
+ | |||
+ | <code bash> | ||
+ | |||
+ | # Монтируем диск на сервере с KVM | ||
+ | mount /dev/sda1 /mnt | ||
+ | |||
+ | # Копируем данные из источника (с ноды openvz или из другого контейнера) | ||
+ | rsync -aAX --info=progress2 root@ovz_node:/ | ||
+ | |||
+ | |||
+ | # После завершения копирования монтируем все, что требуется для работы | ||
+ | # и переходим в гостевую ОС системы | ||
+ | # | ||
+ | mount --bind /proc /mnt/proc | ||
+ | mount --bind /dev /mnt/dev | ||
+ | mount --bind /dev/pts / | ||
+ | mount --bind /sys /mnt/sys | ||
+ | chroot /mnt bash | ||
+ | |||
+ | # Заменяем fstab | ||
+ | echo '/ | ||
+ | |||
+ | # resolv.conf | ||
+ | # | ||
+ | rm / | ||
+ | echo ' | ||
+ | |||
+ | # | ||
+ | # Установка ядра - ищем самое свежее | ||
+ | # Для некоторых ОС ниже см. рабочие примеры установки ядра | ||
+ | # | ||
+ | |||
+ | # ubuntu | ||
+ | # Ставим свежее ядро | ||
+ | |||
+ | apt install -y linux-image-generic linux-headers-generic | ||
+ | |||
+ | # Можно поискать требуемое ядро | ||
+ | apt search linux-image | grep generic | grep -v unsigned | ||
+ | |||
+ | # И установить именно его | ||
+ | # ubuntu 22.04 | ||
+ | apt install -y linux-image-6.8.0-40-generic linux-headers-generic | ||
+ | |||
+ | # ubuntu 20.04 | ||
+ | apt install -y linux-image-5.4.0-99-generic linux-headers-generic | ||
+ | |||
+ | # debian 10,11,12 | ||
+ | |||
+ | apt install -y linux-image-amd64 linux-headers-amd64 grub2 | ||
+ | |||
+ | # debian 11 | ||
+ | apt update | ||
+ | apt install -y linux-image-5.10.0-31-amd64 linux-headers-5.10.0-31-amd64 grub2 | ||
+ | |||
+ | # Исправление GRUB | ||
+ | vi / | ||
+ | |||
+ | GRUB_CMDLINE_LINUX_DEFAULT=" | ||
+ | GRUB_CMDLINE_LINUX=" | ||
+ | |||
+ | ### | ||
+ | # конфигурируем сеть. у меня виртуалка получает IP по DHCP | ||
+ | ## | ||
+ | |||
+ | echo '### https:// | ||
+ | auto lo | ||
+ | iface lo inet loopback | ||
+ | |||
+ | auto eth0 | ||
+ | iface eth0 inet dhcp' > / | ||
+ | |||
+ | grub-install /dev/sda | ||
+ | update-grub | ||
+ | |||
+ | update-initramfs -u | ||
+ | |||
+ | </ | ||
+ | |||
+ | в непонятных случаях помогает скрипт в кроне: | ||
+ | <code bash> | ||
+ | |||
+ | #!/bin/bash | ||
+ | |||
+ | iptables -F | ||
+ | iptables -X | ||
+ | iptables -P INPUT ACCEPT | ||
+ | iptables -P OUTPUT ACCEPT | ||
+ | ifconfig eth0 inet 91.194.3.25 | ||
+ | ip r a default via 91.194.3.126 dev eth0 | ||
+ | systemctl > / | ||
+ | service ssh restart | ||
+ | </ | ||
+ | |||
+ | ===== Особенности переноса данных на выделенные серверы ===== | ||
+ | При переносе данных с виртуальных машин и выделенных серверов на выделенные серверы следует до начала переноса создать разметку на дисках целевого сервера, | ||
+ | ==== Копирование данных ==== | ||
+ | |||
+ | <code bash> | ||
+ | # | ||
+ | # Исключение лишних директорий и файлов при копировании. | ||
+ | # | ||
+ | |||
+ | rsync -aAX --info=progress2 --exclude={' | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Установка загрузчика, | ||
+ | |||
+ | <code bash> | ||
+ | |||
+ | mount /dev/sdXY /mnt | ||
+ | mount /dev/sdXX / | ||
+ | |||
+ | for i in /dev /dev/pts /proc /sys /run; do mount -B $i /mnt$i; done | ||
+ | |||
+ | chroot / | ||
+ | |||
+ | grub-install /dev/sdX | ||
+ | update-grub | ||
+ | exit | ||
+ | |||
+ | # EFI | ||
+ | mount -t efivarfs none / | ||
+ | |||
+ | |||
+ | </ |
wiki/technical/proxmox/openvz_kvm.1726316739.txt.gz · Последнее изменение: 2024/09/14 15:25 — Diman