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

Эластичный балансировщик нагрузки и лак на каждом узле

Мы хотим установить Varnish на наших узлах, которые обслуживаются группой автоматического масштабирования и ELB. В настоящее время эти серверы растут и сокращаются в зависимости от нагрузки с 2-10 узлов. Мы не хотим иметь еще один «главный» лакировочный сервер из-за финансовых последствий.

Наша оптимальная диаграмма будет выглядеть так:

           ELB
          / | \
Node 1 - Node 2 - Node 3, etc.
  |         |        |
Varnish  Varnish  Varnish
  |         |        |
Apache   Apache   Apache
  |         |        |
Centralized MySQL/File Servers

Для дальнейшего понимания Varnish будет работать на каждом из узлов, как если бы все три были отдельными.

Как сохранить синхронизацию всего Varnish, особенно в том, что касается событий кеширования (например, кто-то обновляет сообщение в WordPress, и WordPress очищает один из кешей Varnish, но не два других). Я бы не стал добавлять еще один выделенный сервер Varnish для наблюдения за всем этим. Как вы обычно справляетесь с синхронизацией трех экземпляров лака друг с другом? Есть ли что-то, о чем я неправильно думаю или альтернативная конфигурация?

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

           ELB
          / | \
Node 1 - Node 2 - Node 3, etc.
  |         |        |
Varnish  Varnish  Varnish
  |         |        |
Apache   Apache   Apache
  \         |        /
    Master Admin Node
   \        |       /
Centralized MySQL/File Servers