了解最新公司動(dòng)態(tài)及行業(yè)資訊
本文是對(duì)2018年8月9日公司郵件系統(tǒng)郵件流故障的故障發(fā)現(xiàn)、故障處理和故障修復(fù)過(guò)程的一個(gè)記錄和總結(jié)反思。幫助自己總結(jié)經(jīng)驗(yàn),吸取教訓(xùn),同時(shí)也作為一個(gè)反面供其他運(yùn)維或管理員學(xué)習(xí)的教材。
故障排除
昨天下午 18:50 左右完成了團(tuán)隊(duì)的培訓(xùn)分享會(huì)后,我收到了同事的反饋,他們有幾個(gè)無(wú)法接收外部電子郵件(上圖)。好的,但無(wú)法接收外部郵件。
因?yàn)楣镜泥]件系統(tǒng)是公司自己搭建的,所以需要自己運(yùn)營(yíng)和管理。測(cè)試了幾個(gè)外部郵箱后,發(fā)現(xiàn)確實(shí)無(wú)法接收外部郵件。這些外部郵箱包括網(wǎng)易、阿里企業(yè)郵箱和微軟郵箱。
因?yàn)猷]件服務(wù)是企業(yè)的核心服務(wù)之一,有同事反映遇到了問(wèn)題,這個(gè)故障應(yīng)該是重要的緊急故障,必須盡快排除才能恢復(fù)服務(wù)。
注1:?jiǎn)栴}嚴(yán)重或有應(yīng)急處理流程的,應(yīng)向上級(jí)報(bào)告,并按流程下達(dá)通知。
注2:以下是個(gè)人觀點(diǎn)和經(jīng)驗(yàn)總結(jié),如有錯(cuò)誤請(qǐng)指出。
故障排除
面對(duì)故障,最重要的是盡快通過(guò)排除法進(jìn)行故障排除,以最快的速度恢復(fù)服務(wù)。所以首先要做的是排除故障。由于已經(jīng)是下班時(shí)間,事故雖然嚴(yán)重,但尚未造成重大影響。
特別是由于缺乏親身的運(yùn)維經(jīng)驗(yàn),憑經(jīng)驗(yàn)不能一下子發(fā)現(xiàn)問(wèn)題服務(wù)器運(yùn)維,只能根據(jù)以往的經(jīng)驗(yàn)和結(jié)合一一檢查。
經(jīng)初步測(cè)試,內(nèi)部郵件收發(fā)正常,內(nèi)部到外部郵件正常,但接收異常。于是開(kāi)始下面的調(diào)查。
在進(jìn)行故障排除之前,有必要了解最近的更改,例如軟件配置以及導(dǎo)致更改的操作,尤其是當(dāng)兩個(gè)或多個(gè)管理員共同管理時(shí)。因此,服務(wù)器由一個(gè)人管理,最近沒(méi)有進(jìn)行任何更改。是突然出現(xiàn)的問(wèn)題,所以我直接開(kāi)始排查:
檢查域名解析,查看mx記錄是否有問(wèn)題。使用該命令在多個(gè)外部服務(wù)器上測(cè)試 MX 記錄,以及相關(guān)的 A 記錄和 CNAME 記錄。
注1:服務(wù)器可以使用-q=直接查詢,Linux命令需要交互查詢,即先執(zhí)行再setq=mx或=mx,再查詢
注2:查詢mx記錄時(shí),只需要查詢郵件服務(wù)器fqdn域名的上級(jí)域名即可。例如,您只需要查詢 mx 記錄。
經(jīng)排查,排除域名解析問(wèn)題。
檢查外部和內(nèi)部通信問(wèn)題,檢查防火墻阻塞和防火墻與服務(wù)器之間的網(wǎng)絡(luò)鏈接問(wèn)題。使用25命令檢查25端口的開(kāi)放情況,經(jīng)測(cè)試排除防火墻問(wèn)題。
注1:25端口是約定的接收外部郵件的端口
注2:如果25端口正常,目標(biāo)是郵件服務(wù)器,應(yīng)該提示“,:43:58+0800”。
要確認(rèn)它不是防火墻或網(wǎng)絡(luò)設(shè)備錯(cuò)誤,請(qǐng)重新啟動(dòng)防火墻或網(wǎng)絡(luò)設(shè)備。通常,沒(méi)有軟關(guān)機(jī)和重啟功能的防火墻需要斷電或切換電源狀態(tài)10s以上。檢查后不是網(wǎng)絡(luò)設(shè)備問(wèn)題。
以上3個(gè)步驟排除后,應(yīng)該確定問(wèn)題出在郵件服務(wù)器上。啟動(dòng)郵件服務(wù)器本身的故障排除:
由于郵件服務(wù)器收發(fā)正常,直接登錄郵件服務(wù)器,查看其他可能影響郵件服務(wù)器的因素。
首先檢查服務(wù)器負(fù)載,包括CPU、內(nèi)存、磁盤空間、IO和網(wǎng)絡(luò)負(fù)載。通常主要影響的是 CPU 和內(nèi)存,其次是磁盤空間和 IO。查了一下磁盤空間不足(已經(jīng)不足5%了,但是還有3GB的空閑空間,由于經(jīng)驗(yàn)不足,沒(méi)有判斷這個(gè)問(wèn)題可能造成的影響,內(nèi)網(wǎng)郵件正常,所以是沒(méi)有優(yōu)先考慮,最后發(fā)現(xiàn)是這個(gè)原因造成的)。
接下來(lái),您應(yīng)該檢查服務(wù)器系統(tǒng)日志。首先檢查日志或首先檢查負(fù)載只是一個(gè)習(xí)慣問(wèn)題。系統(tǒng)日志通常會(huì)為管理員提供足夠的信息。事件管理器雖然不是特別好用,但在日志方面還是相當(dāng)良心的,一般大大小小的事件都有記錄。
除了檢查系統(tǒng)日志外,一般還提供其他診斷工具。比如“隊(duì)列查看器”,由于隊(duì)列查看器可以用來(lái)排查郵件流問(wèn)題,在隊(duì)列查看器中也會(huì)有一些郵件無(wú)法投遞的提示。
查看系統(tǒng)日志和隊(duì)列查看器后,發(fā)現(xiàn)問(wèn)題是由于資源不足。系統(tǒng)有兩個(gè)明顯的提示:
1.隊(duì)列查看器指出最后一個(gè)錯(cuò)誤是“4524.3.”。查詢后,這通常意味著磁盤空間不足或內(nèi)存空間不足。
2.事件查看器中的“來(lái)源”報(bào)告說(shuō):
(1)警告:資源壓力已從正常增加到中等。
(2)錯(cuò)誤:傳輸服務(wù)拒絕了郵件提交,因?yàn)榭捎么疟P空間已低于配置的閾值。
故障排除和維修
已確定為由磁盤空間問(wèn)題觸發(fā)的“背壓”保護(hù)策略。通過(guò)釋放磁盤空間來(lái)解決。解決方案解決后,通知上級(jí)領(lǐng)導(dǎo)及相關(guān)人員。
知識(shí)點(diǎn)
關(guān)于“背壓”。以下是文檔庫(kù)的摘錄——了解背壓。
背壓是存在于集線器傳輸服務(wù)器和邊緣傳輸服務(wù)器上的傳輸服務(wù)的系統(tǒng)資源監(jiān)控功能。 可以檢測(cè)可用硬盤空間和內(nèi)存等重要資源何時(shí)受到壓力,并采取措施嘗試防止服務(wù)不可用。
背壓可防止過(guò)度使用系統(tǒng)資源并嘗試傳遞現(xiàn)有消息。當(dāng)系統(tǒng)資源使用恢復(fù)到正常水平時(shí),服務(wù)器可以逐漸恢復(fù)正常運(yùn)行。
其中,當(dāng)集線器傳輸服務(wù)器或邊緣傳輸服務(wù)器處于資源壓力之下時(shí),它會(huì)拒絕傳入連接。在 中,傳入連接被接受,但通過(guò)這些連接傳入的郵件以較慢的速度被接受或拒絕。當(dāng) SMTP 主機(jī)嘗試連接到背壓下的集線器傳輸或邊緣傳輸服務(wù)器時(shí),連接成功,但當(dāng)主機(jī)發(fā)出命令提交郵件時(shí),根據(jù)壓力下的資源,可能會(huì)延遲確認(rèn)命令或拒絕訂單。
以下摘錄來(lái)自事件查看器:
傳輸服務(wù)拒絕了郵件提交,因?yàn)榭捎么疟P空間已低于配置的閾值。
以下資源面臨壓力:隊(duì)列數(shù)據(jù)庫(kù)日志記錄路徑("C:\\V14\dataQueue")=95%[][=93%=95%high=97%]
背壓導(dǎo)致以下組件被禁用: 從集線器傳輸服務(wù)器提交入站郵件
提交來(lái)自的入站郵件
從選擇器目錄提交郵件
從重播目錄提交郵件
從郵箱服務(wù)器提交郵件
將郵件投遞到遠(yuǎn)程域
從隊(duì)列數(shù)據(jù)庫(kù)加載電子郵件(如果可用)
以下資源處于正常狀態(tài):Queue path("C:\\V14\dataQueuemail.que")=95%[][=95%=97%high=99% ]
版本桶=0[正常][正常=80中=120高=200]
私有字節(jié)=0%[正常][正常=71%中=73%高=75%]
物理內(nèi)存負(fù)載 = 11% [限制為 94% 以啟動(dòng)郵件凍結(jié)。]
批處理點(diǎn)=0[正常][正常=1000中級(jí)=2000高級(jí)=4000]
提交隊(duì)列=0[正常][正常=1000中=2000高=4000]
注意:其實(shí)Linux中也有類似的保護(hù)機(jī)制,比如oom,磁盤預(yù)留5%。遇到此類知識(shí)時(shí),應(yīng)從其他事實(shí)中推論,類推。
故障反映與總結(jié)
遇到故障或問(wèn)題時(shí),應(yīng)保持頭腦冷靜,不要驚慌,不要搞砸自己。很多運(yùn)維或者管理員遇到問(wèn)題,首先想到的是如何解決,嘗試了各種解決方法都無(wú)濟(jì)于事后,為了節(jié)省時(shí)間想到了回滾,這是不正確的。作為一名合格的運(yùn)維人員,應(yīng)該了解事情的來(lái)龍去脈和問(wèn)題的根源。在排查問(wèn)題時(shí),首先要考慮的是通過(guò)日志排查問(wèn)題。在調(diào)查過(guò)程中,調(diào)查要盡可能全面,不要遺漏任何可能引起問(wèn)題的細(xì)節(jié)。
部署必須符合標(biāo)準(zhǔn),必須標(biāo)準(zhǔn)化。從這次事故來(lái)看,這臺(tái)服務(wù)器包含三個(gè)數(shù)據(jù)庫(kù),其中一個(gè)存儲(chǔ)在C盤,其他盤不存在。久而久之,這個(gè)數(shù)據(jù)庫(kù)占用了大量磁盤空間,導(dǎo)致磁盤空間不足,從而觸發(fā)了“背壓”機(jī)制。從標(biāo)準(zhǔn)和規(guī)范的實(shí)踐來(lái)看,這個(gè)數(shù)據(jù)庫(kù)應(yīng)該從 C 盤移動(dòng)到其他大容量磁盤。并在部署之初計(jì)算容量。
注意警察。該服務(wù)器配置了監(jiān)控告警,已經(jīng)檢測(cè)到故障并發(fā)出告警。故障是由于處理不及時(shí)造成的。
就算要接手,也要改變過(guò)去。因?yàn)檫@臺(tái)郵件服務(wù)器是之前一個(gè)運(yùn)維同事部署的,所以里面的一些問(wèn)題被擱置了很久沒(méi)有解決(也有技術(shù)原因)。
保持學(xué)習(xí)。雖然有時(shí)有些事情會(huì)偏離自己的方向,但應(yīng)該深入研究公司的核心 IT 系統(tǒng)(如郵件服務(wù)器)。只有理解和理解,才能在遇到問(wèn)題時(shí)更快地解決問(wèn)題。
每次失敗后總結(jié)經(jīng)驗(yàn),吸取教訓(xùn)。記錄知識(shí)和經(jīng)驗(yàn),安頓下來(lái)。比如經(jīng)過(guò)這個(gè)總結(jié),遇到這個(gè)故障時(shí)服務(wù)器運(yùn)維,你可能會(huì)突然想到磁盤空間不足會(huì)觸發(fā)背壓,導(dǎo)致無(wú)法接收外部郵件。
如果你想在這個(gè)行業(yè)工作,但你沒(méi)有基礎(chǔ),可以先去培訓(xùn),也可以少走彎路。Linux培訓(xùn)費(fèi)用不貴,投資非常必要。
24小時(shí)免費(fèi)咨詢
請(qǐng)輸入您的聯(lián)系電話,座機(jī)請(qǐng)加區(qū)號(hào)