LVS nat dr

======================參考地址 ======================
https://www.cnblogs.com/MacoLee/p/5856858.html
===========================lvs nat=================

3.png

4.png

======================LVS DR=======================================

1.png

TIM截圖20180614085654.png
TIM截圖20180614085513.png

=========dr 模式 二層負(fù)載均衡(改了mac)=============

注意:1.添加網(wǎng)卡(負(fù)載均衡端52機(jī))
           2.誰的路由條目在上就是dip 另一個(gè)就是vip(route -n)
3臺機(jī)器
192.168.44.52 負(fù)載均衡器 虛擬VIP 192.168.44.66 DIP 52
192.168.44.50  web1   lo為192.168.44.66/32
192.168.44.51  web2   lo為192.168.44.66/32


1.====在兩個(gè)web安裝web服務(wù)
yum -y install nginx -y
====修改主機(jī)內(nèi)容
vim /usr/share/nginx/html/index.html
web1
vim /usr/share/nginx/html/index.html
web2
啟動服務(wù)
systemctl start nginx

2.====給兩臺web服務(wù)器的lo網(wǎng)卡設(shè)置子網(wǎng)掩碼為32為的vip
ifconfig lo:0 192.168.44.66/32 或者永久
[root@web1 network-scripts]# cat ifcfg-lo:0
DEVICE=lo:0  
IPADDR=192.168.44.66
NETMASK=255.255.255.255 
BROADCAST=192.168.44.66
ONBOOT=yes 
NAME=loopback  

3.====子網(wǎng)掩碼最好 的32位發(fā)送過去 設(shè)置內(nèi)核參數(shù)
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

4.讓兩臺web服務(wù)器不收到廣播 忽悠arp響應(yīng)
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
5.注意:誰的路由條目在上就是dip 另一個(gè)就是vip(route -n)

6.設(shè)置lvs路由條目 ipvsadm -Ln(查條目)位置192.168.44.52
yum install -y ipvsadm  (lvs 用戶態(tài)管理工具)
[root@52 network-scripts]# cat ifcfg-ens37
TYPE="Ethernet"
BOOTPROTO="static"
NAME="ens37"
DEVICE="ens37"
ONBOOT="yes"
IPADDR=192.168.44.66
GATEWAY=192.168.44.2
DNS1=8.8.8.8
NETMASK=255.255.255.255
[root@]ipvsadm -A -t 192.168.44.vip:80 -s rr
[root@]ipvsadm -a -t 192.168.44.vip:80 -r 192.168.44.50:80 -g
[root@]ipvsadm -a -t 192.168.44.vip:80 -r 192.168.44.51:80 -g
[root@]ip addr add dev ens33 192.168.44.66/32
-A 添加virtual server
-t 指定使用tcp協(xié)議
-s 指定策略為rr
-r 真實(shí)的服務(wù)器[Real-Server:port]
-g 直接路由
7.查看方式兩種
1.命令行:elinks --dump http://192.168.44.66/index.html
2.瀏覽器地址 192.168.44.66/index.html
抓包軟件
tcpdump -i ens33 icmp -v -nn
tcpdump -i ens33 tcp and port 80 -v -nn
8.讓配置永久生效
ipvsadm-save > /etc/sysconfig/ipvsadm-config
ipvsadm -S 
MIP是靜態(tài)一對一的雙向地址映射忆谓。 
VIP是地址+端口的映射,將不同地址的不同端口秋泳,映射到規(guī)定地址的規(guī)定端口潦闲。
DIP分2種一種是PAT,另一種就是用地址池中的地址映射迫皱。和CISCO的NAT相同歉闰。

tcpdump -i ens33 icmp -v -nn

===============要解決三個(gè)問題:=========================

要解決三個(gè)問題:
1 .兩個(gè)http服務(wù)器除了有自己的rip以外還要擁有vip
    因?yàn)椋簲?shù)據(jù)包需從realServer返回 ,realServer返回的數(shù)據(jù)需要源IP為VIP 
    解決:添加 lo接口(本地環(huán)路接口) ,lo:1   vip/32. 

2 .當(dāng)GW向下廣播vip的時(shí)候 要分發(fā)器的vip響應(yīng) 而兩個(gè)http的vip不要響應(yīng)
    因?yàn)椋簉ealServer的vip有了卓起,接著就是同一個(gè)網(wǎng)段中擁有兩個(gè)vip, 客戶端在網(wǎng)關(guān)發(fā)送arp廣播需找vip時(shí)需要讓realServer不接受響應(yīng).  
    解決:
        echo 1 >/proc/sys/net/ipv4/conf/eth0/arp_ignore 
        arp_ignore 設(shè)置為1和敬,意味著當(dāng)別人的arp請求過來的時(shí)候,如果接收的設(shè)備沒有這個(gè)ip戏阅,就不做出響應(yīng)(這個(gè)ip在lo上昼弟,lo不是接收設(shè)備的進(jìn)口)
        echo 2 >/proc/sys/net/ipv4/conf/eth0/arp_announce   
        使用最好的ip來回應(yīng),什么是最好的ip饲握?同一個(gè)網(wǎng)段內(nèi)子網(wǎng)掩碼最長的
        
3 .當(dāng)分發(fā)器向下找兩個(gè)http服務(wù)器時(shí),必須從dip發(fā)包
    因?yàn)椋篋irector 發(fā)送數(shù)據(jù)包給realServer , 要走dip的網(wǎng)卡私杜,否則ip流向就是vip-->vip 發(fā)送不成功. 
    解決:調(diào)整vip和dip網(wǎng)卡在路由表中的順序,dip在上救欧,vip在下即可解決衰粹。 
    
    假如:192.168.1.1 是vip ,網(wǎng)卡eth0
             192.168.1.2 是dip,網(wǎng)卡eth1
            在添加這兩個(gè)ip的時(shí)候,路由表會出現(xiàn)如下條目:
            192.168.1.0  0.0.0.0  255.255.255.0  u   0    0   0   eth0
            192.168.1.0  0.0.0.0  255.255.255.0  u   0    0   0   eth1
            這樣的路由順序會由eth0也就是vip發(fā)包笆怠,是不行的
            解決:直接刪除eth0所在的網(wǎng)絡(luò)
            ip route del 192.168.1.0/24 dev eth0
            
==========================================
    注:LO接口本身的作用:
    假如包是由一個(gè)本地進(jìn)程為另一個(gè)本地進(jìn)程產(chǎn)生的,  它們將通過外出鏈的'lo'接口,然后返回進(jìn)入鏈的'lo'接口. 

===========清零連接數(shù)==============

[root@192.168.44.46 ~] elinks --dump http:// 192.168.44.66/index.html
[root@nginx1 ~]# ipvsadm -L -n --stats
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port               Conns   InPkts  OutPkts  InBytes OutBytes
  -> RemoteAddress:Port
TCP  192.168.44.66:80                   34      948        0   260065        0
  -> 192.168.44.50:80                   17      568        0   166188        0
  -> 192.168.44.51:80                   17      380        0    93877        0
[root@nginx1 ~]# ipvsadm -Z
[root@nginx1 ~]# ipvsadm -L -n --stats
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port               Conns   InPkts  OutPkts  InBytes OutBytes
  -> RemoteAddress:Port
TCP  192.168.44.66:80                    0        0        0        0        0
  -> 192.168.44.50:80                    0        0        0        0        0
  -> 192.168.44.51:80                    0        0        0        0        0

=========================keepalived+lvs==============================


TIM截圖20180615100756.png

keepalived是什么
keepalived是集群管理中保證集群高可用的一個(gè)服務(wù)軟件铝耻,其功能類似于heartbeat,
用來防止單點(diǎn)故障蹬刷。

keepalived工作原理
keepalived是以VRRP協(xié)議為實(shí)現(xiàn)基礎(chǔ)的瓢捉,VRRP全稱Virtual Router Redundancy Protocol,
即虛擬路由冗余協(xié)議办成。

虛擬路由冗余協(xié)議泡态,可以認(rèn)為是實(shí)現(xiàn)路由器高可用的協(xié)議,即將N臺提供相同功能的路由

器組成一個(gè)路由器組迂卢,這個(gè)組里面有一個(gè)master和多個(gè)backup某弦,master上面有一個(gè)對外提供
服務(wù)的vip(該路由器所在局域網(wǎng)內(nèi)其他機(jī)器的默認(rèn)路由為該vip)桐汤,master會發(fā)組播,當(dāng)
backup收不到vrrp包時(shí)就認(rèn)為master宕掉了靶壮,這時(shí)就需要根據(jù)VRRP的優(yōu)先級來選舉一個(gè)
backup當(dāng)master怔毛。這樣的話就可以保證路由器的高可用了。

keepalived主要有三個(gè)模塊腾降,分別是core拣度、check和vrrp。core模塊為keepalived的核心螃壤,
負(fù)責(zé)主進(jìn)程的啟動抗果、維護(hù)以及全局配置文件的加載和解析。check負(fù)責(zé)健康檢查映穗,包括常
見的各種檢查方式窖张。vrrp模塊是來實(shí)現(xiàn)VRRP協(xié)議的。

VRRP協(xié)議(了解一下)
===================在兩臺負(fù)載均衡器上52|53==============================

環(huán)境:先在兩臺負(fù)載均衡器上(52|53上)各添加一塊網(wǎng)卡ens37 不用給它們配置靜態(tài)IP
1.在兩個(gè)web安裝web服務(wù)
yum -y install nginx -y
====修改主機(jī)內(nèi)容
vim /usr/share/nginx/html/index.html
web1
vim /usr/share/nginx/html/index.html
web2
啟動服務(wù)
systemctl start nginx

2.====給兩臺web服務(wù)器的lo網(wǎng)卡設(shè)置子網(wǎng)掩碼為32為的vip
ifconfig lo:0 192.168.44.66/32 或者永久
[root@web1 network-scripts]# cat ifcfg-lo:0
DEVICE=lo:0  
IPADDR=192.168.44.66
NETMASK=255.255.255.255 
BROADCAST=192.168.44.66
ONBOOT=yes 
NAME=loopback  
3.====子網(wǎng)掩碼最好 的32位發(fā)送過去 設(shè)置內(nèi)核參數(shù)
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
4.讓兩臺web服務(wù)器不收到廣播 忽悠arp響應(yīng)
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
5.注意:誰的路由條目在上就是dip 另一個(gè)就是vip(route -n)
5.2 yum -y install ipvsadm(兩臺負(fù)載均衡上裝ipvsadm 52|53)
      ipvsadm -C 清除內(nèi)核虛擬服務(wù)器表中的所有記錄蚁滋。 
      ipvsadm -L 顯示內(nèi)核虛擬服務(wù)器表 
重點(diǎn):vip是飄的 服務(wù)器里的記錄交給下面的keepalived自動配置宿接,也不用配置ens37那個(gè)文件
6.[root@]# yum install -y keepalived  (兩臺負(fù)載均衡器上裝kepalived)
[root@]# cd /etc/keepalived/
[root@]# vim keepalived.conf
! Configuration File for keepalived
global_defs {                       
   notification_email {
       root@localhost
       }
   notification_email_from keepalived@localhost
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id Director1
   }
   
vrrp_instance VI_1 {                
   state MASTER           另一臺填state BACKUP             
   interface ens33     //隨便本機(jī)網(wǎng)卡        
   virtual_router_id 51            
   priority 150        //另一臺填 priority 100         
   advert_int 1          //檢查間隔,單位秒    
   authentication {
       auth_type PASS
       auth_pass 1111
       }
   virtual_ipaddress {
       192.168.44.66/32 dev ens37
       }
   }
   
virtual_server 192.168.44.66 80 {       //LVS 配置
   delay_loop 3                  //服務(wù)論詢的時(shí)間間隔
   lb_algo rr       //LVS 調(diào)度算法
   lb_kind DR         // LVS 集群模式
   protocol TCP                            
   real_server 192.168.44.50 80 {
       weight 1
       TCP_CHECK {
           connect_timeout 3
           }
       }
   real_server 192.168.44.51 80 {
       weight 1
       TCP_CHECK {
           connect_timeout 3
           }
       }
}
7.[root@ 192.168.44.52]# scp keepalived.conf 192.168.44.53:/etc/keepalived/
拷貝后,修改配置文件
   state BACKUP
   priority 100
   
8.兩個(gè)Director上啟動服務(wù):
rhel6:
   # service keepalived start
rhel7:
   # systemctl start keepalived
9.測試:
1)觀察lvs路由條目 ipvsadm -L
2)觀察vip地址在哪臺機(jī)器上 
3)客戶端瀏覽器訪問vip
4)關(guān)閉master上的keepalived服務(wù)辕录,再次訪問vip
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末睦霎,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子走诞,更是在濱河造成了極大的恐慌副女,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,692評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蚣旱,死亡現(xiàn)場離奇詭異碑幅,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)塞绿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,482評論 3 392
  • 文/潘曉璐 我一進(jìn)店門沟涨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人异吻,你說我怎么就攤上這事裹赴。” “怎么了诀浪?”我有些...
    開封第一講書人閱讀 162,995評論 0 353
  • 文/不壞的土叔 我叫張陵据悔,是天一觀的道長授滓。 經(jīng)常有香客問我,道長枚驻,這世上最難降的妖魔是什么躯肌? 我笑而不...
    開封第一講書人閱讀 58,223評論 1 292
  • 正文 為了忘掉前任炮姨,我火速辦了婚禮峰鄙,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘嫉你。我一直安慰自己,他們只是感情好躏惋,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,245評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著嚷辅,像睡著了一般簿姨。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上簸搞,一...
    開封第一講書人閱讀 51,208評論 1 299
  • 那天扁位,我揣著相機(jī)與錄音,去河邊找鬼趁俊。 笑死域仇,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的寺擂。 我是一名探鬼主播暇务,決...
    沈念sama閱讀 40,091評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼怔软!你這毒婦竟也來了垦细?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,929評論 0 274
  • 序言:老撾萬榮一對情侶失蹤挡逼,失蹤者是張志新(化名)和其女友劉穎括改,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體家坎,經(jīng)...
    沈念sama閱讀 45,346評論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡嘱能,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,570評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了虱疏。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惹骂。...
    茶點(diǎn)故事閱讀 39,739評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖订框,靈堂內(nèi)的尸體忽然破棺而出析苫,到底是詐尸還是另有隱情,我是刑警寧澤穿扳,帶...
    沈念sama閱讀 35,437評論 5 344
  • 正文 年R本政府宣布衩侥,位于F島的核電站,受9級特大地震影響矛物,放射性物質(zhì)發(fā)生泄漏茫死。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,037評論 3 326
  • 文/蒙蒙 一履羞、第九天 我趴在偏房一處隱蔽的房頂上張望峦萎。 院中可真熱鬧屡久,春花似錦、人聲如沸爱榔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,677評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽详幽。三九已至筛欢,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間唇聘,已是汗流浹背版姑。 一陣腳步聲響...
    開封第一講書人閱讀 32,833評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留迟郎,地道東北人剥险。 一個(gè)月前我還...
    沈念sama閱讀 47,760評論 2 369
  • 正文 我出身青樓,卻偏偏與公主長得像宪肖,于是被迫代替她去往敵國和親表制。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,647評論 2 354

推薦閱讀更多精彩內(nèi)容