Надо решить задачу, как размазать сайт на минимум 3 сервера, чтобы выключение одного не приводило к простою и потере данных.
Чего есть:
общий гигабитный линк (между серверами и наружу)
внутренний гигабитный линк, если купить корзину (но жаба душит на лишние 200 евро в месяц)
все данные, включая кеши - в mongodb, который ставится в реплику
Failover IP - когда внешний IP помирает, траффик автоматически идет на запасной
Чего нет:
VLAN на внешние IP не реален. Провайдер не даст.
Обязательно почти все завернуть в виртуалки, чтобы их можно было двигать туды-сюды на время апгрейдов железа и т.п.
Не смог придумать ничего умнее, чем ставить 2 прокси/роутера на внешние IP с failover, а оттуда заруливать траффик на самопальный внутренний VLAN. Монстр какой-то. Это вообще можно сделать красивее?
Не катит, дает только HA. Да и, кстати, кто фенсингом рулить будет?
P.S. Виталик, стукнись в джаббер, расскажу что знаю.
Угу. Тут народ уже достиг таких высот, что топологию сети одним умным словом описывает, прям боюсь спросить лишнего 😃 .
Надо Бороду попросить, чтобы в хетцнер позвонил, поковырял их насчет VLAN-ов. У OVH есть подобная тема, но там 100 мегабит наружу, и считают на все компы в суме. Обломно. DDoS-ом сейчас сотку выносят на раз.
я бы рекомендавал ipvsadm. просто и надежно можно выкидывать сервера из списка во время работы, раставлять веса сервера. в паре с Heartbeat отказоустойчивый распределеный кластер .
з.ы. я так понимаю распределять надо только http чем nginx не устраивает??
{"assets_hash":"a8b26fa7f6e768b07a72c8c9aadb9422","page_data":{"users":{"39c21abc3df9550077797d18":{"_id":"39c21abc3df9550077797d18","hid":349,"name":"Vitaly","nick":"Vitaly","avatar_id":null,"css":""},"44e896f03df95500777897b0":{"_id":"44e896f03df95500777897b0","hid":16248,"name":"lelik","nick":"lelik","avatar_id":null,"css":""},"4a1fb3153df955007776d8d1":{"_id":"4a1fb3153df955007776d8d1","hid":48849,"name":"BigDEN","nick":"BigDEN","avatar_id":null,"css":""},"4b9603423df95500777637a7":{"_id":"4b9603423df95500777637a7","hid":62450,"name":"evgenyl","nick":"evgenyl","avatar_id":null,"css":""},"4d0b827c3df9550077758922":{"_id":"4d0b827c3df9550077758922","hid":76620,"name":"chevava","nick":"chevava","avatar_id":null,"css":""}},"settings":{"blogs_can_create":false,"blogs_mod_can_delete":false,"blogs_mod_can_hard_delete":false,"blogs_mod_can_add_infractions":false,"can_report_abuse":false,"can_vote":false,"can_see_ip":false,"blogs_edit_comments_max_time":30,"blogs_show_ignored":false,"blogs_reply_old_comment_threshold":30,"votes_add_max_time":168},"entry":{"_id":"4e33bd569970730077103929","hid":12252,"title":"А как тусовать IP между железками, если нет внешнего VLAN ?","html":"<p>Надо решить задачу, как размазать сайт на минимум 3 сервера, чтобы выключение одного не приводило к простою и потере данных.</p>\n<p>Чего есть:</p>\n<ul>\n<li>общий гигабитный линк (между серверами и наружу)</li>\n<li>внутренний гигабитный линк, если купить корзину (но жаба душит на лишние 200 евро в месяц)</li>\n<li>все данные, включая кеши - в mongodb, который ставится в реплику</li>\n<li>Failover IP - когда внешний IP помирает, траффик автоматически идет на запасной</li>\n</ul>\n<p>Чего нет:</p>\n<ul>\n<li>VLAN на внешние IP не реален. Провайдер не даст.</li>\n</ul>\n<p>Обязательно почти все завернуть в виртуалки, чтобы их можно было двигать туды-сюды на время апгрейдов железа и т.п.</p>\n<p>Не смог придумать ничего умнее, чем ставить 2 прокси/роутера на внешние IP с failover, а оттуда заруливать траффик на самопальный внутренний VLAN. Монстр какой-то. Это вообще можно сделать красивее?</p>\n","user":"39c21abc3df9550077797d18","ts":"2011-07-30T08:14:14.000Z","st":1,"cache":{"comment_count":6,"last_comment":"4e36764a9970730077161d1e","last_comment_hid":6,"last_ts":"2011-08-01T09:47:54.000Z","last_user":"4a1fb3153df955007776d8d1"},"views":791,"bookmarks":0,"votes":0},"subscription":null},"locale":"en-US","user_id":"000000000000000000000000","user_hid":0,"user_name":"","user_nick":"","user_avatar":null,"is_member":false,"settings":{"can_access_acp":false,"can_use_dialogs":false,"hide_heavy_content":false},"unread_dialogs":false,"footer":{"rules":{"to":"common.rules"},"contacts":{"to":"rco-nodeca.contacts"}},"navbar":{"tracker":{"to":"users.tracker","autoselect":false,"priority":10},"forum":{"to":"forum.index"},"blogs":{"to":"blogs.index"},"clubs":{"to":"clubs.index"},"market":{"to":"market.index.buy"}},"recaptcha":{"public_key":"6LcyTs0dAAAAADW_1wxPfl0IHuXxBG7vMSSX26Z4"},"layout":"common.layout"}