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