接下来的事情就比较简单了
在两台Cache上分别配置相同的varnish和nginx,nginx做前端,承担日志记录和负载分担功能,把web请求均匀分担到主备两台缓存的varnish上,也就是在nginx配置里设置upstream分别为浮动地址和备机真实地址,主备两台缓存一起为主用服务器上的nginx提供请求响应。我把主机头判断和后台服务器的主备监测放到varnish上实现。
如果主用服务器宕机,对外web地址浮动到备用服务器上,这时候虽然nginx仍然以为自己是在向两个后端进行请求的负载分担,但实际是分别发送到备机的真实IP和浮动IP上,其实也就是备机上缓存服务。当主机恢复以后,浮动地址回到主用服务器上,缓存服务的负载分担也恢复。
而后端web服务的宕机,由varnish里的restart来实现。这个部分还没有实际检验过,准备下周进行试验。
nginx和varnish的配置就不贴了,和以前写的一些东西大同小异。
http://www.2tutu.com/post/200.html
http://www.2tutu.com/post/263.html
http://www.2tutu.com/post/240.html

订阅我的BLOG(RSS)