Инструменты пользователя

Инструменты сайта


wiki:technical:proxmox:openvz_kvm

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
wiki:technical:proxmox:openvz_kvm [2024/09/14 15:29] Dimanwiki: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> <code bash>
  
 +# Монтируем диск на сервере с KVM
 mount /dev/sda1 /mnt mount /dev/sda1 /mnt
  
 +# Копируем данные из источника (с ноды openvz или из другого контейнера)
 rsync -aAX --info=progress2 root@ovz_node:/vz/root/87999e47-d980-46a2-b446-af6edc8434af/ /mnt/ rsync -aAX --info=progress2 root@ovz_node:/vz/root/87999e47-d980-46a2-b446-af6edc8434af/ /mnt/
  
-mount /dev/sda1 /mnt+ 
 +# После завершения копирования монтируем все, что требуется для работы 
 +# и переходим в гостевую ОС системы 
 +#
 mount --bind /proc /mnt/proc mount --bind /proc /mnt/proc
 mount --bind /dev /mnt/dev mount --bind /dev /mnt/dev
Строка 14: Строка 23:
 chroot /mnt bash chroot /mnt bash
  
 +# Заменяем fstab
 echo '/dev/sda1 /  root    defaults      0       0' > /etc/fstab echo '/dev/sda1 /  root    defaults      0       0' > /etc/fstab
-resov.conf+ 
 +resolv.conf 
 +#
 rm /etc/resolv.conf rm /etc/resolv.conf
 echo 'nameserver 8.8.8.8' > /etc/resolv.conf echo 'nameserver 8.8.8.8' > /etc/resolv.conf
  
-ubuntu +
-ubuntu 20.04+Установка ядра - ищем самое свежее 
 +# Для некоторых ОС ниже смрабочие примеры установки ядра 
 +
 + 
 +# ubuntu  
 +# Ставим свежее ядро 
 + 
 +apt install -y linux-image-generic linux-headers-generic 
 + 
 +# Можно поискать требуемое ядро
 apt search linux-image | grep generic | grep -v unsigned 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 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 # debian 11
Строка 28: Строка 59:
 apt install -y  linux-image-5.10.0-31-amd64 linux-headers-5.10.0-31-amd64 grub2 apt install -y  linux-image-5.10.0-31-amd64 linux-headers-5.10.0-31-amd64 grub2
  
 +# Исправление GRUB
 vi /etc/default/grub vi /etc/default/grub
  
Строка 33: Строка 65:
 GRUB_CMDLINE_LINUX="consoleblank=0 systemd.show_status=true net.ifnames=0 biosdevname=0" GRUB_CMDLINE_LINUX="consoleblank=0 systemd.show_status=true net.ifnames=0 biosdevname=0"
  
-vi /etc/network/interfaces +### 
-eth0+# конфигурируем сеть. у меня виртуалка получает IP по   DHCP 
 +##
  
 echo '### https://vps-server.ru/vps echo '### https://vps-server.ru/vps
Строка 47: Строка 80:
  
 update-initramfs -u update-initramfs -u
 +
 +</code>
 +
 +в непонятных случаях помогает скрипт в кроне:
 +<code bash>
 +
 +#!/bin/bash
 +
 +iptables -F
 +iptables -X
 +iptables -P INPUT ACCEPT
 +iptables -P OUTPUT ACCEPT
 +ifconfig eth0 inet 91.194.3.25  netmask 255.255.255.128  broadcast 91.194.3.127
 +ip r a default via 91.194.3.126 dev eth0
 +systemctl > /root/systemctl.txt
 +service ssh restart
 +</code>
 +
 +===== Особенности переноса данных на выделенные серверы =====
 +При переносе данных с виртуальных машин и выделенных серверов на выделенные серверы следует до начала переноса создать разметку на дисках целевого сервера, а также собрать необходимые массивы дисков и т.п. Затем смонтировать массивы в директорию /mnt в соответствии с назначенными точками монтирования, например: / в  /mnt/, /boot /mnt/boot, vz /var/lib/vz и т.д.
 +==== Копирование данных ====
 +
 +<code bash>
 +#
 +# Исключение лишних директорий и файлов при копировании.
 +#
 +
 +rsync -aAX --info=progress2 --exclude={'vz','/proc','/sys','/dev','/mnt'} /source /dest
 +
 +</code>
 +
 +
 +==== Установка загрузчика, в т.ч. EFI ====
 +
 +<code bash>
 +
 +mount /dev/sdXY /mnt
 +mount /dev/sdXX /mnt/boot/efi 
 +
 +for i in /dev /dev/pts /proc /sys /run; do mount -B $i /mnt$i; done  
 +
 +chroot /mnt  
 +
 +grub-install /dev/sdX
 +update-grub
 +exit 
 +
 +# EFI
 +mount -t efivarfs none /sys/firmware/efi/efivars  
 +
  
 </code> </code>
wiki/technical/proxmox/openvz_kvm.1726316980.txt.gz · Последнее изменение: 2024/09/14 15:29 — Diman

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki