Перенос сервера Linux к другому хостеру

Перенос сервера Linux к другому хостеру

У меня есть задача перенести Linux-сервер с одного выделенного сервера на другой.

В целом мой план следующий:

  1. ночное время - отключите httpd и mysql. RSYNC через SSH.
  2. дневное время - включите http и mysql.
  3. на ночь отключайте httpd и mysql. RSYNC через SSH.
  4. ночное время. включите httpd и mysql на обоих серверах. Измените записи DNS.
  5. дневное время. мониторинг состояния сервера.

Поэтому в основном для синхронизации mysql и httpd я бы использовал rsync (без mysqldump).

Звучит хорошо? Есть какие-нибудь оговорки?

решение1

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

Точный клон

  1. Уменьшите TTL ваших записей DNS, чтобы облегчить себе жизнь.
  2. rsync источник-цель. Вам даже не придется останавливать службы на источнике; любые несоответствия будут исправлены на шагах (4) и (7).
  3. При желании вы можете запустить несколько тестов на новом сервере. Выясните, какие изменения конфигурации вам нужно сделать на целевом сервере, чтобы все заработало. Возможно, вам даже захочется перезагрузить целевую машину, чтобы убедиться, что все работает без сбоев.
  4. снова переключитесь на источник rsync, чтобы устранить «повреждения» нового сервера, которые вы внесли в (3), выявить еще некоторые различия и получить представление о том, сколько времени займет запуск инкрементного rsync (что является индикатором ожидаемого времени простоя).
  5. Отключите все службы на обеих машинах. Убедитесь, что службы на исходной машине отключены; вы не хотите «разделения мозга» с расходящимися данными на старой и новой машинах.
  6. Внесите изменения в записи DNS. Вы можете использовать обычный TTL для новых записей, если вы не планируете откат.
  7. rsync источник снова к цели.
  8. Примените все необходимые изменения конфигурации на целевой машине, как описано в шаге (3).
  9. Запустите службы на целевой машине.

Логический клон

Рассмотрите возможность настройкиРепликация MySQL. Если на вашем сервере MySQL еще не включено двоичное ведение журнала, вам придется на короткое время откатить базу данных, чтобы включить его. В любом случае я настоятельно рекомендую включить двоичное ведение журнала, поскольку это удобно для выполнения будущих операций, таких как обновление MySQL, с практически нулевым временем простоя.

Если вы настроитекруговая репликация, вы даже сможете запустить старый и новый веб-серверы одновременно, если MySQL является единственным хранилищем данных вашего приложения.

Связанный контент