久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      Linux下部署搭建Keepalived+LVS負(fù)載均衡實(shí)戰(zhàn)

      1.1 LVS簡(jiǎn)介
          LVS(Linux Virtual Server),也就是Linux虛擬服務(wù)器, 是一個(gè)自由軟件項(xiàng)目。使用LVS技術(shù)要達(dá)到的目標(biāo)是:通過LVS提供的負(fù)載均衡技術(shù)和Linux操作系統(tǒng)實(shí)現(xiàn)一個(gè)高性能、高可用的服務(wù)器群集,它具有良好可靠性、可擴(kuò)展性和可操作性。從而以低廉的成本實(shí)現(xiàn)最優(yōu)的服務(wù)性能。
          LVS主要用來做四層負(fù)載均衡。
       
      1.2 Keepalived簡(jiǎn)介
          Keepalived是分布式部署系統(tǒng)解決系統(tǒng)高可用的軟件,結(jié)合LVS(Linux Virtual Server)使用,其功能類似于heartbeat,解決單機(jī)宕機(jī)的問題。
          Keepalived是以VRRP協(xié)議為實(shí)現(xiàn)基礎(chǔ)的,VRRP全稱Virtual Router Redundancy Protocol,即虛擬路由冗余協(xié)議。通過VRRP協(xié)議結(jié)合LVS,對(duì)組群服務(wù)器監(jiān)控情況,若master出現(xiàn)宕機(jī)情況,則將VIP漂移到backup機(jī)上。實(shí)現(xiàn)了分布式系統(tǒng)高可用。可以理解為:keepalived是LVS的管理軟件,根據(jù)監(jiān)控情況,將宕機(jī)服務(wù)器從ipvsadm移除掉。
            Keepalived的誕生最初是為L(zhǎng)VS ipvs(director)提供高可用性的,后來發(fā)展一個(gè)多功能、通用的輕量級(jí)高可用組件,可以為ipvs、nginx、haproxy等諸多服務(wù)提供高可用功能,主要應(yīng)用在負(fù)載均衡調(diào)度器上,同時(shí)也可以檢查后端各realserver的健康狀態(tài)。
       
      1.3 負(fù)載均衡
          四層負(fù)載均衡工作在OSI模型的傳輸層,由于在傳輸層,只有TCP/UDP協(xié)議,這兩種協(xié)議中除了包含源IP、目標(biāo)IP以外,還包含源端口號(hào)及目的端口號(hào)。四層負(fù)載均衡服務(wù)器在接受到客戶端請(qǐng)求后,以后通過修改數(shù)據(jù)包的地址信息(IP+端口號(hào))將流量轉(zhuǎn)發(fā)到應(yīng)用服務(wù)器。
            七層負(fù)載均衡工作在OSI模型的應(yīng)用層,應(yīng)用層協(xié)議較多,常用http、radius、dns等。七層負(fù)載就可以基于這些協(xié)議來負(fù)載。這些應(yīng)用層協(xié)議中會(huì)包含很多有意義的內(nèi)容。比如同一個(gè)Web服務(wù)器的負(fù)載均衡,除了根據(jù)IP加端口進(jìn)行負(fù)載外,還可根據(jù)七層的URL、瀏覽器類別、語(yǔ)言來決定是否要進(jìn)行負(fù)載均衡。
            四層通過虛擬 IP + 端口接收請(qǐng)求,然后再分配到真實(shí)的服務(wù)器,七層通過虛擬的 URL 或主機(jī)名接收請(qǐng)求,然后再分配到真實(shí)的服務(wù)器。所謂的四到七層負(fù)載均衡,就是在對(duì)后臺(tái)的服務(wù)器進(jìn)行負(fù)載均衡時(shí),依據(jù)四層的信息或七層的信息來決定怎么樣轉(zhuǎn)發(fā)流量。
       
      2. 搭建過程及測(cè)試
       
      2.1 主機(jī)配置
      主機(jī)名
      ip
      操作系統(tǒng)
      軟件
      端口
      lvs01
      10.1.28.253
      CentOS 7.0
      lvs  keepalived
      8080
      lvs02
      10.1.28.70
      CentOS 7.0
      lvs keepalived
      8080
      Nginxsever01
      10.1.28.30
      CentOS 7.0
      nginx
      8080
       Nginxsever01
       10.1.28.40  CentOS 7.0  nginx  8080
       
      2.3 搭建準(zhǔn)備
      2.3.1 關(guān)閉所有機(jī)器防火墻
      [root@lvs01 ~]#systemctl stop firewalld.service
       
      2.3.2 關(guān)閉防selinux
      關(guān)閉所有服務(wù)器selinux,修改/etc/selinux/config,將SELINUX由enforcing設(shè)置為disabled,重啟服務(wù)器。
       
      2.4 ipvs安裝
      LVS無需安裝,安裝的是管理工具,第一種叫ipvsadm,第二種叫keepalive。ipvsadm是通過命令行管理,而keepalive讀取配置文件管理。
      分別在lvs01和lvs02執(zhí)行如下操作:
      [root@lvs01 ~]# yum -y install ipvsadm
       
      2.4.1 把模塊加載進(jìn)系統(tǒng)
      [root@lvs01 ~]#ipvsadm
       
      2.5 keepalived安裝
      分別在lvs01和lvs02執(zhí)行如下操作:
      [root@lvs01 ~]# yum -y install keepalived
       
      2.6 keepalived配置
      ! Configuration File for keepalived
       
      global_defs {
      router_id MASTER    ## keepalived 服務(wù)器標(biāo)識(shí)符,可以隨意設(shè)定( 貌似也是全局唯一 )
      vrrp_instance VI_1 {     ## 定義一個(gè)名為 VI_1 的 VRRP 實(shí)例
      state MASTER   ## Keepalived 服務(wù)器角色,MASTER 為主、BACKUP 為備
      interface eth0    ## 指定 HA 監(jiān)測(cè)網(wǎng)絡(luò)接口
      virtual_router_id 51    ## 虛擬路由標(biāo)識(shí),同一個(gè) VRRP 實(shí)例使用唯一的標(biāo)識(shí),主備必須一樣
      priority 100    ## 節(jié)點(diǎn)優(yōu)先級(jí),同一 VRRP 實(shí)例中 MASTER 的優(yōu)先級(jí)必須大于 BACKUP
      advert_int 1    ## MASTER / BACKUP 之間同步檢查間隔時(shí)間,單位 秒
      authentication {   ## 節(jié)點(diǎn)之間通信驗(yàn)證類型、密碼 ,同一 VRRP 實(shí)例中,MASTER / BACKUP 必須使用相同的密碼才可以通信
      auth_type PASS
      auth_pass 123456
      }
      virtual_ipaddress { ## 虛擬 IP 地址,又稱漂移 IP ??梢酝ㄟ^ ip add 在 MASTER 上查看是否綁定
      10.1.28.123
      }
      }
      virtual_server 10.1.28.123 8080 {   ## 定義虛擬服務(wù)器
      delay_loop 6   ## 定義健康檢查時(shí)間間隔,單位 秒
      lb_algo rr   ## 負(fù)載均衡調(diào)度算法,支持 rr 、wrr 、lc 、wlc 、lblc 、sh 、dh 等
      lb_kind DR   ## LVS 負(fù)載均衡機(jī)制,支持 NAT 、TUN 、DR
      persistence_timeout 120   ## 會(huì)話保持時(shí)間,單位 秒。提供動(dòng)態(tài)頁(yè)面 session 保持功能,同一 IP 該值時(shí)間內(nèi)被持續(xù)分配到同一臺(tái)節(jié)點(diǎn)服務(wù)器上
      protocol TCP   ## 轉(zhuǎn)發(fā)協(xié)議類型,支持 TCP 、UDP
      real_server 10.1.28.30 8080 { ## 定義節(jié)點(diǎn)服務(wù)器
      weight 1   ## 節(jié)點(diǎn)權(quán)重值,數(shù)字越大權(quán)重越高,分配到的連接越多。主要用于后端節(jié)點(diǎn)服務(wù)器性能不統(tǒng)一
      notify_down /etc/keepalived/real_down.sh   ## 該節(jié)點(diǎn)服務(wù)器處于 DOWN 狀態(tài)后執(zhí)行的腳本
      TCP_CHECK {   ## 健康檢測(cè)方式,支持 HTTP_GET 、SSL_GET 、TCP_CHECK 、SMTP_CHECK 、MISC_CHECK
      connect_port 8080   ## 檢測(cè)端口,不指定時(shí)默認(rèn)為 real_server 指定的端口
      connect_timeout 3  ## 無響應(yīng)超時(shí)時(shí)間,單位 秒
      nb_get_retry 3  ## 重試次數(shù)
      delay_before_retry 3  ## 重試間隔,單位 秒
      }
      }
      real_server 10.1.28.40 8080  { ## 第二臺(tái)節(jié)點(diǎn)服務(wù)器
      weight 1
      notify_down /etc/keepalived/real_down.sh
      TCP_CHECK {
      connect_port 8080
      connect_timeout 3
      nb_get_retry 3
      delay_before_retry 3
      }
      }
      }

       
      lvs02配置
      ! Configuration File for keepalived
       
      global_defs {
         router_id lvs02
      }
      vrrp_instance VI_1 {
          state BACKUP
          interface ens160
          virtual_router_id 51
          priority 90
         advert_int 1
          authentication {
              auth_type PASS
              auth_pass 1111
          }
          virtual_ipaddress {
             10.1.28.123
          }
      }
      virtual_server 10.1.28.123 8080 {
          delay_loop 6
          lb_algo rr
          lb_kind DR
         # persistence_timeout 50
          protocol TCP
          real_server 10.1.28.30 8080 {
              weight 1
              TCP_CHECK{
              connetct_timeout 10
              retry 3
              delay_before_retry 3
              connetct_port 8080
       
      }
      }
           real_server 10.1.28.40 8080 {
              weight 2
              TCP_CHECK{
              connetct_timeout 10
              retry 3
              delay_before_retry 3
              connetct_port 8080
       
      }
      }
      }
       

      2.7 參數(shù)說明
      IPVS三種IP負(fù)載均衡技術(shù):
      VS/NAT: 即(Virtual Server via Network Address Translation)
      也就是網(wǎng)絡(luò)地址翻譯技術(shù)實(shí)現(xiàn)虛擬服務(wù)器,當(dāng)用戶請(qǐng)求到達(dá)調(diào)度器時(shí),調(diào)度器將請(qǐng)求報(bào)文的目標(biāo)地址(即虛擬IP地址)改寫成選定的Real Server地址,同時(shí)報(bào)文的目標(biāo)端口也改成選定的Real Server的相應(yīng)端口,最后將報(bào)文請(qǐng)求發(fā)送到選定的Real Server。在服務(wù)器端得到數(shù)據(jù)后,Real Server返回?cái)?shù)據(jù)給用戶時(shí),需要再次經(jīng)過負(fù)載調(diào)度器將報(bào)文的源地址和源端口改成虛擬IP地址和相應(yīng)端口,然后把數(shù)據(jù)發(fā)送給用戶,完成整個(gè)負(fù)載調(diào)度過程??梢钥闯觯贜AT方式下,用戶請(qǐng)求和響應(yīng)報(bào)文都必須經(jīng)過Director Server地址重寫,當(dāng)用戶請(qǐng)求越來越多時(shí),調(diào)度器的處理能力將稱為瓶頸。
       
      VS/TUN:即(Virtual Server via IP Tunneling)
      也就是IP隧道技術(shù)實(shí)現(xiàn)虛擬服務(wù)器。它的連接調(diào)度和管理與VS/NAT方式一樣,只是它的報(bào)文轉(zhuǎn)發(fā)方法不同,VS/TUN方式中,調(diào)度器采用IP隧道技術(shù)將用戶請(qǐng)求轉(zhuǎn)發(fā)到某個(gè)Real Server,而這個(gè)Real Server將直接響應(yīng)用戶的請(qǐng)求,不再經(jīng)過前端調(diào)度器,此外,對(duì)Real Server的地域位置沒有要求,可以和Director Server位于同一個(gè)網(wǎng)段,也可以是獨(dú)立的一個(gè)網(wǎng)絡(luò)。因此,在TUN方式中,調(diào)度器將只處理用戶的報(bào)文請(qǐng)求,集群系統(tǒng)的吞吐量大大提高。
       
      VS/DR: 即(Virtual Server via Direct Routing)
      也就是用直接路由技術(shù)實(shí)現(xiàn)虛擬服務(wù)器。它的連接調(diào)度和管理與VS/NAT和VS/TUN中的一樣,但它的報(bào)文轉(zhuǎn)發(fā)方法又有不同,VS/DR通過改寫請(qǐng)求報(bào)文的MAC地址,將請(qǐng)求發(fā)送到Real Server,而Real Server將響應(yīng)直接返回給客戶,免去了VS/TUN中的IP隧道開銷。這種方式是三種負(fù)載調(diào)度機(jī)制中性能最高最好的,但是必須要求Director Server與Real Server都有一塊網(wǎng)卡連在同一物理網(wǎng)段上,且真實(shí)服務(wù)器網(wǎng)絡(luò)設(shè)備或設(shè)備別名不作 ARP 響應(yīng)。
       
      IPVS調(diào)度器實(shí)現(xiàn)了如下八種負(fù)載調(diào)度算法:
      輪叫(Round Robin)
      調(diào)度器通過”輪叫”調(diào)度算法將外部請(qǐng)求按順序輪流分配到集群中的真實(shí)服務(wù)器上,它均等地對(duì)待每一臺(tái)服務(wù)器,而不管服務(wù)器上實(shí)際的連接數(shù)和系統(tǒng)負(fù)載。
       
      加權(quán)輪叫(Weighted Round Robin)
      調(diào)度器通過”加權(quán)輪叫”調(diào)度算法根據(jù)真實(shí)服務(wù)器的不同處理能力來調(diào)度訪問請(qǐng)求。這樣可以保證處理能力強(qiáng)的服務(wù)器處理更多的訪問流量。調(diào)度器可以自動(dòng)問詢真實(shí)服務(wù)器的負(fù)載情況,并動(dòng)態(tài)地調(diào)整其權(quán)值。
       
      最少鏈接(Least Connections)
      調(diào)度器通過”最少連接”調(diào)度算法動(dòng)態(tài)地將網(wǎng)絡(luò)請(qǐng)求調(diào)度到已建立的鏈接數(shù)最少的服務(wù)器上。如果集群系統(tǒng)的真實(shí)服務(wù)器具有相近的系統(tǒng)性能,采用”最小連接”調(diào)度算法可以較好地均衡負(fù)載。
       
      加權(quán)最少鏈接(Weighted Least Connections)
      在集群系統(tǒng)中的服務(wù)器性能差異較大的情況下,調(diào)度器采用”加權(quán)最少鏈接”調(diào)度算法優(yōu)化負(fù)載均衡性能,具有較高權(quán)值的服務(wù)器將承受較大比例的活動(dòng)連接負(fù)載。調(diào)度器可以自動(dòng)問詢真實(shí)服務(wù)器的負(fù)載情況,并動(dòng)態(tài)地調(diào)整其權(quán)值。
       
      基于局部性的最少鏈接(Locality-Based Least Connections)
      “基于局部性的最少鏈接” 調(diào)度算法是針對(duì)目標(biāo)IP地址的負(fù)載均衡,目前主要用于Cache集群系統(tǒng)。該算法根據(jù)請(qǐng)求的目標(biāo)IP地址找出該目標(biāo)IP地址最近使用的服務(wù)器,若該服務(wù)器 是可用的且沒有超載,將請(qǐng)求發(fā)送到該服務(wù)器;若服務(wù)器不存在,或者該服務(wù)器超載且有服務(wù)器處于一半的工作負(fù)載,則用”最少鏈接”的原則選出一個(gè)可用的服務(wù) 器,將請(qǐng)求發(fā)送到該服務(wù)器。
       
      帶復(fù)制的基于局部性最少鏈接(Locality-Based Least Connections with Replication)
      “帶復(fù)制的基于局部性最少鏈接”調(diào)度算法也是針對(duì)目標(biāo)IP地址的負(fù)載均衡,目前主要用于Cache集群系統(tǒng)。它與LBLC算法的不同之處是它要維護(hù)從一個(gè) 目標(biāo)IP地址到一組服務(wù)器的映射,而LBLC算法維護(hù)從一個(gè)目標(biāo)IP地址到一臺(tái)服務(wù)器的映射。該算法根據(jù)請(qǐng)求的目標(biāo)IP地址找出該目標(biāo)IP地址對(duì)應(yīng)的服務(wù) 器組,按”最小連接”原則從服務(wù)器組中選出一臺(tái)服務(wù)器,若服務(wù)器沒有超載,將請(qǐng)求發(fā)送到該服務(wù)器,若服務(wù)器超載;則按”最小連接”原則從這個(gè)集群中選出一 臺(tái)服務(wù)器,將該服務(wù)器加入到服務(wù)器組中,將請(qǐng)求發(fā)送到該服務(wù)器。同時(shí),當(dāng)該服務(wù)器組有一段時(shí)間沒有被修改,將最忙的服務(wù)器從服務(wù)器組中刪除,以降低復(fù)制的 程度。
       
      目標(biāo)地址散列(Destination Hashing)
      “目標(biāo)地址散列”調(diào)度算法根據(jù)請(qǐng)求的目標(biāo)IP地址,作為散列鍵(Hash Key)從靜態(tài)分配的散列表找出對(duì)應(yīng)的服務(wù)器,若該服務(wù)器是可用的且未超載,將請(qǐng)求發(fā)送到該服務(wù)器,否則返回空。
       
      源地址散列(Source Hashing)
      “源地址散列”調(diào)度算法根據(jù)請(qǐng)求的源IP地址,作為散列鍵(Hash Key)從靜態(tài)分配的散列表找出對(duì)應(yīng)的服務(wù)器,若該服務(wù)器是可用的且未超載,將請(qǐng)求發(fā)送到該服務(wù)器,否則返回空。
       
      本例中采用DR負(fù)載均衡和wrr負(fù)載調(diào)度算法
       
      3. 負(fù)載均衡及高可用測(cè)試
      3.1 啟動(dòng)Keepalived
      lvs01和lvs02分別執(zhí)行:
      [root@lvs01 ~]# service keepalived start
      執(zhí)行ip a,lvs01上有vip10.1.28.123,lvs02沒有
       
      3.2 頁(yè)面訪問
      通過不同瀏覽器訪問http://10.1.28.30:8080
      Linux下部署搭建Keepalived+LVS負(fù)載均衡實(shí)戰(zhàn)
      3.3 Master上檢查連接情況
      lvs01上執(zhí)行ipvsadm -ln:
      Linux下部署搭建Keepalived+LVS負(fù)載均衡實(shí)戰(zhàn)
      3.4 ipvsadm參數(shù)說明
      ipvsadm:
      -L|-l(–list):顯示內(nèi)核虛擬服務(wù)器表
      -n(–numeric):輸出IP 地址和端口的數(shù)字形式
      輸出參數(shù)說明:
      Forward 轉(zhuǎn)發(fā)方式,當(dāng)前是路由轉(zhuǎn)發(fā)
      Weight 權(quán)重
      ActiveConn 當(dāng)前活躍的連接數(shù)
      InActConn 當(dāng)前不活躍的連接數(shù)
       
      3.5 修改keepalived參數(shù)
      通過ipvsadm命令發(fā)現(xiàn)訪問請(qǐng)求都被分配到92(nginx02)這臺(tái)服務(wù)器,沒有實(shí)現(xiàn)負(fù)載均衡。這個(gè)和keepalived參數(shù)配置persistence_timeout有關(guān),這個(gè)參數(shù)的意義是保持客戶端的請(qǐng)求在這個(gè)時(shí)間段內(nèi)全部發(fā)到同一個(gè)真實(shí)服務(wù)器。
      分別注釋lvs01和lvs02的persistence_timeout:
      [root@lvs01 keepalived]# cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak
      [root@lvs01 keepalived]# view /etc/keepalived/keepalived.conf #persistence_timeout 50
      重啟兩臺(tái)lvs服務(wù)器keepalived服務(wù):
      [root@lvs01 keepalived]# service keepalived restart
      再次測(cè)試:
      Linux下部署搭建Keepalived+LVS負(fù)載均衡實(shí)戰(zhàn)
      發(fā)現(xiàn)連接均勻的分配到后臺(tái)兩臺(tái)nginx服務(wù)器。
       
      3.5.5 lvs高可用測(cè)試
      恢復(fù)keepalived配置并重啟服務(wù)。
      lvs01宕機(jī)前訪問頁(yè)面:
      Linux下部署搭建Keepalived+LVS負(fù)載均衡實(shí)戰(zhàn)
      停止lvs01的keepalived服務(wù),模擬lvs01宕機(jī):
      systemctl stop keepalived 
      Linux下部署搭建Keepalived+LVS負(fù)載均衡實(shí)戰(zhàn)
      查看lvs02情況:
      發(fā)現(xiàn)vip已飄至lvs02。
      Linux下部署搭建Keepalived+LVS負(fù)載均衡實(shí)戰(zhàn) 
      http://10.1.28.123:8080,訪問正常:
      Linux下部署搭建Keepalived+LVS負(fù)載均衡實(shí)戰(zhàn)
      恢復(fù)lvs01的keepalived服務(wù):
      Linux下部署搭建Keepalived+LVS負(fù)載均衡實(shí)戰(zhàn)
      發(fā)現(xiàn)vip飄回至lvs01,vip頁(yè)面訪問正常
       
      總結(jié):
      當(dāng) MASTER 服務(wù)器無法提供服務(wù)時(shí),VIP 會(huì)在 MASTER 上自動(dòng)移除,BACKUP 服務(wù)器會(huì)提升為 MASTER 狀態(tài),綁定 VIP 、接管服務(wù)。
      當(dāng) MASTER 修復(fù)加入網(wǎng)絡(luò)后,會(huì)自動(dòng)搶回 VIP ,成為 MASTER 身份。
      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)