Я смотрел на Vsphere, чтобы автоматически балансировать нагрузку на мои веб-серверы apache и серверы mysql, но действительно ли это поможет?
Я знаю, что он говорит, что выполняет автоматическую балансировку нагрузки, но на самом деле не уверен, что это действительно означает, чего я хочу достичь.
Есть ли более простой способ настроить кластер php-apache и mysql на виртуальных машинах?
Или есть какие-нибудь руководства по кластеризации? (Я безуспешно пытался погуглить)
Любая помощь в понимании / настройке кластеризации и балансировки нагрузки в виртуальных машинах приветствуется.
Что делает vSphere:
Кластеризация MySQL - непростая задача, подробностей здесь не описать, но в целом:
Балансировка нагрузки Apache / web, оптимальная конфигурация:
Производительность LVS довольно высока - это уровень ядра, двухъядерный процессор 1,6 ГГц может работать более чем на гигабит в режиме NAT и предотвращать многие проблемы на уровне сети. Виртуальный IP-адрес будет принят на L2 сервером LB, и запросы будут перенаправлены ядром на IP-адреса сервера, которые могут иметь тот же IP (LVS-DR) или с NAT (LVS-NAT). LVS-DR требует особой конфигурации arp на стороне сервера, потому что все серверы будут работать с одним и тем же IP. Реализация LVS-NAT проще, и вы можете балансировать нагрузку на любой сервер. Для нормальной работы с LVS-NAT используйте ядро 2.6.37 или новее. Балансировщик также может действовать как шлюз и брандмауэр. Необходимо установить постоянство соединения, чтобы избежать некоторых проблем (см. LVS Docs), а таймауты TCP ядра должны быть установлены на минимальные значения. Вы также должны написать сценарии для проверки доступности хоста - работает он нормально или нет. Постарайтесь иметь 100% одинаковую конфигурацию на веб-узлах.
В глобальном масштабе - это очень красивая, очень эффективная и оптимальная архитектура, но после нее потребуется доработка. Узкое место - это ответ хранилища и mysql. php-apache HA / Balancing работает идеально.
Squid, mod_proxy_balancer, HAproxy и т. Д. Являются приложениями пользовательского уровня, неэффективными и тупыми:
Вы можете поиграть с пакетом кластеров RedHat и получить некоторые улучшения для совместного использования файлов (GFS2 и т. Д.), Иметь там HA приложения, но с вашей стороны потребуется больше усилий.
Для узла балансировки - я настоятельно рекомендую Fedora 15 или новее (чем новее ядро - тем лучше). В противном случае - все, что вы хотите, даже Windows (но будут некоторые проблемы с петлевым доступом по http).
Кроме того, я рекомендую вам использовать связывание на основе LACP на сторонах сети хранения.
Это не то решение, которое вы ищете. Кластеризация vSphere предназначена для защиты целых виртуальных машин, а не приложений на этих виртуальных машинах, вам понадобится балансировщик нагрузки для этого, извините, что-то простое, как прокси-сервер Squid / HA вплоть до комплекта Cisco ASA / F5, будет подходящим.