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

Безболезненный способ перенести сервер?

Я очень новичок в администрировании серверов. Я использую довольно простой облачный сервер (Windows 2008 R2), на котором размещено несколько различных общедоступных веб-сайтов. Сервисы и база данных сейчас сильно выросли, и мой сервер умирает под нагрузкой. Поэтому я связался с компанией, предоставляющей облачный хостинг, и, очевидно, тип сервера, который я взял, был самым дешевым, который я мог найти в то время, не подлежал обновлению - даже память! - а теперь мне нужен новый сервер.

Итак, теперь у меня есть пара проблем:

  1. Несколько записей DNS указывают на старый сервер.
  2. Веб-сайты взаимодействуют с экземпляром SQL Server на этом сервере, поэтому мне нужно заморозить веб-сайты, прежде чем я смогу выполнить резервное копирование и восстановление БД на другом сервере.

Я хочу перенести свой SQL Server и записи DNS на новый сервер с минимальным временем простоя и неудобствами для пользователей веб-сайта.

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

Спасибо!

С DNS вам нужно будет установить TTL низким, чтобы передача вступила в силу быстрее, когда вы измените их.

Я найду новую хостинговую компанию и начну как можно больше тиражировать конфигурацию программного обеспечения в новой системе. Статический контент будет легко переместить.

Жесткая часть - это динамический контент, например, на сервере базы данных. Получите дамп данных с SQL-сервера, а затем импортируйте его на новые серверы. Это должно дать вам достаточно свежую версию веб-сайта, которая будет работать параллельно с производственной системой.

Убедившись, что на новом сайте все работает, «заблокируйте» старый, отключив доступ и сбросив базу данных, затем повторно импортируйте данные на новый сайт, перенаправьте DNS и начните работу.

Конечно, вам нужно будет работать с владельцами сайтов, которые вы размещаете, чтобы вы могли размещать объявления о переезде для их пользователей. Вы даже можете добавить страницу перенаправления на старый сайт для перенаправления на новый сайт, как только он будет запущен и работает, пока миграция DNS не вступит в силу.

После полной миграции DNS выключите старый сервер. Подождите пару дней, а затем окончательно отключитесь от старого провайдера.

Для больших сайтов вы можете некоторое время рассмотреть стратегии параллельной работы; репликация SQL-серверов через сетевые соединения и бла, пока вы не сможете закрыть альфа-сайт и запустить бета-версию (вторичный), что-то вроде планирования аварий с двумя центрами обработки данных и имитации выключения вашего первичного сайта. Если у вас небольшая операция, как это звучит так, вам придется создать параллельную установку, а затем, когда все недостатки будут устранены, вы снимаете первичный и запускаете вторичный и ждете, пока DNS творить чудеса, помогая ему с автоматическим перенаправлением вашего старого сайта. Вы захотите предупредить, что может быть день обслуживания / отключения, хотя само переключение должно занять всего несколько часов, если вы заранее установите низкий TTL. Просто учтите какой-то фактор выдумки - ох, время.

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

Время

...so I need to freeze the web sites...

Это действительно вариант? Если да, то ты счастливый утенок! Если это не вариант, вы захотите выяснить, когда ваши веб-сайты наименее часто используются, а затем выполните миграцию. Для меня это обычно субботний вечер (то, что некоторые называют «окном перемен») и переход к утру воскресенья.

Техно лепет

DNS

Через кого вы приобрели домен? Кто за вас управляет записями DNS? Обновление DNS для вашего сайта должно быть довольно безболезненным. Просто используйте инструменты (скорее всего, какую-нибудь веб-страницу), которые есть у вашего провайдера для обновления записи. Но будьте осторожны, для полного распространения записи может потребоваться несколько минут или несколько часов. Чтобы облегчить это время, вы можете уменьшить TTL.

SQL

Резервное копирование базы данных SQL Server также должно быть довольно безболезненным. Внутри SQL Server Management Studio есть инструменты, которые сделают резервную копию базы данных за вас.

Будущее

Отделите сервер базы данных от веб-сервера. Либо через разные физические ящики, либо виртуализацию. Каждый раз, когда вам нужно переместить сервер, вам не нужно перемещать его все.

Пара шагов

  • Записи DNS - сначала уменьшите TTL, дайте ему распространиться не менее 12 часов. Если у вас есть хороший провайдер DNS, они с радостью вам помогут. Таким образом, если вы измените записи, которые намереваетесь, они будут обновляться в соответствии с TTL. НО помните, что обновление глобальных DNS-серверов может занять до 48 часов.

  • Вам действительно следует разделить службы баз данных и файловые службы / печать / AD. Если возможно, рассмотрите возможность виртуализации или отдельных серверов.

  • Вы можете сделать резервную копию, даже когда веб-сайт «активен». Но, очевидно, вы хотите восстановить последнюю резервную копию. Поэтому я предлагаю вам провести «тест», чтобы убедиться, что восстановление работает, и выполнить «живую» работу во время «запуска». Вы можете подумать о «механизме блокировки» для предотвращения любых операций записи, но вы должны делать это в наименее загруженное время (к сожалению, обычно это выходит за рамки стандартных рабочих часов).

  • Что касается веб-сайта, вы должны работать параллельно, убедитесь, что веб-сайт доступен локально с помощью тестовой базы данных. В противном случае вы можете обнаружить, что у вас не хватит времени для устранения любых «потенциальных» проблем, которые могли / могли легко возникнуть. Для тестирования вам не нужно менять DNS, а нужно перейти на IP-адреса.