Назад | Перейти на главную страницу

Миграция сервера: самый эффективный способ

Мне было поручено перенести один из наших сайтов между серверами (двумя разными хостами). Обе среды - это Linux.

Сайт транслирует видео, поэтому на данный момент сервер заполнен медиафайлами (изображениями и видео). Моя первая мысль заключалась в том, что мы будем использовать rsycnc для передачи всего, но я хочу быть максимально эффективным и делать все как можно быстрее. Я подумал, что у некоторых из вас могут быть советы о том, как ускорить процесс, или даже если rsync - правильный выбор.

Заранее спасибо. Приносим извинения за мои ограниченные знания о сисадминах ...

РЕДАКТИРОВАТЬ: мы используем базовый стек LAMP (centos) и переходим к красной шляпе на стоечном пространстве).

«Перенос приложения с одного сервера на другой» требует значительных усилий - на самом деле мы не можем дать исчерпывающий ответ для всех случаев использования. ТЫ Тем не менее, если вы будете подходить к этому систематически, можете дать довольно исчерпывающий ответ для вашей установки:

  1. Составьте список всего, что нужно вашему приложению.
    • Веб сервер?
    • Сервер базы данных?
    • Почтовый сервер?
    • Язык сценариев (PHP, Ruby / Rails, Perl, что-то еще)?
    • Вспомогательные программы (ImageMagick и др.)?
  2. Составьте список важных элементов конфигурации.
    • IP-адрес, маска сети, шлюз и т. Д.
    • DNS-серверы
    • Элементы для конкретного приложения (временные каталоги и т. Д.)
  3. Возьмите списки из пунктов (1) и (2) и напишите схему миграции.
    Это должно включать в себя такие вещи, как установка и настройка любого необходимого программного обеспечения / пакетов, сброс и загрузка базы данных и т. Д.
  4. ПРОВЕРЬТЕ МИГРАЦИЮ
    Скопируйте все, как если бы сервер собирался запустить, но не запускайте его. Когда вы закончите, прикрепите его к изолированной сети и все протестируйте.
    Если у вас есть стандартная процедура тестирования для вашего приложения, вы должны запустить ее на перенесенном сервере.
  5. Если все пошло не так, goto (3), update (1) и (2), а затем пересмотрите свой план.
  6. Когда тестовая миграция пройдет успешно, выполните фактическую миграцию.
    В зависимости от того, насколько сложен процесс миграции, это может означать просто удаление и перезагрузку базы данных, или вы можете захотеть стереть машину и сделать все с нуля.

Когда вы закончите, у вас будет контрольный список для вашего конкретного приложения в вашей конкретной среде. Этот контрольный список, вероятно, будет развиваться по мере разработки приложения, но он может послужить отправной точкой через 3-5 лет, когда вам снова придется мигрировать.

Другие вещи, которые следует учитывать, включают реализацию управления конфигурацией, например, Puppet или Chef.
(Если вы собираетесь стать «системным администратором», вам следует их рассмотреть, в противном случае передайте их ответственному лицу / команде.)

Что ж, у вас есть конфигурация сервера и содержимое сервера, и маловероятно, что один и тот же метод будет работать для обоих.

У вас есть база данных? Если это так, его тоже нужно будет переместить. Rsync отлично подходит для статического контента. Просто запустите его один раз, чтобы переместить список ваших данных, а затем скажите каждые несколько часов, чтобы все синхронизировалось до переключения. Обязательно отключите rsync cron перед миграцией!

Что касается конфигурации, мы понятия не имеем, что вы используете, поэтому не можем дать рекомендаций.