Перейти к содержимому
Калькуляторы

Перенос сервера на абсолютно другое железо

Здравствуйте все! Встала задача создать дублирующую железку рабочего сервера (на случай выхода из строя онного). Железо абсолютно разное. На сервере крутятся mysql, www, php, ftp, sntp, cacti.

 

Что было проделано мной:

   

*  Создал архив нужных директорий донора tar-ом;

*  Установил на реципиента такую-же ось, как и на доноре;

*  Удалил на реципиенте те директории, которые планировал заменить;

*  Залил на реципиента из архива донора нужные директории;

*  Вписал в /etc/modules нужные модули, полученные списком через lsmod;

 

Что в итоге:

 

*  Реципиент заработал коряво, некоторые сервисы и службы не работают;

*  Пропал доступ по телнет и ssh;

*  Cacti работает, но статистика из баз данных не доступна;

*  Смотрел базы и таблицы mysql, всё вроде на месте;

*  Php работает;

*  sntp работает коряво, короче не пашет;

 

Буду рад любым советам и подсказкам по теме. Только не ругайте сильно, linux осваиваю не так дано.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Остановить первый сервер, сделать дамп через dd и заливаете его на новое железо, с большой долей вероятности взлетит, но как всегда бывают нюансы по поддержке железа, нумерации портов сетевой карты и т.п.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ок. Спасибо, сегодня попробую, завтра отпишусь о результатах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

31 минуту назад, Алек-НТК сказал:

Смотрел базы и таблицы mysql, всё вроде на месте;

Вы базы файлом копировали? Такое весьма не рекомендуется. Но если уже сделано, то обязательны:

a) проверка прав на /var/lib/mysql/ для пользователя, от которого пашет сервер

б) выполнение mysqladmin -reload для восстановления grant tables

 

48 минут назад, Алек-НТК сказал:

Пропал доступ по телнет и ssh;

C SSH далеко не всегда корректно переносятся ключи. По-хорошему, это делается с помощью ssh-copy-id, но в вашем случае это не вариант. Смотрите права на /.ssh после копирования

ОС, случаем, не Убунта?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендую сразу мигрировать сервер в виртуальную среду.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Виртуальную среду тоже надо обновлять.

Разные версии ПО, в том числе версии PHP == много веселого и не очень.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

3 hours ago, vlad11 said:

Виртуальную среду тоже надо обновлять.[/quote]

 

Надо... Но, все же, с железом возиться не надо. :) Присоединяюсь к рекомендации.

 

3 hours ago, vlad11 said:

Разные версии ПО, в том числе версии PHP == много веселого и не очень.

Если PHP мешает, надо от него избавиться.:) :) :)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Спасибо, буду пробовать. Система Alt Linux.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В 27.08.2019 в 13:33, Алек-НТК сказал:

Ок. Спасибо, сегодня попробую, завтра отпишусь о результатах.

получилось через dd?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 час назад, s.lobanov сказал:

получилось через dd?

Вчера не было времени попробовать. Работы с абонентами было много. Сегодня сделаю 100%. Только один момент, после переноса через dd мне наверное надо будет править файл /etc/fstab и как-то установить загрузчик. Правильно ли я понимаю суть дела?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2 минуты назад, Алек-НТК сказал:

Только один момент, после переноса через dd мне наверное надо будет править файл /etc/fstab и как-то установить загрузчик. Правильно ли я понимаю суть дела?

может и не потребоваться. загрузчик тоже будет скопирован dd (если вы будете копировать всё условное /dev/sda, а не /dev/sda1). относительно того потребуется ли править /etc/fstab - тоже не факт, если блочные устройства будут называться также, то не потребуется

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

8 минут назад, s.lobanov сказал:

может и не потребоваться. загрузчик тоже будет скопирован dd (если вы будете копировать всё условное /dev/sda, а не /dev/sda1). относительно того потребуется ли править /etc/fstab - тоже не факт, если блочные устройства будут называться также, то не потребуется

Ок. Спасибо. После обеда сделаю и напишу о результатах...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я так делал (сервера были на Centos/5/6):

 

1. На исходном сервере грузиться в init 1 (однопользовательский режим), отключить по возможности все сервисы mysql, apache и т.п. и скопировать все его содержимое на отдельный диск.

 

2. На новом сервере грузиться с linux rescue диска. Разбить диск по аналогии с исходным (корневой раздел, swap и т..д. ) и создавать на разделах необходимую ФС. 

 

3. Скопировать содержимое старого сервера на новый в те же места, что и на старом сервере.

 

4. Установить загрузчик (в моем случае grub).

 

5. Отредактировать grub.conf и fstab

 

6. Перезагрузка.

 

Как-то так.

 

Есть ньюанс, если система не поддерживает новый диск, то нужно будет пере собрать initrd файл, куда добавить модуль для поддержки нового диска. Я таким образом переносил "железные" сервера на виртуальные (пока не узнал, что в ESXi есть специальная утилита для этого) взлетели все, даже самые старые (на RHEL4)

 

 

 

Изменено пользователем fox_m

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А можно загрузить на втором сервере какой-то лайвсд. И после остановки бд с сервисами dd over ssh. Главное чтобы на втором сервере жесткий был как минимум такого же размера.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всем доброго дня! Сделал копию через dd, залил на другую железку. Бегло проверил на идентичность, вроде всё как надо. Но при загрузке в grub валится ошибка:

chdir: /etc/syslog.d: No such file or directory

 

Ну и потом, спустя паузу валятся:

initrd: udev: Error: Unable to mount root

initrd: Stage 'udev' failed

 

Что нужно сделать, чтобы исправить это? Буду благодарен.

 

 

 

Забыл сказать... Загрузился с liveusb, поставил grub заново и обновил его. Ситуация не поменялась.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

14 часов назад, Алек-НТК сказал:

Забыл сказать... Загрузился с liveusb, поставил grub заново и обновил его. Ситуация не поменялась.

Скорее всего в initrd просто нет модуля с драйвером дисковой подсистемы под новое железо. Говорите, у вас там ALT? Тогда загрузитесь с их официального ISO образа в режиме rescue, потом скажите

 

mount-system

 

и далее

 

chroot /mnt/system1

 

и уже внутри чрута сделайте

 

mkinitrd-make-initrd -f /boot/initrd.img КАКАЯ_ТАМ_У_ВАС_ВЕРСИЯ_ЯДРА

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

33 минуты назад, taf_321 сказал:

Скорее всего в initrd просто нет модуля с драйвером дисковой подсистемы под новое железо. Говорите, у вас там ALT? Тогда загрузитесь с их официального ISO образа в режиме rescue, потом скажите

 

mount-system

 

и далее

 

chroot /mnt/system1

 

и уже внутри чрута сделайте

 

mkinitrd-make-initrd -f /boot/initrd.img КАКАЯ_ТАМ_У_ВАС_ВЕРСИЯ_ЯДРА

 

Спасибо за вектор. Приеду на работу, попробую первым делом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

7 часов назад, Алек-НТК сказал:

Спасибо за вектор. Приеду на работу, попробую первым делом.

Записал на флешку Alt Linux Rescue, начал было делать, но блин один из разделов побился что ли после dd... Проверил через gparted, раздел с ошибкой. Пошел делать новую копию. Кстати этот поломанный раздел размером около 300Гб. Для dd есть разница, зависимость от объёма?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

18 часов назад, jffulcrum сказал:

Вы dd как запускали?

dd if=/dev/sda of=/mnt/backup.img bs=8M conv=sync,noerror

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Блин, не пойму, что происходит! Второй раз снимаю копию с сервера и второй раз один из разделов записывается с ошибкой, после которой linux rescue не хочет работать с этим битым разделом. Размер раздела 300гб, занято 120гб.

IMG_20190904_110108.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Там точно все 300 гигов заняты данными? Может просто на старой системе подмонтировать новый носитель, разметить его как старый диск и просто в rescue или live-загрузкой скопировать файлы через mc?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2 минуты назад, taf_321 сказал:

Там точно все 300 гигов заняты данными? Может просто на старой системе подмонтировать новый носитель, разметить его как старый диск и просто в rescue или live-загрузкой скопировать файлы через mc?

Данными занято 120гб. Создать раздел заново и скопировать туда данные - это крайний вариант. Всё таки хочу понять, почему ошибка возникает только на определённом разделе.

 

Парни, а может попробовать проверить раздел виндоусовским chkdsk? Может он поправит и исправит?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

33 минуты назад, Алек-НТК сказал:

а может попробовать проверить раздел виндоусовским chkdsk? Может он поправит и исправит?

Конечно исправит. Неправильную ext3 заменит правильной NTFS или extFAT. :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.