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

Распределить все услуги между 3 VPS

я просто арендую 3 сервера vps с этим:
4 ГБ оперативной памяти
150 ГБ жесткий диск
2 процессора
6 ip-адрес

Итак, у нас есть vps1, vps2 и vps3, и я думаю
распространять услуги следующим образом:
VPS1 - интерфейс
+ DNS-сервер
+ Сервер MySql
+ NFS (обмен файлами между vps2 и vps3)

VPS2, VPS3 - серверы приложений
+ PHP
+ Apache
+ Lighhttpd (статические файлы)
+ Постфикс
+ Голубятня

vps1 имеет все файлы для приложений, файлы php, файлы js, файлы css, файлы html и т. д. и т. д. VPS2 и VPS3 монтируют эти файлы по сети.

vps1 получает запрос из Интернета, через порт (80,110,25) передает запрос на VPS2 или VPS3, если требуются данные, может подключиться к серверу mysql в VPS1

Есть ли хорошая идея в VPS1 установить HAProxy для балансировки нагрузки на VPS2 и VPS3?
Может ли кто-нибудь предложить мне лучшую настройку, советы или идеи?

Спасибо

Большинство провайдеров VPS также предоставляют балансировку нагрузки, разгрузку SSL и DNS как услугу. Если ваши потребности не особенные, вам лучше сначала попытаться воспользоваться их услугами, замена их собственными решениями только усложнит ситуацию.

Исходящая электронная почта - это тривиальная служба, которую можно установить на всех экземплярах, как заявил lVlint67.

Остается бороться только с webapp, dovecot и mysql за кулисами. Конечно, вам могут потребоваться динамические изменения DNS, dovecot и smtp, поэтому YMMV.

Мы используем haproxy для балансировки нагрузки.

У вас есть несколько вопиющих недостатков

1) если vps1 выходит из строя, haproxy и все ваши сетевые монтирования ломаются. и mysql ломается ....

Лучшей настройкой было бы:

  1. запустите keepalived на всех серверах и поделитесь виртуальным ip между тремя
  2. запустите haproxy на всех серверах и пусть он прослушивает виртуальный ip
  3. запустить mysql-cluster (данные / узлы хранения на всех серверах / управление на vps1)
  4. пропустить NFS и зеркальные файлы с помощью rsync или аналогичных для всех серверов.
  5. каждый сервер может запускать posftfix

У меня нет опыта работы с dovecot (на самом деле у меня только плохо ..), но я считаю, что он должен работать за виртуальным ip и haproxy.

При такой настройке вы можете потерять любой 1 сервер и продолжать работу всех служб.

Если вы потеряете 2, mysql-cluster расстроится, но все остальное будет работать.