Миграция VDS на выделенный сервер

Миграция VDS на выделенный сервер

В данной статье мы расскажем вам, как осуществляли переезд с VDS на выделенный сервер.

Внимание. У нас сервер настроен для загрузки в режиме Legacy BIOS. У вас может быть режим UEFI. Предварительно стоит проверить этот момент или уточнить в поддержке. Мы рекомендуем использовать Legacy BIOS, как более привычный режим в плане работы и его настройки.

Для работы с сервером нам необходимо будет его включить в Live-режиме (rescue mode), чтобы получить доступ к файловой системе. Для загрузки сервера в Live-режиме (rescue mode) и проведения работ лучше всего подходят следующие Linux ISO-образы. Мы остановили свой выбор на Grml.

Grml — это загрузочная Live-система (Live-CD) на основе Debian . Она включает в себя набор программного обеспечения GNU/Linux, специально предназначенный для системных администраторов. Grml особенно хорошо подходит для административных задач, таких как установка, развертывание и восстановление системы.

Копируем ссылку на ISO образ с официального сайта и загружаем его в личный кабинет.

image12.png

После завершения загрузки подключаем образ к серверу. Сервер при этом автоматически перезагрузится.

image10.png

Переходим в IPMI интерфейс и авторизуемся c с реквизитами, которые получили в письме после заказа сервера.

image4.png

Запускаем виртуальную консоль.

image3.png

В ней нас ожидает терминал.

image9.png

Приступаем к работе на самом сервере. В первую очередь поднимем на нем сеть.

Смотрим статусы сетевых интерфейсов

ip link show

Видим, интерфейс с названием enp130s0f0 имеет состояние UP.

image13.png

Добавляем на него IP-адрес

ip addr add 45.86.39.67/25 dev enp130s0f0

основной маршрут

ip route add default via 45.86.39.1 dev enp130s0f0

DNS резолверы

echo -e "nameserver 8.8.8.8\nnameserver 1.1.1.1" | tee /etc/resolv.conf

Для удобной дальнейшей работы будем использовать SSH. Запускаем его

systemctl start ssh

Задаем себе пароль для входа

passwd

Вводим и подтверждаем пароль. В терминале при вводе он не отображается!

image6.png

Подключаемся к серверу по SSH

ssh root@45.86.39.67

Проверяем наличие дисков командой

fdisk -l

image16.png

В нашем случае было решено переносить систему на SSD (/dev/sda), а NVMe (/dev/nvme0n1) использовать в качестве домашнего каталога для проекта.

Создаем разделы на дисках

fdisk /dev/sda

Откроется интерфейс утилиты fdisk, используем команды команды

Command (m for help): n
Partition number (1-128, default 1): 
First sector (34-3907029134, default 2048): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-3907029134, default 3907028991): 
Command (m for help): w
Command (m for help): q

Повторяем то же самое для второго диска

fdisk /dev/nvme0n1

Обратите внимание, если у вас загрузочный SSD диск был с разметкой GPT (Disklabel type: gpt), рекомендуем изменить его тип на MBR для работы с Legacy BIOS. Для этого в fdisk перед созданием раздела измените тип диска с помощью

Command (m for help): o

И обязательно проверьте

Command (m for help): p

Disklabel type: dos.

image2.png

После чего создаем файловую систему на новом разделе

mkfs.ext4 /dev/sda1
mkfs.ext4 /dev/nvme0n1p1

И монтируем наши диски

mount /dev/sda1 /mnt/

Помним, что NVMe диск у нас будет примонтирован в /home

mkdir /mnt/home
mount /dev/nvme0n1p1 /mnt/home/

image15.png

Оба диска смонтированы, возвращаемся к нашему VDS.

В личном кабинете переводим VDS в аварийный режим, чтобы исключить запись на диск в процессе копирования.

image5.png

Открываем VNC и попадаем в терминал аналогичного Grml образа.

image14.png

Так же запускаем на нем SSH, задаем пароль и подключаемся по сети.

image6.png

Монтируем диск /dev/vda1 и проверяем

mount /dev/vda1 /mnt/
ls -l /mnt

image7.png

Запускаем копирование файловой системы через rsync, пропуская виртуальные каталоги

rsync -avxHAX --numeric-ids --info=progress2 \
  --exclude={'/mnt/dev/*','/mnt/proc/*','/mnt/sys/*','/mnt/tmp/*','/mnt/run/*','/mnt/lost+found'} \
  /mnt/ root@45.86.39.67:/mnt/

Ожидаем завершения процесса. Если диск большого объема, копирование может занять длительное время.

По завершению копирования возвращаемся на новый сервер, монтируем системные каталоги и заходим в гостевую систему (сhroot)

for i in /dev /proc /sys /run ; do mount --bind $i /mnt/$i; done
chroot /mnt/ /bin/bash

С помощью команды blkid получим информацию об UID дисков

image8.png

Редактируем /etc/fstabи прописываем (изменяем) точки монтирования

image1.png

Удаляем гостевого агента из системы, т.к. на выделенном сервере он не понадобится

rm /etc/cron.daily/phoenix-ga-updater
rm /etc/systemd/system/phoenix-ga.service
rm /usr/sbin/phoenix-ga
rm /etc/network/if-up.d/phoenix-ga-netinit
rm /etc/network/if-down.d/phoenix-ga-netinit

Прописываем сетевые настройки сервера в файл /etc/network/interfaces

auto enp130s0f0
iface enp130s0f0 inet static
    address 45.86.39.67
    netmask 255.255.255.128
    gateway 45.86.39.1
    dns-nameservers 8.8.8.8 8.8.4.4

Не забываем установить драйвер для сетевой карты сервера.

apt update
apt install firmware-bnx2x

После чего ставим загрузчик на диск /dev/sda

grub-install /dev/sda
update-initramfs -u
grub-mkconfig -o /boot/grub/grub.cfg

Важно! Обратите внимание, что загрузчик устанавливается именно на диск /dev/sda, а не на раздел /dev/sda1.

Возвращаемся в раздел “Аренда серверов” и отключаем ISO образ.

После чего сервер будет перезагружен в перенесенную операционную систему. Заходим на сервер по SSH.

Проверяем конфигурацию Nginx, Apache2 и другого ПО на явное указание старого IP-адреса в конфигурациях. Если есть - меняем на новый IP-адрес

grep -rl "80.81.104.11" /etc | xargs -n1 sed -i "s|80.81.104.11|45.86.39.67|g"

  • 80.81.104.11 - наш старый IP-адрес с VDS.

Если у вас VDS был без панели управления NetAngels, пропустите последующие шаги (*).

* Выключаем панель управления NetAngels, т.к. на выделенных серверах она не используется в работе

systemctl disable --now netangels-panel.service

* Отключаем автонастройку сети в Nginx

rm /etc/systemd/system/nginx.service.d/override.conf
systemctl daemon-reload

* В файл /etc/nginx/listen.conf прописываем и сохраняем

listen 45.86.39.67:80;

Перезапускаем Nginx и при необходимости другие сервисы

systemctl restart nginx

Меняем в DNS старый IP-адрес на новый и ждем, когда изменения вступят в силу, обычно не более часа.

Таким образом мы смигрировали VDS на железный сервер без каких-либо изменений в логике работы ПО.

При необходимости можно провести тюнинг настроек ПО, например, увеличить количество воркеров в Nginx, оптимизировать буферы в MariaDB и т.п.

С 2003 года
Надежность.
Нам доверяют тысячи компаний и разработчиков
22 года
Предоставляем услуги профессионального хостинга
35 000+
Клиентов доверяют нам размещение своих сайтов
99.99%
Подтвержденный uptime наших серверов хостинга
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
ВК49865