我在AzureRM中进行了以下设置。
----------
----------- ---------- ----------- |app srv1|
| App | | Varnish| | Load | ---> ----------
| Gateway | --> | Cache | --> | Balancer|
| | | server | | | ---> ----------
----------- ---------- ----------- |app srv2|
----------
我想默认将所有请求发送到Varnish服务器,但如果Varnish死掉,请将它们直接引导到Load Balancer。
我读到可以使用app网关中的自定义探针实现故障转移,但是如果我将Load Balancer添加到后端池中,如果我的想法是正确的,我相信它会在Varnish和LB之间进行Round-Robin。
拥有App Gateway的原因是卸载SSL证书。
是否可以使用Azure服务实现此基础架构?
答案 0 :(得分:1)
不幸的是,今天没有一种简单的方法可以实现这一目标。尚不支持故障转移池。您的理解是正确的,如果您将LB添加到后端池并且它响应健康探测,Gateway将在Varnish和LB之间循环。一种迂回的方式可能是拥有另一台服务器,默认情况下无法进行探测,因此请求不会路由到它。如果主Varnish服务器出现故障,则此服务器应以200 OK开始响应探测器。这需要额外的代码来设置这个监视Varnish并相应地响应探测器的辅助服务器。