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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

lvs + keepalived HOW TO

發(fā)布時(shí)間:2024/4/17 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 lvs + keepalived HOW TO 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

LVS?NAT?+?Keepalived?HOWTO

?

這篇文章主要講解了,基于LVS/NAT,安裝,運(yùn)行與檢測(cè)keepalived

目錄

????1、什么是keepalived?

????2、規(guī)劃你的網(wǎng)絡(luò)????

????3、配置內(nèi)核參數(shù)

????4、編譯ipvsadm (可選)

????5、編譯keepalived(可選)

????6、一個(gè)簡(jiǎn)單的keepalived實(shí)例。一個(gè)負(fù)載均衡器,一個(gè)ssh 服務(wù)器

????7、故障轉(zhuǎn)移

????8、一個(gè)稍微復(fù)雜的keepalived實(shí)例,負(fù)載均衡器,兩個(gè)ssh server,兩個(gè)httpd server

????9、開機(jī)啟動(dòng)腳本(空)

????10、注意事項(xiàng)

????11、總結(jié)

1、什么是keepalived

????keepalived的作者說(shuō):

????keepalived的主要目第是為了給linux?virtual?server項(xiàng)目提供健壯的keepalive功能。這個(gè)項(xiàng)目使用C編寫,可以在TCP/IP第三,四,五層實(shí)現(xiàn)檢測(cè)功能。這個(gè)檢測(cè)框架給予了keepalived進(jìn)程檢查LVS?服務(wù)池狀態(tài)的能力。keepalived實(shí)現(xiàn)了vrrpv2?處理director的故障轉(zhuǎn)移。簡(jiǎn)單來(lái)說(shuō),keepalived是一個(gè)用戶空間進(jìn)程,主要目的就是為了LVS的健康狀況檢查和LVS?director的故障轉(zhuǎn)移

????keepalived是一個(gè)項(xiàng)目,包括通過(guò)LVS實(shí)現(xiàn)負(fù)載均衡,通過(guò)VRRP實(shí)現(xiàn)故障轉(zhuǎn)移,監(jiān)視real?server的健康狀況。重要的是,它是一個(gè)包實(shí)現(xiàn)了?lvs+mon+fake+heartbeat的所有功能?。使用keepalived,管理員可以快速的構(gòu)建一個(gè)冗余的負(fù)載均衡解決方案而不需要解決大量安裝包和腳本的問(wèn)題。?

????本實(shí)例使用的軟件:

????????CentOS?6.6keepalived-1.2.13-5.el6_6.x86_64??????ipvsadm-1.26-4.el6.x86_64openssh-5.3p1-104.el6.x86_64????????httpd-2.2.15-39.el6.centos.x86_64

2、規(guī)劃你的網(wǎng)絡(luò)

畫出你的網(wǎng)絡(luò)的邏輯結(jié)構(gòu),規(guī)劃好你的網(wǎng)絡(luò)有助于減少以后遇到的困難。列出你打算使用的IP,任何額外的路由IP,負(fù)載均衡機(jī)器打算使用的IP,或者其它相關(guān)的信息。

3、配置內(nèi)核參數(shù):

echo?"1"?>?/proc/sys/net/ipv4/ip_forwarding


4.?編譯ipvsadm(可選的)

5.?編譯keepalived

[root@node4?src]#?tar?-xf?keepalived-1.2.19.tar.gz;?cd?keepalived-1.2.19;?./configure;?make;?make?install

?keepalived編譯起來(lái)很簡(jiǎn)單,中間報(bào)錯(cuò),安裝相應(yīng)的軟件包就可以了,從www.keepalived.org,獲取最新版本的包,獲取更多信息,請(qǐng)閱讀下載keepalived附帶的INSTALL文件

6、配置keepalived:一個(gè)簡(jiǎn)單的網(wǎng)絡(luò),1個(gè)負(fù)載均衡/虛擬路由?,一個(gè)real?server22號(hào)端口

? Client?(on?the?internet?somewhere)?-->?load?balancer?-->?realserver?

負(fù)載均衡器的IP: Eth0:?192.168.198.160 VIP?:192.168.198.161 Eth1:10.0.0.4 VIP?eth1:10.0.0.1 Real?server: IP:10.0.0.2?確保網(wǎng)關(guān)指向10.0.0.1

主要配置文件在/etc/keepalived/keepalived.conf ,如果keepalived什么錯(cuò)誤都沒(méi)報(bào)告,意味著你很難發(fā)現(xiàn)配置的錯(cuò)誤,啟動(dòng)keepalived使用-d選項(xiàng),將會(huì)加載配置到syslog里面去。

配置

!?以!開頭的都是注釋global_defs?{?!?這是警告郵件將會(huì)發(fā)送誰(shuí)那里去?notification_email?{????????????????????admins@example.com?fakepager@example.com?!?這里可以添加一些其它的,你想添加的郵件。}?notification_email_from?admins@example.com?!使用恩地機(jī)器發(fā)送郵件smtp_server?127.0.0.1?smtp_connect_timeout?30?!?每一個(gè)負(fù)載均衡器應(yīng)該有不同的ID,這將會(huì)在SMTP警告中使用,因此你應(yīng)該讓每一個(gè)路由很容易的辨別。lvs_id?LVS_EXAMPLE_01? }?vrrp_sync_group?VG1?{?group?{?VI_1?VI_GATEWAY?}? }?!每一個(gè)接口需要至少一個(gè)vrrp_instance?,每一個(gè)vrrp_instance?是一個(gè)邏輯上劃分的VIPs組,你也可以有多個(gè)vrrp_instance?,如果你喜歡的話。vrrp_instance?VI_1?{?state?MASTER?interface?eth0?lvs_sync_daemon_inteface?eth0?virtual_router_id?51?!主節(jié)點(diǎn)和備節(jié)點(diǎn)是根據(jù)優(yōu)先級(jí)選出來(lái)的,如果你的state為master但是,優(yōu)先級(jí)低,還是會(huì)變?yōu)閭浞莨?jié)點(diǎn)的。priority?150?!?投票的時(shí)間間隔advert_int?1?!?從主節(jié)點(diǎn)切換為備節(jié)點(diǎn)是時(shí)發(fā)送警告。smtp_alert?authentication?{?auth_type?PASS?auth_pass?example?}?!?配置在keppalived機(jī)器上面的IP地址,后面我們會(huì)指定那些real?server會(huì)綁定在這個(gè)IP地址上面virtual_ipaddress?{?192.168.1.11?!?and?more?if?you?want?them???!?你也可以指定更多的地址。}? }?!?現(xiàn)在配置一個(gè)實(shí)例real?server?默認(rèn)使用網(wǎng)關(guān)方式。vrrp_instance?VI_GATEWAY?{?state?MASTER?interface?eth1?lvs_sync_daemon_inteface?eth1?virtual_router_id?52?priority?150?advert_int?1?smtp_alert?authentication?{?auth_type?PASS?auth_pass?example?}?virtual_ipaddress?{?10.20.40.1?}? }?!?現(xiàn)在配置更多的信息,我們僅僅配置一個(gè)virtual?server監(jiān)聽在22號(hào)端口。virtual_server?192.168.1.11?22?{?delay_loop?6?lb_algo?rr?lb_kind?NAT?nat_mask?255.255.255.0?protocol?TCP?real_server?10.20.40.10?22?{?weight?1?TCP_CHECK?{?connect_timeout?3?connect_port?22?}?}? }

然后:

①、Tail?-f?/var/log/messages??看看輸出的日志信息

????②、Ipvsadm?-L?-n?查看ipvs的信息

????


??③、最后看看地址信息

?

最后看看效果。


?啟動(dòng)keepalived?使用-d選項(xiàng)?是一個(gè)很好的方式檢測(cè)你的配置文件是否有效。

?

7、故障轉(zhuǎn)移??

??你需要做的只是在另外一臺(tái)節(jié)點(diǎn)配置keepalived復(fù)制keepalived的配置文件,改變優(yōu)先級(jí),狀態(tài)到bakcup,運(yùn)行keepalived。你會(huì)看到備份服務(wù)的日志信息,服務(wù)器接受了它的備份狀態(tài),如果你去掉了主服務(wù),備份服務(wù)器將會(huì)接管Master狀態(tài)

??主服務(wù)和備份服務(wù)器,只是??lvs_id?指令,?priority?,state?指令不一樣其余的都一樣?,

??另外你應(yīng)該移除主服務(wù)器看看備份服務(wù)器的日志信息,如果主服務(wù)器沒(méi)掛,備份服務(wù)器將會(huì)看不到VIP的信息。

8、配置keepalived,一個(gè)更加復(fù)雜的網(wǎng)絡(luò),?2個(gè)VIPs(1?http/https?,1?ssh)?和同時(shí)每個(gè)VIP都有兩個(gè)real?server

Load?balancer?IPs:?????負(fù)載均衡器外部接口(eth0):?192.168.198.160外部http/https?realservers?VIP:?192.168.1.162外部?ssh?realservers?VIP:?192.168.1.161負(fù)載均衡器內(nèi)部接口(eth1):?10.0.0.4配置在eth1上的real?server默認(rèn)網(wǎng)關(guān):?10.0.0.1Realserver?1?(http,?[https]):?IP:?10.0.0.2Realserver?2?(http,?[https]):?IP:?10.0.0.3Realserver?3?(ssh):?IP:?10.0.0.2Realserver?4?(ssh):?IP:?10.0.0.3

確保real server的網(wǎng)關(guān)指向10.0.0.1

很少的情況會(huì)使用這種配置,有其你想去學(xué)習(xí)使用genhash?命令,生成HTTP?get或者SSL_GETMD5碼。同樣你想配置https的持久連接--使你的客戶一直連接到real?server,就像你去購(gòu)物的事物,這種狀態(tài)要一直保持著,不然后果很嚴(yán)重。


最后的字符串你需要追蹤的,后面的服務(wù)檢查會(huì)使用到。

配置文件: !?Configuration?File?for?keepalivedglobal_defs?{notification_email?{acassen@firewall.locfailover@firewall.locsysadmin@firewall.loc}notification_email_from?Alexandre.Cassen@firewall.locsmtp_server?192.168.200.1smtp_connect_timeout?30router_id?LVS_DEVEL }vrrp_instance?VI_1?{state?MASTERinterface?eth0virtual_router_id?51priority?100advert_int?1authentication?{auth_type?PASSauth_pass?1111}virtual_ipaddress?{192.168.200.16192.168.200.17192.168.200.18} }virtual_server?192.168.200.100?443?{delay_loop?6lb_algo?rrlb_kind?NATnat_mask?255.255.255.0persistence_timeout?50protocol?TCPreal_server?192.168.201.100?443?{weight?1SSL_GET?{url?{path?/digest?ff20ad2481f97b1754ef3e12ecd3a9cc}url?{path?/mrtg/digest?9b3a0c85a887a256d6939da88aabd8cd}connect_timeout?3nb_get_retry?3delay_before_retry?3}} }virtual_server?10.10.10.2?1358?{delay_loop?6lb_algo?rr?lb_kind?NATpersistence_timeout?50protocol?TCPsorry_server?192.168.200.200?1358real_server?192.168.200.2?1358?{weight?1HTTP_GET?{url?{?path?/testurl/test.jspdigest?640205b7b0fc66c1ea91c463fac6334d}url?{?path?/testurl2/test.jspdigest?640205b7b0fc66c1ea91c463fac6334d}url?{?path?/testurl3/test.jspdigest?640205b7b0fc66c1ea91c463fac6334d}connect_timeout?3nb_get_retry?3delay_before_retry?3}}real_server?192.168.200.3?1358?{weight?1HTTP_GET?{url?{?path?/testurl/test.jspdigest?640205b7b0fc66c1ea91c463fac6334c}url?{?path?/testurl2/test.jspdigest?640205b7b0fc66c1ea91c463fac6334c}connect_timeout?3nb_get_retry?3delay_before_retry?3}} }virtual_server?10.10.10.3?1358?{delay_loop?3lb_algo?rr?lb_kind?NATnat_mask?255.255.255.0persistence_timeout?50protocol?TCPreal_server?192.168.200.4?1358?{weight?1HTTP_GET?{url?{?path?/testurl/test.jspdigest?640205b7b0fc66c1ea91c463fac6334d}url?{?path?/testurl2/test.jspdigest?640205b7b0fc66c1ea91c463fac6334d}url?{?path?/testurl3/test.jspdigest?640205b7b0fc66c1ea91c463fac6334d}connect_timeout?3nb_get_retry?3delay_before_retry?3}}real_server?192.168.200.5?1358?{weight?1HTTP_GET?{url?{?path?/testurl/test.jspdigest?640205b7b0fc66c1ea91c463fac6334d}url?{?path?/testurl2/test.jspdigest?640205b7b0fc66c1ea91c463fac6334d}url?{?path?/testurl3/test.jspdigest?640205b7b0fc66c1ea91c463fac6334d}connect_timeout?3nb_get_retry?3delay_before_retry?3}} }

最后檢查

①、Tail?-f?/var/log/messages

????②、查看ipvs

????③、查看ip

????④、看看效果

Ssh測(cè)試,ssh應(yīng)該使用源地址綁定好一些。

? 。。。

要想實(shí)現(xiàn)故障轉(zhuǎn)移,只需要在另外一個(gè)節(jié)點(diǎn),復(fù)制keepalived.conf?修改lvs_id?prioritystate

9.??開機(jī)啟動(dòng)腳本實(shí)例

這個(gè)先留著,

10、故障排除

????運(yùn)行keepalived使用-d選項(xiàng),查看/var/log/messages

????查看ipvsadm的輸出

????查看ip?addr?list?的輸出

?? 注意事項(xiàng)

1)?打開IP?forwarding?(echo?"1"?>?/proc/sys/net/ipv4/ip_forward)

2)?使用新版本的lvs

3)?Readl?server必須把負(fù)載均衡器當(dāng)做網(wǎng)關(guān)

4)?Real?server是內(nèi)網(wǎng)和外網(wǎng)不重要,重要的是他們必須在同一個(gè)LANs或者VLAN里面。

5)?你必須有一個(gè)vrrp_instance?部分定義在?keepalived?來(lái)配置VIP.

6)?VRRP里面,優(yōu)先級(jí)越小發(fā)言權(quán)越小。

7)?VRRP?實(shí)例不能使用相同的route_id?keepalived不會(huì)報(bào)錯(cuò),但是你將看不到VRRP實(shí)例的IP地址。

8)?盡管keepalived不會(huì)抱怨你忽略了一些選項(xiàng),但是不推薦遺留選項(xiàng),你使用了TCP_CHECK80端口,不要忽略了connect_port?80這條指令。?

?

這些都非常明顯,但是他們確實(shí)是可能出現(xiàn)在配置問(wèn)題里面的。

11、總結(jié)

????1、還是說(shuō),這個(gè)博客平臺(tái)的后臺(tái)編輯,差勁。。。浪費(fèi)時(shí)間,每次編輯出來(lái)都很丑,當(dāng)然我自己布局也有部分原因

????2、這篇文章是我在keepalived的官網(wǎng)上翻譯的,把配置文件修改為自己電腦的配置文件了。

????3、因?yàn)閯倢W(xué),這時(shí)候keepalived不夠精通,文章質(zhì)量不夠高,另外這樣翻譯有些事倍功辦的效果,說(shuō)了那么多,很多都是廢話。

????4、還是要說(shuō)我的博客寫的不行,可能太趕時(shí)間了吧,速度快,文章就不夠精品,速度慢,可是時(shí)間卻沒(méi)那么多。我下面看情況,把keepalived的配置文件詳解,貼出來(lái)。

原文鏈接:

http://www.keepalived.org/LVS-NAT-Keepalived-HOWTO.html


轉(zhuǎn)載于:https://blog.51cto.com/amyhehe/1695245

總結(jié)

以上是生活随笔為你收集整理的lvs + keepalived HOW TO的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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