弹性负载平衡器和每个节点上的清漆

我们想在由Auto-Scaling Group和ELB处理的节点上安装Varnish。 目前这些服务器基于2-10个节点的负载进行增长和收缩。 由于成本影响,我们不希望有另一个“主”清漆服务器。

我们的最佳图表如下所示:

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

为了进一步理解,清漆将在每个节点上运行,就好像所有三个都是分开的。

我们如何保持所有Varnish的同步,特别是涉及caching事件(例如,有人在WordPress上更新了一个post,而WordPress则清除了其中一个Varnishcaching,而不是其他两个)。 我宁愿不添加另一个专门的清漆服务器来监督所有这一切。 你通常如何处理3个清漆实例彼此同步? 有没有我没有正确思考或替代configuration?

通常我们有一个单一的pipe理服务器,运行wordpress或magento,它们内置了特殊的清漆插件,它具有所有的逻辑,并向每台服务器上的varnishadm发送命令。 或者你可以从你的工作人员做同样的事情,取决于你的申请。

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