天天看點

nginx(三)反向代理和負載均衡

nginx(三)反向代理和負載均衡

正向代理概念:比如在學校要上網,在學校内網是一個内網ip,需要連上公網就需要一個正向代理伺服器。

反向代理概念: 看下圖(Nginx隻做請求的轉發,背景有多個http伺服器提供服務,nginx的功能就是把請求轉發給後面的伺服器,決定把請求轉發給誰。)

  

nginx(三)反向代理和負載均衡

負載均衡:

  1:首先安裝兩個tomcat,安裝好以後的通路位址:

      tomcat1:  http://192.168.0.101:8080

      tomcat2:  http://192.168.0.114:8080

  2:修改本地host檔案,模拟域名綁定伺服器dns解析情況:

      

nginx(三)反向代理和負載均衡

  3:Nginx配置:

    

nginx(三)反向代理和負載均衡

    這裡設定了一個upstream   并且命名為myServer

    在server節點綁定了域名www.ganbo.xin的虛拟主機,監聽80端口,ROOT節點使用proxy_pass代替,轉發到http://myServer的upstream.

    注意這裡的http://myServer中的http://字首不能少些。upstream中配置指向了兩台伺服器192.168.0.101:8080和192.168.114:8080

    并且制定了他們的負載均衡權重分表為1和2,也就是說平均沒三次通路都有一次負載到101伺服器和2次負載到114伺服器.

    這樣就配置了有通路nginx二代理到了内網的伺服器這裡就叫做反向代理,内網兩台和多台伺服器提供同一個服務就叫做負載均衡。

    通路:www.ganbo.xin出現頁面:

nginx(三)反向代理和負載均衡

    通路到其中的一台伺服器,然後重新整理通路到另外一台伺服器。

nginx(三)反向代理和負載均衡

            注意:

                

nginx(三)反向代理和負載均衡

 Nginx的高可用:

      解決高可用的方案就是添加備援,使用keepalived實作一個nginx主備,當主的nginx挂掉的時候能夠動态的切換到備用的nginx上去,保證nginx的高可用。