• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Keepalived 的高可靠郵件集群服務(wù)器的研究

      2024-12-01 00:00:00余傲雪金海峰
      電腦知識(shí)與技術(shù) 2024年32期

      摘要:針對(duì)單臺(tái)應(yīng)用服務(wù)器存在的單點(diǎn)故障和無(wú)法自動(dòng)遷移等問(wèn)題,文章基于Keepalived進(jìn)行高可用郵件集群服務(wù)器設(shè)計(jì)方案的研究,首先介紹了Keepalived,然后詳細(xì)描述了如何架設(shè)基于Keepalived的郵件集群,包括典型拓?fù)浣榻B、關(guān)鍵實(shí)現(xiàn)技術(shù),最后通過(guò)一系列的測(cè)試驗(yàn)證了該方案的有效性和穩(wěn)定性。

      關(guān)鍵詞:高可靠;Keepalived;郵件系統(tǒng);集群

      中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A

      文章編號(hào):1009-3044(2024)32-0080-03 開(kāi)放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID) :

      0 引言

      高可靠(High Reliable) 是指在一定時(shí)間內(nèi),系統(tǒng)能夠保持正常運(yùn)行的能力。高可用性則是指系統(tǒng)在出現(xiàn)故障時(shí),能夠在短時(shí)間內(nèi)恢復(fù)正常運(yùn)行的能力。一個(gè)高可靠性的系統(tǒng)可以確保業(yè)務(wù)的連續(xù)性,防止業(yè)務(wù)中斷[1]??煽啃詫?duì)于保障企業(yè)的業(yè)務(wù)連續(xù)性、數(shù)據(jù)安全和信譽(yù)保護(hù)至關(guān)重要。

      郵件系統(tǒng)是企業(yè)信息化過(guò)程中不可或缺的通訊平臺(tái)。采用一臺(tái)服務(wù)器獨(dú)立承載郵件系統(tǒng)容易造成單點(diǎn)故障,即該臺(tái)服務(wù)器一旦失效,就會(huì)讓整個(gè)郵件系統(tǒng)無(wú)法運(yùn)作。為了防止這種故障,可以使用集群的方式來(lái)提供服務(wù)。例如,開(kāi)源平臺(tái)Keepalived支持多活集群,支持多節(jié)點(diǎn)同時(shí)對(duì)外提供業(yè)務(wù)支撐能力。在應(yīng)對(duì)業(yè)務(wù)故障、硬件故障或?yàn)?zāi)難性故障時(shí),自動(dòng)切換到可用服務(wù)器繼續(xù)提供服務(wù),最大化地保障了業(yè)務(wù)的連續(xù)性。

      1 Keepalived 介紹

      案,它可以用來(lái)監(jiān)測(cè)服務(wù)器的健康狀態(tài)以及進(jìn)行主備之間的切換。如果某個(gè)節(jié)點(diǎn)出現(xiàn)異常或工作出現(xiàn)故障,Keepalived將檢測(cè)到,并將故障節(jié)點(diǎn)從集群中剔除。當(dāng)故障節(jié)點(diǎn)恢復(fù)正常以后,它會(huì)自動(dòng)將此服務(wù)節(jié)點(diǎn)重新加入集群中。這些過(guò)程全部自動(dòng)完成,無(wú)需人工干涉。Keepalived軟件作為高性能集群軟件,可提供虛擬路由冗余協(xié)議(VRRP) 和健康監(jiān)測(cè),基于VRRP 實(shí)現(xiàn)高可用。VRRP可以將兩臺(tái)或者多臺(tái)物理路由器設(shè)備虛擬成一個(gè)虛擬路由器,這個(gè)虛擬路由器通過(guò)虛擬地址對(duì)外提供服務(wù)。在同一時(shí)間內(nèi),只有一臺(tái)物理路由器對(duì)外提供服務(wù),這臺(tái)對(duì)外提供服務(wù)的物理服務(wù)器被稱為主路由器(處于MASTER角色),而其他服務(wù)器則僅接收MASTER的VRRP狀態(tài)通告信息,這些路由器被稱為備份路由器(處于BACKUP角色)。當(dāng)主路由器失效時(shí),其他備份路由器將重新選舉,產(chǎn)生一個(gè)新的主路由器對(duì)外提供服務(wù)[2]。

      2 郵件系統(tǒng)介紹

      郵件系統(tǒng)主要由兩個(gè)部分組成:郵件服務(wù)器和用戶代理[3]。郵件服務(wù)器是用于存儲(chǔ)、發(fā)送和接收郵件的設(shè)備或軟件,而用戶代理則是用戶與電子郵件系統(tǒng)的接口,常見(jiàn)的如Outlook、Foxmail等。

      Postfix和Dovecot是兩種廣泛應(yīng)用于郵件服務(wù)的開(kāi)源軟件[4]。Postfix是一種功能強(qiáng)大且多樣的郵件傳輸代理,它主要負(fù)責(zé)通過(guò)SMTP協(xié)議進(jìn)行郵件的發(fā)送與接收。而Dovecot則是一種優(yōu)秀的郵件投遞代理,它主要負(fù)責(zé)將郵件保存到郵箱并提供POP3和IMAP 服務(wù)。在實(shí)際應(yīng)用中,這兩者通常會(huì)一同使用,共同構(gòu)建一個(gè)功能完備的郵件服務(wù)系統(tǒng)。例如,在Linux 環(huán)境下,可以使用基于SMTP協(xié)議的Postfix服務(wù)程序來(lái)提供發(fā)件服務(wù)功能,同時(shí)使用基于POP3 協(xié)議的Dovecot服務(wù)程序提供收件服務(wù)功能。

      SMTP(簡(jiǎn)單郵件傳輸協(xié)議)是用于電子郵件服務(wù)器發(fā)送電子郵件的主要協(xié)議。常見(jiàn)的SMTP服務(wù)器默認(rèn)端口號(hào)為25。

      POP3(郵局協(xié)議版本3) 和IMAP(互聯(lián)網(wǎng)消息訪問(wèn)協(xié)議)都是用于接收電子郵件的協(xié)議,但在處理郵件方面有所不同。POP3允許將郵件從服務(wù)器下載到本地計(jì)算機(jī),而IMAP則更為先進(jìn),用戶可以直接在服務(wù)器上查看所有文件夾并對(duì)郵件進(jìn)行操作。通常情況下,POP3的默認(rèn)端口號(hào)為110,而IMAP的默認(rèn)端口號(hào)為143。

      3 架設(shè)郵件集群

      3.1 郵件集群模型

      如圖1所示,郵件集群模型包括1臺(tái)客戶機(jī)和2臺(tái)物理服務(wù)器,其中1臺(tái)服務(wù)器命名為主服務(wù)器,另一臺(tái)命名為次服務(wù)器。2 臺(tái)服務(wù)器IP 地址分別設(shè)置為172.16.42.10/24、172.16.42.20/24,安裝Centos7.9 操作系統(tǒng),同時(shí)安裝Postfix2.10.1、Dovecot2.2.36,部署郵件系統(tǒng)。在主服務(wù)器上部署DNS服務(wù),為郵件系統(tǒng)提供域名解析服務(wù)。2臺(tái)服務(wù)器上安裝開(kāi)源軟件Keepal?ived,組建郵件集群,集群VIP地址為172.16.42.15/32,默認(rèn)狀態(tài)下主服務(wù)器狀態(tài)MASTER,即對(duì)外提供服務(wù),次節(jié)點(diǎn)服務(wù)器處于BACKUP狀態(tài),主節(jié)點(diǎn)服務(wù)器故障后,自動(dòng)轉(zhuǎn)為MASTER狀態(tài),接替主服務(wù)器對(duì)外提供服務(wù)。

      3.2 關(guān)鍵技術(shù)

      參照?qǐng)D1,完成各服務(wù)器拓?fù)浠ヂ?lián)、配置IP地址信息,并完成DNS服務(wù)器的配置,為全網(wǎng)提供域名解析,將郵件服務(wù)器域名為mail.yax.com、yax.com解析為VIP地址172.16.42.15,DNS域名區(qū)域配置文件如下:

      $TTL 1D

      @ IN SOA @ rname.invalid. (

      0 ; serial

      1D ; refresh

      1H ; retry

      1W ; expire

      3H) ; minimum

      NS dns

      dns A 172.16.42.10

      yax.com. A 172.16.42.15

      mail A 172.16.42.15

      DNS測(cè)試結(jié)果如下:

      [root@localhost ~] nslookup

      > yax.com

      Server:172.16.42.10

      Address:172.16.42.10#53

      Name:yax.com

      Address:172.16.42.15

      >mail. yax.com

      Server:172.16.42.10

      Address:172.16.42.10#53

      Name:mail.yax.com

      Address:172.16.42.15

      與此同時(shí),在2 臺(tái)物理服務(wù)器上安裝Post?fix2.10.1、Dovecot2.2.36,完成部署郵件系統(tǒng),并建立郵件賬號(hào)yax@yax.com、yyyy@yax.com,用于后期測(cè)試郵件系統(tǒng)。

      運(yùn)行命令“useradd yax – d /mail – s /sbin/nologin”,創(chuàng)建本地用戶賬號(hào)。

      -d /mail,是新用戶的主目錄,即郵件的存放路徑。

      –s /sbin/nologin,表示禁止新用戶登錄系統(tǒng)。

      完成DNS、郵件系統(tǒng)的基本配置之后,接下來(lái)開(kāi)始配置集群功能。在2臺(tái)郵件服務(wù)器上安裝集群平臺(tái)Keepalived,并分別編輯Keepalived 的主次節(jié)點(diǎn)配置文件。

      在主節(jié)點(diǎn)上設(shè)置router id(主節(jié)點(diǎn)ID 號(hào)) 為172.16.42.10,定義VRRP實(shí)例 VI_1,state為MASTER,根據(jù)實(shí)際網(wǎng)卡名稱設(shè)置interface,定義virtual ipad?dress為172.16.42.15[5]。

      在此節(jié)點(diǎn)上設(shè)置router id(次節(jié)點(diǎn)ID 號(hào)) 為172.16.42.20,根據(jù)實(shí)際網(wǎng)卡名稱設(shè)置interface,state 為BACKUP,VRRP 實(shí)例和virtual ipaddress 必須與主節(jié)點(diǎn)一致,否則集群組建失敗。

      截至目前,已完成集群基本架構(gòu)。默認(rèn)狀態(tài)下,客戶機(jī)通過(guò)VIP地址172.16.42.15訪問(wèn)郵件系統(tǒng),則有主節(jié)點(diǎn)為其提供郵件服務(wù),當(dāng)主節(jié)點(diǎn)服務(wù)器網(wǎng)卡故障或者系統(tǒng)故障后,次節(jié)點(diǎn)可以自動(dòng)轉(zhuǎn)為MASTER狀態(tài),接替主節(jié)點(diǎn)對(duì)外提供郵件服務(wù)。默認(rèn)情況下,Keepalived集群僅僅將網(wǎng)絡(luò)連通性作為監(jiān)測(cè)項(xiàng),以此判斷主次節(jié)點(diǎn)是否在線來(lái)決定主次節(jié)點(diǎn)的狀態(tài),而這種判斷機(jī)制是不完善的,比如在主節(jié)點(diǎn)網(wǎng)絡(luò)正常聯(lián)通情況下,主節(jié)點(diǎn)的郵件系統(tǒng)出現(xiàn)故障了,主節(jié)點(diǎn)卻依然處于MASTER狀態(tài),繼續(xù)對(duì)外提供郵件服務(wù),可是郵件系統(tǒng)又出現(xiàn)故障了,最終導(dǎo)致客戶機(jī)訪問(wèn)郵件系統(tǒng)失敗。因此,接下來(lái),定義腳本監(jiān)測(cè)郵件系統(tǒng)的狀態(tài),增減Keepalived集群的監(jiān)測(cè)項(xiàng)。即監(jiān)測(cè)到主節(jié)點(diǎn)郵件系統(tǒng)故障,視為主節(jié)點(diǎn)網(wǎng)絡(luò)故障,Keepalived集群?jiǎn)?dòng)應(yīng)急機(jī)制,次節(jié)點(diǎn)自動(dòng)轉(zhuǎn)為MASTER狀態(tài),接替主節(jié)點(diǎn)對(duì)外提供服務(wù)。

      編輯Keepalived主配置文件,定義腳本chk_post?fix 和chk_dovecot,分別監(jiān)控postfix 進(jìn)程和dovecot 進(jìn)程[6],腳本chk_postfix和chk_dovecot的內(nèi)容如下:

      vrrp_script chk_postfix {

      script“ killall -o postfix”

      }

      vrrp_script chk_dovecot {

      script“ killall -o dovecot”

      }

      Killall -0 postfix 表示監(jiān)測(cè) postfix 的狀態(tài),如果進(jìn)程存在,返回結(jié)果 0,否則返回非 0,Killall -0 dovecot 同理。

      3.3 測(cè)試集群功能

      Keepalived集群配置完成,查看主次節(jié)點(diǎn)地址結(jié)果如圖2、3所示。

      從圖4、圖5可以分析得知:主節(jié)點(diǎn)服務(wù)器中VIP 地址172.16.42.15/32生效了,而次節(jié)點(diǎn)服務(wù)器中沒(méi)有VIP地址,說(shuō)明集群架構(gòu)基本完成。

      1) 測(cè)試1:關(guān)閉主節(jié)點(diǎn)網(wǎng)絡(luò),觀察次節(jié)點(diǎn)是否能夠啟動(dòng)切換到MASTER狀態(tài)。

      在主節(jié)點(diǎn)服務(wù)器上,運(yùn)行命令systemctl stop net?work 關(guān)閉網(wǎng)絡(luò)后,重新查看次節(jié)點(diǎn)服務(wù)器的網(wǎng)卡地址。

      從圖4可以觀察到地址的變化:主節(jié)點(diǎn)服務(wù)器的網(wǎng)卡禁用以后,次節(jié)點(diǎn)服務(wù)器的地址發(fā)生變化,地址新增了172.16.42.15/32。由此可見(jiàn),備服務(wù)器的VIP已生效。再次證實(shí)當(dāng)主節(jié)點(diǎn)的網(wǎng)卡出現(xiàn)故障的時(shí)候,次節(jié)點(diǎn)無(wú)需人工干涉,自動(dòng)切換到Master狀態(tài)并且VIP生效,實(shí)現(xiàn)了主次節(jié)點(diǎn)服務(wù)器的網(wǎng)絡(luò)狀態(tài)的監(jiān)控可以根據(jù)網(wǎng)絡(luò)的狀態(tài)進(jìn)行Keepalived的主備的自動(dòng)切換。

      2) 測(cè)試2:關(guān)閉主節(jié)點(diǎn)服務(wù)器上postfix進(jìn)程,觀察次節(jié)點(diǎn)是否能夠啟動(dòng)切換到MASTER狀態(tài)。

      在主節(jié)點(diǎn)服務(wù)器上,運(yùn)行命令systemctl start net?work、systemctl stop postfix,重新開(kāi)啟網(wǎng)絡(luò)并關(guān)閉posfix 進(jìn)程后,重新查看次節(jié)點(diǎn)服務(wù)器的網(wǎng)卡地址。

      從圖5、圖6 可以分析得知:關(guān)閉主節(jié)點(diǎn)服務(wù)器postfix進(jìn)程后,主節(jié)點(diǎn)VIP地址失效而次節(jié)點(diǎn)服務(wù)器VIP地址生效。即集群監(jiān)測(cè)到主節(jié)點(diǎn)服務(wù)器postfix進(jìn)程關(guān)閉后,次節(jié)點(diǎn)自動(dòng)切換到MASTER狀態(tài),實(shí)現(xiàn)了業(yè)務(wù)系統(tǒng)的自動(dòng)遷移。

      同理,關(guān)閉主節(jié)點(diǎn)服務(wù)器dovecot進(jìn)程后,次節(jié)點(diǎn)服務(wù)器同樣能夠自動(dòng)切換為MASTER狀態(tài),接替主節(jié)點(diǎn)對(duì)外提供服務(wù),提高了郵件系統(tǒng)的可靠性。

      4 結(jié)束語(yǔ)

      實(shí)驗(yàn)證明,基于Keepalived架構(gòu)的郵件系統(tǒng)集群較好地解決了郵件系統(tǒng)的單點(diǎn)故障問(wèn)題,實(shí)現(xiàn)了雙機(jī)熱備和業(yè)務(wù)系統(tǒng)的在線遷移,基本達(dá)到郵件系統(tǒng)的高可靠性和可擴(kuò)展性。

      參考文獻(xiàn):

      [1] 李霄,郭彤,王常洲.企業(yè)計(jì)算機(jī)應(yīng)用系統(tǒng)可靠性測(cè)試技術(shù)研究[J].中國(guó)科技信息,2013(13):87-88.

      [2] 張奎.基于LVS+Keepalived的Web集群系統(tǒng)實(shí)驗(yàn)仿真[J].陜西理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2020,36(4):44-48,92.

      [3] 徐建.基于Linux平臺(tái)的郵件系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].湖北民族學(xué)院學(xué)報(bào)(自然科學(xué)版),2011,29(1):100-102.

      [4] 王俊波.基于Postfix的電子郵件服務(wù)的實(shí)現(xiàn)[J].信息與電腦(理論版),2014,26(24):9.

      [5] 金海峰,余傲雪.Nginx負(fù)載均衡器集群架構(gòu)的實(shí)踐應(yīng)用[J].安徽電子信息職業(yè)技術(shù)學(xué)院學(xué)報(bào),2023,22(3):1-6.

      [6] 金海峰,侯樂(lè)斌.高可用DNS集群服務(wù)器架構(gòu)的實(shí)踐應(yīng)用[J].安徽電子信息職業(yè)技術(shù)學(xué)院學(xué)報(bào),2022,21(3):1-6.

      【通聯(lián)編輯:代影】

      基金項(xiàng)目:2023 年江蘇省職業(yè)院校學(xué)生創(chuàng)新創(chuàng)業(yè)培育計(jì)劃項(xiàng)目“高性能高可用負(fù)載均衡集群的實(shí)踐應(yīng)用”(G-2023-0880) ;2022 年江蘇省高校“智慧教育與教學(xué)數(shù)字化轉(zhuǎn)型研究”專項(xiàng)課題:“虛實(shí)互補(bǔ)、創(chuàng)客教育”的高職計(jì)算機(jī)網(wǎng)絡(luò)專業(yè)在線實(shí)踐教學(xué)改革研究(2022ZHSZ41)

      长兴县| 德安县| 湘乡市| 沅陵县| 偏关县| 清水河县| 汉中市| 崇义县| 博野县| 龙陵县| 阳新县| 会泽县| 固安县| 遵化市| 丰城市| 游戏| 托克托县| 绥棱县| 泰和县| 乡城县| 铜山县| 鸡东县| 栖霞市| 明星| 边坝县| 左贡县| 鲁甸县| 巴彦淖尔市| 都昌县| 九台市| 宿松县| 甘南县| 德阳市| 株洲市| 隆尧县| 宜章县| 靖安县| 浦县| 孟津县| 喀喇沁旗| 东海县|