婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Keepalived實現Nginx負載均衡高可用的示例代碼

Keepalived實現Nginx負載均衡高可用的示例代碼

熱門標簽:四川保險智能外呼系統 濰坊寒亭400電話辦理多少錢 高德地圖標注公司需要錢 云南電商智能外呼系統哪家好 宜賓銷售外呼系統軟件 地圖標注員有發展前景嗎 廈門防封電銷電話卡 外呼系統全國 地圖標注能更改嗎

第一章:keepalived介紹

VRRP協議
目的就是為了解決靜態路由單點故障問題的

第二章: keepalived工作原理

2.1 作為系統網絡服務的高可用功能(failover)

keepalived高可用功能實現的基本原理為:
兩臺主機同時安裝好keepalived軟件并啟動服務,開始正常工作時
角色為Master的主機獲得所有資源并對用戶提供服務
角色為Backup的主機作為Master主機的熱備;

當角色為Master的主機失效或出現故障時
角色為Backup的主機將自動接管Master主機的所有工作,包括接管VIP資源及相應資源服務

而當角色為Master的主機故障修復后,又會自動接管回他原來處理的工作
角色為Backup的主機則同時釋放Master主機失效時他接管的工作
此時,兩臺主機將恢復到啟動時各自的原始角色及工作狀態

2.2 什么是VRRP
VRRP,全稱Virtual Router Redundancy Protocol,中文名為虛擬路由冗余協議
 VRRP的出現就是為了解決靜態路由的單點故障問題
 VRRP是通過一種競選機制來將路由的任務交給某臺VRRP路由器的.

VRRP通過競選機制來實現虛擬路由器的功能,所有的協議報文都是通過IP多播(Multicast)包(默認的多播地址224.0.0.18)形式發送的
 虛擬路由器由VRID(范圍0-255)和一組IP地址組成,對外表現為一個周知的MAC地址,:00-00-5E-00-01-{VRID}.
 所以,在一個虛擬路由器中,不管誰是Master,對外都是相同的MAC和IP(稱之為VIP).
 客戶端主機并不需要因Master的改變修改自己的路由配置.對它們來說,這種切換是透明的.

在一組虛擬路由器中,只有作為Master的VRRP路由器會一直發送VRRP廣播包,此時Backup不會搶占Master
 當Master不可用時,Backup就收不到來自Master的廣播包了,此時多臺Backup中優先級最高的路由器會搶占為Master.
 這種搶占是非常快速的(可能只有1秒甚至更少),以保證服務的連續性,處于安全性考慮,VRRP數據包使用了加密協議進行了加密.

2.3 面試的時候怎么說
解答:
keepalived高可用對之間是通過VRRP通信的,因此,我從VRRP開始給您講起.
1)VRRP,全稱Virtual Router Reduancy Protocol,中文名為虛擬路由器冗余協議,VRRP的出現是為了解決靜態路由的單點故障,
2)VRRP是通過一種競選協議來將路由任務交給某臺VRRP路由器的,
3)VRRP用IP多播的方式,(默認多播地址(224.0.0.18))實現高可用對之間通信.
4)工作時主節點發包,備節點接包,當備節點接收不到主節點發的包的時候,就啟動接管程序接管主節點的資源.備節點可以有多個,通過優先級競選,但一般keepalived系統運維工作中都是一對.
5)VRRP使用了加密協議加密數據,但keepalived官方目前還是推薦用明文的方式配置認證類型和密碼.
介紹完了VRRP,接下來我在介紹一下keepalived服務的工作原理;
keepalived高可用對之間是通過VRRP進行通信的,VRRP是通過競選機制來確定主備的,主的優先級高于備,因此,工作時會優先獲得所有的資源,備節點處于等待狀態,當主掛了的時候,備節點就會接管主節點的資源,然后頂替主節點對外提供服務.
在keepalived服務對之間,只有作為主的服務器會一直發送VRRP廣播包,告訴備他還活著,此時備不會搶占主,當主不可用時,即備監聽不到主發送的廣播包時,就會啟動相關服務接管資源,保證業務的連續性,接管速度最快可以小于一秒

第三章: VRRP協議
VRRP通過競選機制來實現虛擬路由器的功能
所有的協議報文都是通過IP多播(Multicast)包
默認的多播地址224.0.0.18

VIP前提條件:
1.虛擬公網IP必須是真實可用的
2.虛擬公網IP不能重復
3.組播地址必須是可以通訊的

第四章:keepalived安裝配置

1.安裝keepalived

yum install keepalived -y

2.配置文件解釋

global_defs {  
  router_id lb01  #設置路由ID,每個主機不一樣
} 

vrrp_instance VI_1 { #設置VRRP組名,同一組組名相同
  state MASTER  #設置角色狀態,分為MASTER BACKUP
    interface eth0 #VIP綁定的網卡
    virtual_router_id 50 #虛擬路由id,同一組一樣
    priority 150 #權重,權重越高,優先級越高
    advert_int 1 #發送組播間隔
    authentication { #設置驗證,密碼為明文
      auth_type PASS 
      auth_pass 1111 
    }
    virtual_ipaddress { #設定的虛擬IP,這個虛擬IP必須是存在且合法且沒有被使用的。
      10.0.0.3
    }
}

3.lb01配置

[root@lb01 ~]# cat /etc/keepalived/keepalived.conf 
global_defs {
  router_id lb01
}

vrrp_instance VI_1 {
  state MASTER
    interface eth0
    virtual_router_id 50
    priority 150
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 1111
    }
    virtual_ipaddress {
      10.0.0.3
    }
}

4.lb02配置

[root@lb02 ~]# cat /etc/keepalived/keepalived.conf 
global_defs {
  router_id lb02
}

vrrp_instance VI_1 {
  state BACKUP 
    interface eth0
    virtual_router_id 50
    priority 100
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 1111
    }
    virtual_ipaddress {
      10.0.0.3
    }
}

5.啟動

systemctl start keepalived

6.測試
關掉任意一臺,觀察VIP是否會漂移
恢復MASTER觀察BACKUP的VIP是否會消失

第五章:腦裂現象

1.安裝抓包工具

yum install tcpdump -y 

2.lb02抓包查看

tcpdump -nn -i any host 224.0.0.18

3.lb02新開一個終端,然后開啟防火墻

systemctl start firewalld.service

4.lb02觀察抓包現象
觀察是否兩邊都有VIP

5.添加放行規則

firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --in-interface eth0 --destination 224.0.0.18 --protocol vrrp -j ACCEPT
firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --in-interface eth1 --destination 224.0.0.18 --protocol vrrp -j ACCEPT
systemctl reload firewalld

6.lb02觀察抓包現象
觀察是否兩邊都有VIP

第六章:keepalived雙主實驗
1.lb01配置文件

[root@lb01 ~]# cat /etc/keepalived/keepalived.conf 
global_defs {
  router_id lb01
}

vrrp_instance VI_1 {
  state MASTER
    interface eth0
    virtual_router_id 50
    priority 150
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 1111
    }
    virtual_ipaddress {
      10.0.0.3
    }
}

vrrp_instance VI_2 {
  state BACKUP 
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 2222 
    }
    virtual_ipaddress {
      10.0.0.4
    }
}

2.lb02配置文件

[root@lb02 ~]# cat /etc/keepalived/keepalived.conf 
global_defs {
  router_id lb02
}

vrrp_instance VI_1 {
  state BACKUP 
    interface eth0
    virtual_router_id 50
    priority 100
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 1111
    }
    virtual_ipaddress {
      10.0.0.3
    }
}

vrrp_instance VI_2 {
  state MASTER 
    interface eth0
    virtual_router_id 51
    priority 150
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 2222 
    }
    virtual_ipaddress {
      10.0.0.4
    }
}

3.重啟keepalived并觀察現象

systemctl restart keepalived

第七章:keepalived結合nginx反向代理負載均衡
lb服務器的Nginx配置:
注意!兩臺lb服務器的Nginx配置一模一樣

1.備份原有配置

mkdir /backup
cd /etc/nginx/conf.d
mv * /backup 

2.編寫Nginx配置文件

[root@lb01 /etc/nginx/conf.d]# cat proxy.conf 
upstream web_pools {
  server 172.16.1.7;
  server 172.16.1.8;
}

server {
  listen 80;
  server_name (www|bbs).mysun.com ;
  location / {
   proxy_pass http://web_pools;
   include proxy_params;
  }
}

3.測試并重啟nginx

nginx -t
systemctl restart nginx 

lb服務器的keepalived配置:

1.lb01的keepalived配置

[root@lb01 ~]# cat /etc/keepalived/keepalived.conf 
global_defs {
  router_id lb01
}

vrrp_instance VI_1 {
  state MASTER
    interface eth0
    virtual_router_id 50
    priority 150
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 1111
    }
    virtual_ipaddress {
      10.0.0.3
    }
}

2.lb02的keepalived配置

[root@lb02 ~]# cat /etc/keepalived/keepalived.conf 
global_defs {
  router_id lb02
}

vrrp_instance VI_1 {
  state BACKUP 
    interface eth0
    virtual_router_id 50
    priority 100
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 1111
    }
    virtual_ipaddress {
      10.0.0.3
    }
}

web服務器配置:

注意!兩臺web服務器配置一模一樣

1.nginx配置

[root@web01 ~]# cat /etc/nginx/conf.d/www.conf 
server {
 listen 80;
 server_name www.mysun.com;
 location / {
   root /code;
   index www.html;
 }
}

2.寫入測試文件

echo "$(hostname)" >/code/index.html 

第八章: 防裂腦腳本

1.問題現象:
1.nginx掛了,但是keep還活著
2.兩邊都有VIP

2.思路:
解決nginx掛了問題:
1.編寫一個腳本

  • 啟動nginx
  • 如果啟動2次都失敗了,停掉自己的keepalived

2.keepalived定時去調用這個腳本

3.實現:

1.命令如何實現

systemctl start nginx

2.檢查nginx進程

[root@lb01 ~]# ps -ef|grep nginx|grep -v "grep"
root    1210   1 0 11:21 ?    00:00:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
nginx   1211  1210 0 11:21 ?    00:00:00 nginx: worker process
[root@lb01 ~]# ps -ef|grep nginx|grep -v "grep"|wc -l
2
[root@lb01 ~]# ps -ef|grep nginx|grep -v "grep"|wc -l
0

腳本內容:

[root@lb01 ~]# cat check_web.sh 
!/bin/bash

nginx_status=$(ps -C nginx --no-header|wc -l)

if [[ ${nginx_status} == 0 ]]
then
  systemctl start nginx &> /dev/null 
  sleep 1
  nginx_status=$(ps -C nginx --no-header|wc -l)
  if [[ ${nginx_status} == 0 ]]
  then
    systemctl stop keepalived 
  fi
fi

keepalived調用腳本:

[root@lb01 ~]# cat /etc/keepalived/keepalived.conf 
global_defs {
  router_id lb01
}

vrrp_script check_web {
  script "/server/scripts/check_web.sh"
  interval 5
  weight 50
}

vrrp_instance VI_1 {
  state MASTER
    interface eth0
    virtual_router_id 50
    priority 150
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 1111
    }
    virtual_ipaddress {
      10.0.0.3
    }

  track_script {
    check_web
  }

}

4.第二個問題:腦裂問題
兩邊都有VIP

現象:
2邊都有VIP
2邊Nginx都活著

對面的MASTER的Nginx還活著

curl -I -s -w "%{http_code}\n" -o /dev/null 10.0.0.5

但是我又有了VIP

ip a |grep "10.0.0.3"|wc -l

我就把自己干掉

systemctl stop nginx 
systemctl stop keepalived 

腳本內容:

[root@lb02 /server/scripts]# cat check_vip.sh 

#!/bin/bash

master_status=$(curl -I -s -w "%{http_code}\n" -o /dev/null 10.0.0.5)

my_vip=$(ip a |grep "10.0.0.3"|wc -l)

if [ ${master_status} == 200 -a ${my_vip} == 1 ]
then
  systemctl stop nginx 
  systemctl stop keepalived 
fi

keepalived配置:

[root@lb02 ~]# cat /etc/keepalived/keepalived.conf 
global_defs {
  router_id lb02
}

vrrp_script check_web {
  script "/server/scripts/check_web.sh"
  interval 5
  weight 50
}

vrrp_script check_vip {
  script "/server/scripts/check_vip.sh"
  interval 5
  weight 50
}

vrrp_instance VI_1 {
  state BACKUP 
    interface eth0
    virtual_router_id 50
    priority 100
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 1111
    }
    virtual_ipaddress {
      10.0.0.3
    }
  track_script {
    check_web
    check_vip
  }
}

到此這篇關于Keepalived實現Nginx負載均衡高可用的示例代碼的文章就介紹到這了,更多相關Keepalived Nginx負載均衡高可用內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:滁州 廊坊 湛江 回訪 巴彥淖爾 德州 紅河 廣安

巨人網絡通訊聲明:本文標題《Keepalived實現Nginx負載均衡高可用的示例代碼》,本文關鍵詞  Keepalived,實現,Nginx,負載,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Keepalived實現Nginx負載均衡高可用的示例代碼》相關的同類信息!
  • 本頁收集關于Keepalived實現Nginx負載均衡高可用的示例代碼的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲最色的网站| 精品国产一区二区在线观看| 精品久久久久久久久久久久久久久 | 色噜噜夜夜夜综合网| 成人国产精品免费观看| 日韩黄色免费电影| 国产精品一卡二| 精品99久久久久久| 亚洲人成网站影音先锋播放| 国产91丝袜在线播放| 一区精品在线播放| 色综合激情久久| 亚洲成人你懂的| 欧美一级午夜免费电影| 国产精品18久久久久久久网站| 欧美激情一区二区| 日韩欧美国产一二三区| 日本在线不卡一区| 国产精品乱码人人做人人爱| 在线观看不卡一区| 麻豆精品视频在线| 国产精品素人一区二区| 7777精品久久久大香线蕉| 国产一区二区三区在线观看免费 | 成人在线视频一区二区| 亚洲第一会所有码转帖| 久久九九99视频| 欧美日韩不卡在线| 成人美女视频在线观看18| 午夜久久久久久久久久一区二区| 久久精品人人爽人人爽| 欧美色网站导航| 成人av网站在线| 卡一卡二国产精品| 亚洲一卡二卡三卡四卡无卡久久 | 久久久国产综合精品女国产盗摄| 91蜜桃网址入口| 国产在线不卡一区| 日韩精品一二三区| 一区二区三区免费网站| 日本一区二区三区视频视频| 欧美巨大另类极品videosbest| www.视频一区| 国产成人综合视频| 激情综合色综合久久综合| 午夜天堂影视香蕉久久| 亚洲乱码中文字幕综合| 国产精品久久久久影院亚瑟| 日韩女优制服丝袜电影| 欧美日韩视频在线观看一区二区三区 | 蜜桃视频一区二区| 伊人色综合久久天天| 国产精品国产三级国产普通话蜜臀 | 日韩经典一区二区| 一区二区三区在线视频免费| 国产精品美女www爽爽爽| 久久人人爽爽爽人久久久| 精品美女在线观看| 欧美一区二区三区免费大片| 91精品国产免费久久综合| 欧美日韩久久久久久| 欧美色国产精品| 欧美日韩视频在线第一区| 欧美色图12p| 欧美日韩国产经典色站一区二区三区 | 亚洲欧美电影一区二区| 国产农村妇女毛片精品久久麻豆 | 久久久久久久国产精品影院| 日韩免费一区二区| 久久尤物电影视频在线观看| 精品国产乱码久久久久久图片 | 欧美日韩电影一区| 91.com在线观看| 5566中文字幕一区二区电影| 日韩手机在线导航| 26uuu精品一区二区 | 久久综合色一综合色88| 欧美v国产在线一区二区三区| 26uuu国产日韩综合| 国产女主播一区| 日韩美女精品在线| 午夜免费久久看| 国产真实乱偷精品视频免| 成人免费观看视频| 欧美日韩国产一二三| 亚洲精品在线观看网站| 国产精品无人区| 亚洲午夜影视影院在线观看| 美女网站在线免费欧美精品| 国产成人夜色高潮福利影视| 色激情天天射综合网| 亚洲免费在线观看视频| 日韩精品一区第一页| 国产在线麻豆精品观看| 91视频一区二区| 日韩午夜av电影| 国产精品色眯眯| 五月激情综合婷婷| 国产91对白在线观看九色| 欧美色老头old∨ideo| 国产日韩欧美精品在线| 亚洲18女电影在线观看| 国产99久久久精品| 日韩午夜电影av| 亚洲欧美激情在线| 国产乱人伦精品一区二区在线观看| 日本韩国一区二区| 国产精品水嫩水嫩| 国产乱一区二区| 正在播放亚洲一区| 亚洲成人av在线电影| 成人av在线网站| 精品三级在线看| 日韩国产高清在线| 在线视频国内自拍亚洲视频| 亚洲欧洲无码一区二区三区| 久久超碰97中文字幕| 欧美理论片在线| 亚洲激情在线激情| 99精品在线观看视频| 欧美激情一区二区三区不卡 | 欧美性受极品xxxx喷水| 日本一区二区三区四区| 精品一区二区三区免费| 日韩三级中文字幕| 麻豆极品一区二区三区| 在线播放视频一区| 亚洲在线观看免费视频| 欧美亚洲国产bt| 亚洲自拍另类综合| 欧美特级限制片免费在线观看| 亚洲精品久久嫩草网站秘色| 99riav一区二区三区| 国产精品看片你懂得| 国产成人精品亚洲午夜麻豆| 久久精品亚洲麻豆av一区二区| 久久疯狂做爰流白浆xx| 欧美大片在线观看一区| 久久国产生活片100| 久久综合av免费| 国产精品综合在线视频| 国产色产综合色产在线视频| 国产精品香蕉一区二区三区| 国产偷国产偷精品高清尤物| 国产精品一品二品| 国产精品久久久久四虎| 91久久线看在观草草青青| 亚洲www啪成人一区二区麻豆| 欧美精品一级二级| 久久69国产一区二区蜜臀| 久久新电视剧免费观看| 丁香五精品蜜臀久久久久99网站| 国产精品国产a级| 在线观看欧美黄色| 蜜乳av一区二区| www.欧美日韩| 亚洲成人av一区| 亚洲免费av高清| 中文字幕视频一区| 亚洲一区二区三区视频在线播放| 在线观看国产精品网站| 青青青爽久久午夜综合久久午夜| 精品国产sm最大网站| 99久久久国产精品免费蜜臀| 亚洲v日本v欧美v久久精品| 精品国产百合女同互慰| 色屁屁一区二区| 秋霞国产午夜精品免费视频| 中文字幕精品—区二区四季| 欧美日韩一区小说| 国产精品自拍网站| 亚洲高清久久久| 久久久久88色偷偷免费| 欧美亚洲动漫另类| 成人v精品蜜桃久久一区| 天堂午夜影视日韩欧美一区二区| 久久久久99精品一区| 欧美精品自拍偷拍| av在线播放成人| 美腿丝袜亚洲色图| 亚洲精品视频在线观看免费| 精品日产卡一卡二卡麻豆| 日本高清免费不卡视频| 麻豆精品一区二区| 一区二区三区欧美| 欧美日韩一区中文字幕| 不卡在线视频中文字幕| 奇米色777欧美一区二区| 亚洲图片欧美激情| 中文字幕国产一区| 欧美成人一区二区| 欧美精品18+| 99久久国产综合色|国产精品| 亚洲一区二区三区精品在线| 精品国产电影一区二区| 午夜精品福利一区二区蜜股av | 色综合久久88色综合天天免费| 一二三区精品福利视频| 日韩精品一区二区三区三区免费| 欧日韩精品视频|