LINUX.ORG.RU
ФорумAdmin

Резервный web server


1

2

Имеется WebServer (apache+mysql+php), который крутится на CentOS 5.6. Задача поднять на другом сервере точно такой же WebServer, который будет обслуживать клиентов в случаи падения первого (или работать параллельно). Как такое можно реализовать? как организовать синхронизацию? Уверен уже имеются готовые решения.

Заранее благодарен!

Ответ на: комментарий от leha7hostel

Третий как диспетчер же.
В случае падения основного сменит IP в DNS или как-то так.

adriano32 ★★★
()
Ответ на: комментарий от leha7hostel

обычная схема кластера
сервер 1
/
админ-сервер - сервер 2
\ ....
сервер n
все запросы идут на админ сервер
а он уже, смотря по загрузке\доступности, распределяет запросы на backend сервера

TERRANZ ★★★★
()
Ответ на: комментарий от leha7hostel

Я просто не припомню, в какой книжке это читал, поэтому конкретной ссылочки привести не могу. Но нагуглить легко. Третий компьютер-шлюз «пасет» оба сервера и, в случае если один «отвалится», переключает трафик на резервный; как только основной появится, трафик идет на него. Можно вообще делить трафик пропорционально мощностям компьютеров, чтобы они работали одновременно.

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

В общем, вариантов тьма.

Eddy_Em ☆☆☆☆☆
()

я бы load balancing на плечи хостинга возложил http://www.rackspace.com/cloud/cloud_hosting_products/loadbalancers/ стоит совсем недорого. и нет никакого гемороя. и главное - крайне надежно. остается только реализовать репликацию mysql между серверами и синхронизация файлов сайта (статику можно вообще вынести на какие нить cloudfiles) плюс возможно общий memcached, или он умеет репликацию тоже?

в простейшем случае можно использовать nginx и несколько backend серверов. hearbeat тож интересно, но всеравно остается одна точка выхода из строя.

fr_butch
()
Ответ на: комментарий от fr_butch

Пожалуй следовало дать больше информации касательно имеющийся системы. Буду исправляться: На плечи хостинга взвалить не чего не получиться т.к. я сам себе хостинг. Имеется две VPS в разных странах и соответственно в разных подсетях. На одной VPS (VPS1) крутится web server, поставлена задача поднять на второй VPS (VPS2)резервный web server, который будет функционировать в случаи падения VPS1. hearbeat, если я правильно понял мне не подходит т.к. серваки находятся в разных сетях и имеют разное адресное пространство(Поправьте если я не прав ). Репликацию MySQl планируется делать средствами самого MySql, про синхронизацию файлов сайта еще не думал (Может кто что подскажет?). Осталось решить с механизмом переключения запросов на VPS2 в случаи падения VPS1. Собственно так выглядит полная картина. Кто что подскажет?

leha7hostel
() автор топика
Ответ на: комментарий от leha7hostel

про синхронизацию файлов сайта еще не думал (Может кто что подскажет?).

rsync же во все поля по расписанию, утром днём и вечером по чайной ложке.

Как у тебя с регистрацией обстоит? Доменные имена где получил, где объявил, на каких NS?

adriano32 ★★★
()
Ответ на: комментарий от adriano32

Купили доменное имя в домене .com , висит пока на днс серверах регистратора. Вы хотите реализовать ы помощью ДНС сервера? Можно поподробнее? Поднять свои ДНС сервера и повесить на них домен не проблема!

leha7hostel
() автор топика
Ответ на: комментарий от adriano32

есть еще вариант с обновлением файлов. сейчас тыщи сайтов в svn\git лежат, и можно попросту производить push/up одновременно в несколько мест.

fr_butch
()
Ответ на: комментарий от leha7hostel

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

adriano32 ★★★
()
Ответ на: комментарий от adriano32

dns roundrobin хорош только если все сервера по А записям всегда живы.
если часть серверов лежит юзеры могут так и не попасть на живой сервак.
да и https могут возникнуть проблемы

fr_butch
()
Ответ на: комментарий от fr_butch

Почитал про dns roundrobin. Решение простое, но dns roundrobin не проверяет доступность сервера, а просто выдает IP по кругу. Может есть какой-нибудь способ прикрутить проверку работоспособности к dns roundrobin?

leha7hostel
() автор топика
Ответ на: комментарий от leha7hostel

dns roundrobin умеет выдавать сразу несколько IP (в моем случаи 2 из 2), я так понимаю, что в кеше у клиента будут 2 IP адреса. Решит ли это проблему с доступностью?

leha7hostel
() автор топика
Ответ на: комментарий от leha7hostel

Есть, конечно, начиная от простейшего скрипта на баше, котороый шлёт серию пингов и парсит результат, до шифрованого OpenVPN и указания при запуске демона скрипта, вызываемого при разрыве тоннеля.

adriano32 ★★★
()
Ответ на: комментарий от adriano32

с проверкой доступности понял. Как решить проблему с кэширующими DNS серверами на стороне клиентов и кушем браузеров!

leha7hostel
() автор топика
Ответ на: комментарий от drull

плюсую ipvsadm, у самого 5-нодовый кластер на нем.

Komintern ★★★★★
()
Ответ на: комментарий от leha7hostel

>Как решить проблему с кэширующими DNS серверами на стороне клиентов и кушем браузеров!

Никак, добавь что нибудь себе в ДНС и посмотри через сколько времени это появится на каких нибудь других ДНС-серверах. Единственное, свои ДНС можно сразу рестарторуть, в отличие серверов регистратора, которые это делают по расписанию.

Есть еще реврайт, типа серверок, который перенаправляет запросы. Типа таких услуг http://www.webnames.ru/serv_redir.pl. Есть божатся что их сервер ответит всегда, если своем доверия нет. Опять же сколько виртуальных хостов.

lvi ★★★★
()
15 марта 2012 г.
Ответ на: комментарий от post-factum

post-factum, чем может помочь nginx при : «если имеются два VPS в разных странах и соответственно в разных подсетях. На одной VPS (VPS1) крутится web server, поставлена задача поднять на второй VPS (VPS2)резервный web server, который будет функционировать в случаи падения VPS1» ?

для этого мне нужно техническое решение...

MichaelM
()
Ответ на: комментарий от MichaelM

В конфиге nginx'а задаёшь два backend'а с разными весами — вот тебе и техническое решение. А впска хоть на Марсе или Вулкане.

post-factum ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.