日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

LVS+keepalived负载均衡 ??待续

發(fā)布時間:2025/3/17 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LVS+keepalived负载均衡 ??待续 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨角獸企業(yè)重金招聘Python工程師標準>>>

背景:
??????? 隨著你的網(wǎng)站業(yè)務(wù)量的增長你網(wǎng)站的服務(wù)器壓力越來越大?需要負載均衡方案!商業(yè)的硬件如F5又太貴,你們又是創(chuàng)業(yè)型互聯(lián)公司如何有效節(jié)約成本,節(jié)省不必要的浪費?同時實現(xiàn)商業(yè)硬件一樣的高性能高可用的功能?有什么好的負載均衡可伸張可擴展的方案嗎?答案是肯定的!有!我們利用 LVS+Keepalived基于完整開源軟件的架構(gòu)可以為你提供一個負載均衡及高可用的服務(wù)器。

LVS+Keepalived 介紹
LVS
??????? LVS是Linux Virtual Server的簡寫,意即Linux虛擬服務(wù)器,是一個虛擬的服務(wù)器集群系統(tǒng)。本項目在1998年5月由章文嵩博士成立,是中國國內(nèi)最早出現(xiàn)的自由軟件項目之一.目前有三種IP負載均衡技術(shù)(VS/NAT、VS/TUN和VS/DR);
八種調(diào)度算法(rr,wrr,lc,wlc,lblc,lblcr,dh,sh)。

Keepalvied
??????? Keepalived在這里主要用作RealServer的健康狀態(tài)檢查以及LoadBalance主機和BackUP主機之間failover的實現(xiàn)
二. 網(wǎng)站負載均衡構(gòu)架圖


IP信息列表:
名稱??????????????????? IP
LVS-DR-Master??????? 61.164.122.6???????
LVS-DR-BACKUP??????? 61.164.122.7???????
LVS-DR-VIP?????????? 61.164.122.8???????
WEB1-Realserver????? 61.164.122.9???????
WEB2-Realserver????? 61.164.122.10???????
GateWay????????????? 61.164.122.1?
三. 安裝LVS和Keepalvied軟件包
1. 下載相關(guān)軟件包

#mkdir?/usr/local/src/lvs #cd?/usr/local/src/lvs #wget?#wget?http://www.keepalived.org/software/keepalived-1.1.15.tar.gz

2.安裝LVS和Keepalived

????????#lsmod?|grep?ip_vs#uname?-r2.6.18-53.el5PAE#ln?-s?/usr/src/kernels/2.6.18-53.el5PAE-i686/??/usr/src/linux#tar?zxvf?ipvsadm-1.24.tar.gz#cd?ipvsadm-1.24#make?&&?make?install#find?/?-name?ipvsadm??#?查看ipvsadm的位置#tar?zxvf?keepalived-1.1.15.tar.gz#cd?keepalived-1.1.15#./configure??&&?make?&&?make?install#find?/?-name?keepalived??#?查看keepalived位置????????????????#cp?/usr/local/etc/rc.d/init.d/keepalived?/etc/rc.d/init.d/#cp?/usr/local/etc/sysconfig/keepalived?/etc/sysconfig/#mkdir?/etc/keepalived#cp?/usr/local/etc/keepalived/keepalived.conf?/etc/keepalived/#cp?/usr/local/sbin/keepalived?/usr/sbin/#service?keepalived?start|stop?????#做成系統(tǒng)啟動服務(wù)方便管理.

四. 配置LVS實現(xiàn)負載均衡
? 1. LVS-DR,配置LVS腳本實現(xiàn)負載均衡

??????#vi?/usr/local/sbin/lvs-dr.sh#!/bin/bash#?description:?start?LVS?of?DirectorServer#Written?by?:NetSeek?http://www.linuxtone.orgGW=61.164.122.1#?website?director?vip.SNS_VIP=61.164.122.8SNS_RIP1=61.164.122.9SNS_RIP2=61.164.122.10./etc/rc.d/init.d/functionslogger?$0?called?with?$1case?"$1"?instart)#?set?squid?vip/sbin/ipvsadm?--set?30?5?60/sbin/ifconfig?eth0:0?$SNS_VIP?broadcast?$SNS_VIP?netmask?255.255.255.255broadcast?$SNS_VIP?up/sbin/route?add?-host?$SNS_VIP?dev?eth0:0/sbin/ipvsadm?-A?-t?$SNS_VIP:80?-s?wrr?-p?3/sbin/ipvsadm?-a?-t?$SNS_VIP:80?-r?$SNS_RIP1:80?-g?-w?1/sbin/ipvsadm?-a?-t?$SNS_VIP:80?-r?$SNS_RIP2:80?-g?-w?1touch?/var/lock/subsys/ipvsadm?>/dev/null?2>&1;;stop)/sbin/ipvsadm?-C/sbin/ipvsadm?-Zifconfig?eth0:0?downifconfig?eth0:1?downroute?del?$SNS_VIProute?del?$SS_VIPrm?-rf?/var/lock/subsys/ipvsadm?>/dev/null?2>&1echo?"ipvsadm?stoped";;status)if?[?!?-e?/var/lock/subsys/ipvsadm?];thenecho?"ipvsadm?stoped"exit?1elseecho?"ipvsadm?OK"fi;;*)echo?"Usage:?$0?{start|stop|status}"exit?1esacexit?0

2. 配置Realserver腳本.

#vi?/usr/local/sbin/realserver.sh#!/bin/bash#?description:?Config?realserver?lo?and?apply?noarp?#Written?by?:NetSeek?SNS_VIP=61.164.122.8.?/etc/rc.d/init.d/functionscase?"$1"?instart)ifconfig?lo:0?$SNS_VIP?netmask?255.255.255.255?broadcast?$SNS_VIP/sbin/route?add?-host?$SNS_VIP?dev?lo:0echo?"1"?>/proc/sys/net/ipv4/conf/lo/arp_ignoreecho?"2"?>/proc/sys/net/ipv4/conf/lo/arp_announceecho?"1"?>/proc/sys/net/ipv4/conf/all/arp_ignoreecho?"2"?>/proc/sys/net/ipv4/conf/all/arp_announcesysctl?-p?>/dev/null?2>&1echo?"RealServer?Start?OK"????????;;stop)ifconfig?lo:0?downroute?del?$SNS_VIP?>/dev/null?2>&1echo?"0"?>/proc/sys/net/ipv4/conf/lo/arp_ignoreecho?"0"?>/proc/sys/net/ipv4/conf/lo/arp_announceecho?"0"?>/proc/sys/net/ipv4/conf/all/arp_ignoreecho?"0"?>/proc/sys/net/ipv4/conf/all/arp_announceecho?"RealServer?Stoped";;*)echo?"Usage:?$0?{start|stop}"exit?1esac?????????exit?0

或者采用secondary ip address方式配置

??????????#?vi?/etc/sysctl.confnet.ipv4.conf.lo.arp_ignore?=?1net.ipv4.conf.lo.arp_announce?=?2net.ipv4.conf.all.arp_ignore?=?1net.ipv4.conf.all.arp_announce?=?2#sysctl?–p#ip?addr?add?61.164.122.8/32?dev?lo#ip?add?list?查看是否綁定

3. 啟動lvs-dr腳本和realserver啟本,在DR上可以查看LVS當前狀態(tài):

#watch?ipvsadm?–ln

五.利用Keepalvied實現(xiàn)負載均衡和和高可用性
? 1.配置在主負載均衡服務(wù)器上配置keepalived.conf

#vi?/etc/keepalived/keepalived.conf

!?Configuration?File?for?keepalived global_defs?{notification_email?{cnseek@gmail.com}notification_email_from?sns-lvs@gmail.comsmtp_server?127.0.0.1#?smtp_connect_timeout?30router_id?LVS_DEVEL } #?20081013?written?by?:netseek #?VIP1 vrrp_instance?VI_1?{state?MASTER?????????????#備份服務(wù)器上將MASTER改為BACKUP???interface?eth0virtual_router_id?51priority?100????#?備份服務(wù)上將100改為99advert_int?1authentication?{auth_type?PASSauth_pass?1111}virtual_ipaddress?{61.164.122.8???#(如果有多個VIP,繼續(xù)換行填寫.)} } virtual_server?61.164.122.8?80?{delay_loop?6??????????????????#(每隔10秒查詢realserver狀態(tài))lb_algo?wrr??????????????????#(lvs?算法)lb_kind?DR??????????????????#(Direct?Route)persistence_timeout?60????????#(同一IP的連接60秒內(nèi)被分配到同一臺realserver)protocol?TCP????????????????#(用TCP協(xié)議檢查realserver狀態(tài))real_server?61.164.122.9?80?{weight?3???????????????#(權(quán)重)TCP_CHECK?{connect_timeout?10???????#(10秒無響應(yīng)超時)nb_get_retry?3delay_before_retry?3connect_port?80}}real_server?61.164.122.10?80?{weight?3TCP_CHECK?{connect_timeout?10nb_get_retry?3delay_before_retry?3connect_port?80}} }

2. BACKUP服務(wù)器同上配置,先安裝lvs再按裝keepalived,仍后配置/etc/keepalived/keepalived.conf,只需將紅色標示的部分改一下即可.
3.

vi?/etc/rc.local #/usr/local/sbin/lvs-dr.sh??將lvs-dr.sh這個腳本注釋掉。步 #/usr/local/sbin/lvs-dr.sh?stop?停止lvs-dr腳本 #/etc/init.d/keepalived?start??啟動keepalived?服務(wù),keepalived就能利用

keepalived.conf 配置文件,實現(xiàn)負載均衡和高可用.

4. 查看lvs服務(wù)是否正常

#watch?ipvsadm?–ln

IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddressort Scheduler Flags
? -> RemoteAddressort?????????? Forward Weight ActiveConn InActConn
TCP? 61.164.122.8:80 wrr persistent 60
? -> 61.164.122.10:80??????????? Route?? 3????? 0????????? 0
? -> 61.164.122.9:80???????????? Route?? 3????? 0????????? 0

#tail?–f?/var/log/message

監(jiān)聽日志,查看狀態(tài),測試LVS負載均衡及高可用性是否有效。

5.停Master服務(wù)器的keepalived服務(wù),查看BAKCUP服務(wù)器是否能正常接管服務(wù)。
四.相關(guān)參考
? 1.LVS 基礎(chǔ)知識匯總
LVS的算法介紹?????????????? http://www.linuxtone.org/viewthread.php?tid=69
學習LVS的三種轉(zhuǎn)發(fā)模式?????? http://www.linuxtone.org/viewthread.php?tid=77
LVS中的IP負載均衡技術(shù)?????? http://www.linuxtone.org/viewthread.php?tid=68
更多的請到http://www.linuxtone.org 負載均衡版查看

Keepalived 相關(guān)參考資料。
?? http://www.keepalived.org/documentation.html





轉(zhuǎn)載于:https://my.oschina.net/MrMichael/blog/294957

總結(jié)

以上是生活随笔為你收集整理的LVS+keepalived负载均衡 ??待续的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。