搭建LVS+HA網(wǎng)站服務(wù)群集-創(chuàng)新互聯(lián)

搭建keepalived+DR/NAT模式的高可用web群集,這篇博文以keepalived+DR的環(huán)境來搭建一個(gè)高可用的web服務(wù)群集。

創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的金水網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

相關(guān)技術(shù)文檔可以去本人主頁查看:https://blog.51cto.com/14227204?,https://blog.51cto.com/14227204/2438901

環(huán)境如下:

搭建 LVS+HA網(wǎng)站服務(wù)群集

一、環(huán)境分析:

1、2個(gè)調(diào)度器和2個(gè)web節(jié)點(diǎn)使用同一個(gè)網(wǎng)段地址,可以直接和外網(wǎng)通信。為了共享存儲(chǔ)的

安全性,一般將web節(jié)點(diǎn)和存儲(chǔ)服務(wù)器規(guī)劃到內(nèi)網(wǎng)環(huán)境,所以web節(jié)點(diǎn)必須有兩個(gè)及以上

網(wǎng)卡的接口。

2、我這里資源有限,也為了配置方便,所以調(diào)度器和web節(jié)點(diǎn)分別只有兩個(gè),在web訪問請(qǐng)

求量不大的情況下,足夠了,但是若訪問請(qǐng)求比較大,那么最少要分別配置三個(gè)調(diào)度器和

web節(jié)點(diǎn),如果只有兩個(gè)web節(jié)點(diǎn)的話,訪問量又比較大,那么一旦有一個(gè)宕機(jī)了,那剩下

一個(gè)獨(dú)苗必定會(huì)因?yàn)榭覆蛔〖ぴ龅脑L問請(qǐng)求,而被打死。

3、準(zhǔn)備系統(tǒng)映像,以便安裝相關(guān)服務(wù)。

4、自行配置防火墻策略和除了VIP之外的IP地址(我這里直接關(guān)閉了防火墻)。

5、keepalived會(huì)自動(dòng)調(diào)用IP_vs模塊,所以無需手動(dòng)加載。

二、開始搭建:

配置主調(diào)度器:

[root@lvs1?/]#?yum?-y?install?ipvsadm?keepalived????????#?安裝keepalived?和?ipvsadm管理工具 [root@lvs1?keepalived]#?vim?/etc/sysctl.conf????????#?調(diào)整內(nèi)核參數(shù),關(guān)閉ICMP重定向 ........... net.ipv4.conf.all.send_redirects?=?0 net.ipv4.conf.default.send_redirects?=?0 net.ipv4.conf.ens33.send_redirects?=?0 [root@lvs1?/]#?sysctl?-p???????????????????????#?刷新使配置生效 net.ipv4.conf.all.send_redirects?=?0 net.ipv4.conf.default.send_redirects?=?0 net.ipv4.conf.ens33.send_redirects?=?0 [root@lvs1?/]#?cd?/etc/keepalived/ [root@lvs1?keepalived]#?cp?keepalived.conf?keepalived.conf.bak????????#?復(fù)制一份keepalived?主配文件作為備份,以免修改時(shí)出錯(cuò) [root@lvs1?/]#?vim?/etc/keepalived/keepalived.conf???????????#?編輯主配文件 !?Configuration?File?for?keepalived global_defs?{ ???notification_email?{ ?????acassen@firewall.loc ?????failover@firewall.loc?????????????#?當(dāng)出錯(cuò)時(shí),將報(bào)錯(cuò)信息發(fā)送到的收件人地址,可根據(jù)需要填寫 ?????sysadmin@firewall.loc ???} ???notification_email_from?Alexandre.Cassen@firewall.loc????#發(fā)件人姓名、地址(可不做修改)??? ???smtp_server?192.168.200.1 ???smtp_connect_timeout?30 ???router_id?LVS1????????????????#本服務(wù)器的名稱改一下,在群集中所有調(diào)度器名稱里必須唯一 }?? vrrp_instance?VI_1?{ ????state?MASTER?????????????#?設(shè)為主調(diào)度器 ????interface?ens33??????????#承載VIP地址的物理網(wǎng)卡接口根據(jù)實(shí)際情況改一下 ????virtual_router_id?51??????? ????priority?100??????????#?主調(diào)度器的優(yōu)先級(jí) ????advert_int?1 ????authentication?{?????????#?主?從熱備認(rèn)證信息 ????????auth_type?PASS ????????auth_pass?1111 ????} ????virtual_ipaddress?{????????#?指定群集?VIP地址 ????????200.0.0.100 ????}??? } virtual_server?200.0.0.100?80?{??????#?虛擬服務(wù)器地址(VIP)?端口 ????delay_loop?15????????????????#?健康檢查的間隔時(shí)間 ????lb_algo?rr????????????????#?輪詢調(diào)度算法 ????lb_kind?DR??????????????#?指定工作模式,這里為DR,也可改為NAT ????!?persistence_timeout?50??????????#為了一會(huì)測(cè)試看到效果,將連接保持這行前加“?!”將該行注釋掉 ????protocol?TCP ???? ????real_server?200.0.0.3?80?{??????#?web節(jié)點(diǎn)的地址及端口 ????????weight?1 ????????TCP_CHECK?{ ????????????connect_port?80 ????????????connect_timeout?3 ????????????nb_get_retry?3 ????????????????????????delay_before_retry?3 ????????} ????} ????????real_server?200.0.0.4?80?{?????#?另一?web節(jié)點(diǎn)地址及端口 ????????????????weight?1 ????????????????TCP_CHECK?{ ????????????????????????connect_port?80??????????#?配置連接端口 ????????????????????????connect_timeout?3 ????????????????????????nb_get_retry?3 ????????????????????????delay_before_retry?3 ????????} ????} } [root@lvs1?/]#?systemctl?restart?keepalived? [root@lvs1?/]#?systemctl?enable?keepalived

主調(diào)度器到這就告一段落配置完成了:

配置從調(diào)度器:

[root@localhost?/]#?yum?-y?install?keepalived?ipvsadm [root@localhost?/]#?scp?root@200.0.0.1:/etc/sysctl.conf?/etc/???????#?可通過scp命令將配置較繁雜的復(fù)制過來 root@200.0.0.1's?password:? sysctl.conf????????????? ?????? ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????100%??566?????0.6KB/s???00:00????[root@localhost?/]#?sysctl?-p [root@localhost?/]#?sysctl?-p???????????#?刷新使配置生效 net.ipv4.conf.all.send_redirects?=?0 net.ipv4.conf.default.send_redirects?=?0 net.ipv4.conf.ens33.send_redirects?=?0 [root@localhost?/]#?vim?/etc/keepalived/keepalived.conf? ...................... router_id?LVS2???????????????????????#?route-id?要不一樣 vrrp_instance?VI_1?{ ????state?BACKUP???????????????#?狀態(tài)改為?BACKUP?最好大寫 ????interface?ens33??????????????#?網(wǎng)卡如果一樣的話可不更改 ????virtual_router_id?51 ????priority?90????????????????#?優(yōu)先級(jí)要比主調(diào)度器小 ????advert_int?1 ????authentication?{ ????????auth_type?PASS ????????auth_pass?1111 ????} ????virtual_ipaddress?{???????????????#?就需要改這些其他配置均與主調(diào)度器相同 ????????200.0.0.100 ????} } [root@localhost?/]#?systemctl?enable?keepalived [root@localhost?/]#?systemctl?restart??keepalived?????????#?重啟服務(wù)使配置生效

若需要部署多個(gè)從調(diào)度器,按照以上這個(gè)從(備份)調(diào)度器配置即可

web1節(jié)點(diǎn)配置:

[root@web1?/]#?cd?/etc/sysconfig/network-scripts/ [root@web1?network-scripts]#?cp?ifcfg-lo?ifcfg-lo:0 [root@web1?network-scripts]#?vim?ifcfg-lo:0 DEVICE=lo:0 IPADDR=200.0.0.100???????????????#?VIP??地址 NETMASK=255.255.255.255??????????#?掩碼為1 ONBOOT=yes [root@web1?network-scripts]#?ifup?lo:0??????#?啟動(dòng)虛接口 [root@web1?network-scripts]#?ifconfig?lo:0??????#?查看配置有無生效 lo:0:?flags=73<UP,LOOPBACK,RUNNING>??mtu?65536 ????????inet?200.0.0.100??netmask?255.255.255.255 ????????loop??txqueuelen?1??(Local?Loopback) [root@web1?/]#?route?add?-host?200.0.0.100?dev?lo:0????????????#?添加本地路由 [root@web1?/]#?vim?/etc/rc.local???????????????#設(shè)置開機(jī)自動(dòng),添加這條路由記錄?????????????? ????????????????................................ /sbin/route?add?-host?200.0.0.100?dev?lo:0 [root@web1?/]#?vim?/etc/sysctl.conf?????#?調(diào)整/proc參數(shù),關(guān)閉?ARP響應(yīng) net.ipv4.conf.all.arp_ignore?=?1 net.ipv4.conf.all.arp_announce?=?2 net.ipv4.conf.default.arp_ignore?=?1 net.ipv4.conf.default.arp_announce?=?2 net.ipv4.conf.lo.arp_ignore?=?1 net.ipv4.conf.lo.arp_announce?=?2 [root@web1?/]#?sysctl?-p?????????????#?刷新使配置生效 net.ipv4.conf.all.arp_ignore?=?1 net.ipv4.conf.all.arp_announce?=?2 net.ipv4.conf.default.arp_ignore?=?1 net.ipv4.conf.default.arp_announce?=?2 net.ipv4.conf.lo.arp_ignore?=?1 net.ipv4.conf.lo.arp_announce?=?2 [root@web1?/]#?yum?-y?install?httpd [root@web1?/]#?echo?test1.com?>?/var/www/html/index.html [root@web1?/]#?systemctl?start?httpd [root@web1?/]#?systemctl?enable?httpd

web2節(jié)點(diǎn)和web1節(jié)點(diǎn)配置相同,這里我就省略了,但是這里我為了方便看出驗(yàn)證效果,將web2的測(cè)試文件寫為test2.com

搭建 LVS+HA網(wǎng)站服務(wù)群集

搭建 LVS+HA網(wǎng)站服務(wù)群集

若訪問到的是同一頁面,在排除配置上錯(cuò)誤的情況下,可以打開多個(gè)網(wǎng)頁,或者稍等一會(huì)再刷新,因?yàn)樗赡苡幸粋€(gè)保持連接的時(shí)間,所以會(huì)存在延遲。

三、搭建 NFS 共享存儲(chǔ)服務(wù):

[root@nfs?/]#?mkdir?opt/wwwroot [root@nfs?/]#?vim?/etc/exports???????#?編寫配置文件 /opt/wwwroot????192.168.1.0/24(rw,sync,no_root_squash) [root@nfs?/]#?systemctl?restart?nfs?????????#?重啟服務(wù)使配置生效 [root@nfs?/]#?systemctl?restart?rpcbind [root@nfs?/]#?showmount?-e??????????????????#?查看本機(jī)發(fā)布的掛載目錄 Export?list?for?nfs: /opt/wwwroot?192.168.1.0/24 [root@nfs?/]#?echo?nfs.test.com?>?/opt/wwwroot/index.html

所有節(jié)點(diǎn)掛載共享存儲(chǔ)目錄:

[root@web1?/]#?showmount?-e?192.168.1.5???????#?查看共享服務(wù)器共享的所有目錄 Export?list?for?192.168.1.5: /opt/wwwroot?192.168.1.0/24 [root@web1?/]#?mount?192.168.1.5:/opt/wwwroot/?/var/www/html/?????????#?掛載到本地 [root@web1?/]#?vim?/etc/fstab???????????????#設(shè)置自動(dòng)掛載? ???????????????????......................... 192.168.1.5:/opt/wwwroot??/var/www/html???nfs???defaults,_netdev?0?0

web1和web2都需要掛載

搭建 LVS+HA網(wǎng)站服務(wù)群集

1)VIP在哪個(gè)調(diào)度器上,查詢?cè)撜{(diào)度器承載VIP地址的物理接口,即可看到VIP地址(VIP地址在備份調(diào)度器上查不到的):

[root@LVS1?~]#?ip?a?show?dev?ens33??????????????#查詢承載VIP地址的物理網(wǎng)卡ens332:?ens33:?<BROADCAST,MULTICAST,UP,LOWER_UP>?ate?UP?groupn?1000 ???link/ether?00:0c:29:77:2c:03?brd?ff:ff:ff:ff:ff:ff ???inet?200.0.0.1/24?brd?200.0.0.255?scope?global?noprefixroute?ens33 ??????valid_lft?forever?preferred_lft?forever ???inet?200.0.0.100/32?scope?global?ens33???????????????????#VIP地址。 ??????valid_lft?forever?preferred_lft?forever ???inet6?fe80::95f8:eeb7:2ed2:d13c/64?scope?link?noprefixroute? ??????valid_lft?forever?preferred_lft?forever

2)查詢有哪些web節(jié)點(diǎn):

[root@LVS1?~]#?ipvsadm?-ln??????????????????#查詢web節(jié)點(diǎn)池及VIPIP?Virtual?Server?version?1.2.1?(size=4096) Prot?LocalAddress:Port?Scheduler?Flags ???RemoteAddress:Port???????????Forward?Weight?ActiveConn?InActConn TCP??200.0.0.100:80?rr?? ???200.0.0.3:80?????????????????Route???1??????0??????????0????????? ??200.0.0.4:80?????????????????Route???1??????0??????????0

3)模擬Web2節(jié)點(diǎn)和主調(diào)度器宕機(jī),并在備份調(diào)度器上再次查詢VIP以及web節(jié)點(diǎn):

[root@LVS2?~]#?ip?a?show?dev?ens33???????#可以看到VIP地址已經(jīng)轉(zhuǎn)移到了備份調(diào)度器上2:?ens33:?<BROADCAST,MULTICAST,UP,LOWER_UP>? ????link/ether?00:0c:29:9a:09:98?brd?ff:ff:ff:ff:ff:ff ????inet?200.0.0.2/24?brd?200.0.0.255?scope?global?noprefixroute?ens33 ???????valid_lft?forever?preferred_lft?forever ????inet?200.0.0.100/32?scope?global?ens33??????????????????????#VIP地址。 ???????valid_lft?forever?preferred_lft?forever ????inet6?fe80::3050:1a9b:5956:5297/64?scope?link?noprefixroute? ???????valid_lft?forever?preferred_lft?forever [root@LVS2?~]#?ipvsadm?-ln???????????????????#Web2節(jié)點(diǎn)宕機(jī)后,就查不到了。IP?Virtual?Server?version?1.2.1?(size=4096) Prot?LocalAddress:Port?Scheduler?Flags ??->?RemoteAddress:Port???????????Forward?Weight?ActiveConn?InActConn TCP??200.0.0.100:80?rr ??->?200.0.0.3:80?????????????????Route???1??????0??????????0????????? ????#當(dāng)主調(diào)度器或Web2節(jié)點(diǎn)恢復(fù)正常后,將會(huì)自動(dòng)添加到群集中,并且正常運(yùn)行。

4)查看調(diào)度器故障切換時(shí)的日志消息:

[root@LVS2?~]#?tail?-30?/var/log/messages

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

文章題目:搭建LVS+HA網(wǎng)站服務(wù)群集-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://muchs.cn/article4/ddpdie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、品牌網(wǎng)站建設(shè)、網(wǎng)站維護(hù)企業(yè)網(wǎng)站制作、ChatGPT、網(wǎng)頁設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名