天天看點

關于問題解決與事件解決的思考

  那天突然有人問我:問題解決和事件解決的差別。

  今天剛好出了點問題,在解決完後,我突然對這二者有了更深入的體會。

  舉個例子:

    如果由于網絡中斷,導緻服務不可用,那麼這就是一個時間,我們可以編号為2017-09-13号事件,那針對這一次的事件,我們可能通過重新開機裝置,排查具體端口映射,或者更換新裝置等方式解決,那麼,在這次的事件中,我們解決問題的過程,既可以成稱為是一次事件解決過程。

但是這裡我們将面臨兩個問題:

      1.在迅速判斷出故障後,能否迅速修複問題?

      2.整個故障恢複過程中耗費的時間對業務造成的損失?

--這就引出了一個核心店:運維的核心是保障業務的可用性

這就引出下面的問題解決方案。

仍以上例說明:

  在這次的事件解決中,我們先是通過觀察現場環境、并逐一的對硬體、鍊路連通性、系統、服務等進行排查,最後确認故障是由網絡裝置受損導緻了服務不可用,然後我們又開始花大量的時間用于判斷具體原因并修複該受損裝置,最終恢複服務的可用性;

但是,圍繞上面的一個核心店,我們再來思考這兩個問題,就會發現,這樣的突然事件處理方式必然是不可取的。那為了避免以後再出現這種情況,我們該怎麼辦?

  我們是不是可以部署一套新環境,做一個高可用的方案呢?一旦故障發生,我們可以實作手動或者自動,但是保證最迅速的切換到備用環境,進而維持業務正常使用。當然,考慮到成本問題,很多公司并不願做大動作。那我們可不可退而求其次,挑選整個環境中的幾分關鍵或故障頻發環節做有限度的備援?本例中完全可以事先準備一台低端裝置,但是預先配置好環境,這樣,一旦出現未知故障,我們迅速的使用新裝置直接替換;而待時間充分時再去研究具體原因,如此又完全不影響業務可用性,豈不兩全?  

    以上就是我對問題解決與事件解決的一點思考,随筆記錄以備日後回顧。