- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Есть некоторое количество серверов, на каждом из которых десятки или сотни сайтов интернет-магазинов (ОС FreeBSD). Время от времени возникает необходимость забрать сервер с площадки для апгрейда или ремонта. Перед этим приходится сначала ставить новый сервер, потом переносить всех пользователей с сайтами и базами (переносим средствами ISPManager), а затем менять IP-адеса в DNS для каждого сайта.
Вот как раз эта процедура смены IP-адресов в DNS и напрягает, т.к. мы пользуемся DNS-серверами провайдера, а там отсутствует возможность редактирования записей DNS из программ через API. Приходится редактировать вручную, а это долго. Кроме того, на время переключения часть пользователей видит старый сайт, а часть - новый.
Подскажите, пожалуйста, есть ли какие-либо архитектурные решения, позволяющие переносить пользователей и сотни сайтов с одного физического сервера на другой без смены IP сайтов? Решения WMWare слишком дорогие, хотелось бы что-нибудь подешевле, и без особого железа вроде серверов-лезвий. От FreeBSD также не хотелось бы отходить по возможности. Да, и во время переноса не должно быть перерывов в доступе к сайтам, или эти перерывы не должны превышать нескольких минут.
Заранее спасибо за любую помощь!
Клонировать диск, прописать новые сетевые интерфейсы и ad/da.
Клонировать диск, прописать новые сетевые интерфейсы и ad/da.
Так мы клонируем сервер. Потом мы должны его привезти на площадку к провайдеру, и тут возникнут проблемы. Мы не можем просто установить его и включить, т.к. IP уже занят другим сервером, который работает. Поэтому нам придется остановить работающий сервер, изъять его, поставить новый и включить. Во время замены сервера и загрузки ОС сайты будут недоступны как минимум минут 20, и еще не известно, все ли будет хорошо при загрузке нового сервера. Например, окажется, что еще нужно прописывать новый MAC-адрес на маршрутизаторе провайдера.
Кстати, обычно я еще и обновляю ПО сервера, так что клонирование не всегда подойдет.
Хотелось бы все это сделать без предварительного изъятия старого сервера или даже без его остановки. Т.е. поставили новый сервер, перенесли на него все, потом быстро переключили IP или сделали что-то еще и продолжаем работать. Когда убедились, что новый сервер работает, останавливаем старый. Так можно?
Копируете всё на новый, затем на старом делаете проксирование(через nginx) всех запросов на новый.
Затем спокойно переписываете ДНС, как всё обновится, отключаете старый. Даунтайм нулевой.
Копируете всё на новый, затем на старом делаете проксирование(через nginx) всех запросов на новый.
Затем спокойно переписываете ДНС, как всё обновится, отключаете старый. Даунтайм нулевой.
Да, интересное решение, спасибо!
А не подскажете, как это настроить? Я не большой спец по nginx...
Да, интересное решение, спасибо!
А не подскажете, как это настроить? Я не большой спец по nginx...
http://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_pass
http://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_pass
Вот тут-то я и не понимаю, не получается разобраться по документации...
Мне ведь надо все запросы для всех сайтов на порту 80 проксировать на другой сервер?
Правильно ли я понимаю, что нужно сделать что-то вроде этого:
http {
include mime.types;
default_type application/octet-stream;
...
server {
listen 80;
server_name *; ???
location / { ???
root html;
index index.html index.htm;
}
Но как задать server_name и loсation, чтобы обозначить сразу все сайты?
Или мне для каждого из сотен сайтов нужно отдельно прописывать блок server?
Большое спасибо, буду пробовать!