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

Отработка отказа / балансировщик нагрузки для WHM / cPanel

У меня простой вопрос, на который я не смог найти простого ответа. Вот сценарий:

Сервер 1: WHM / cPanel с несколькими учетными записями / dbs

Сервер 2: WHM / cPanel с несколькими учетными записями / dbs

Сервер 3: Heartbeat для сервера 1. (W переключает маршруты к серверу 2 в случае, если сервер 1 недоступен.)

Вопрос: Как мне синхронизировать Сервер 1 и Сервер 2? Я могу синхронизировать настройки DNS с помощью функций кластера, но как насчет файлов / dbs? Я готов замочить руки при написании кода, но понятия не имею, как это сделать.

С уважением, Науман.

Если файлы не меняются часто, вы можете использовать rsync или Unison. Также можно использовать репликацию на уровне блочных устройств (DRBD) или файловой системы кластера (GlusterFS, GFS).

Для синхронизации базы данных можно использовать репликацию.

В общем, если вы хотите добиться высокой доступности, панели управления либо сильно испортят вещи, либо усложнят вещи до такой степени, что они станут настолько хрупкими, что один неверный шаг приведет к поломке. Вы также сталкиваетесь с риском, что лицензирование не работает, хотя я недостаточно знаком с WHM / CPanel, чтобы точно сказать, будет ли это проблемой.

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

В моем случае я использовал Xen с серверной частью DRBD. У меня есть Xen DomU, работающий на каждом сервере с его собственной копией DirectAdmin в этом случае, и heartbeat управляет переключением DomU между ними. То же самое и с другими технологиями виртуализации.