1. 程式人生 > >微服務與監控(monitor)

微服務與監控(monitor)

       傳統的軟體屬於單塊應用的世界。微服務的是多服務多應用的世界。要掌握單塊應用的執行情況,只會發生單一的故障點,要追蹤問題的發生和修訂bug相對較易。而微服務的世界裡,由於其執行個體多、部署方式多樣,問題點會出現在各處,查其日誌很多,要從大量且相互隔離的日誌中找到問題點非常困難。對於多服務的監控,獲取服務的狀態更為複雜。

       解決多服務監控問題的好方式是,監控單個服務,然後將多個服務的監控資訊聚合,以便整體查詢多服務的整體資訊

一、單塊服務的監控方式

      部署方式:

      1、一臺主機,執行一個服務。

                                                                                  

     監控方式:

            1、監控主機,監控點有CPU、記憶體等主機資料。設定其邊界值,超出其邊界值就自動告警。監控軟體有Nagios等。

            2、檢視伺服器本身日誌。軟體有logrotate等

            3、監控應用程式本身。如軟體的響應時間和軟體的日誌等。

      2、單一服務,多個伺服器。

      多個服務的副本,執行在相互獨立的主機上。使用者向服務請求,至於由那個主機上的服務為使用者提供服務,由負載均衡或者分發器將使用者的請求匯入到某個主機上。

                                        

       監控方式:

              1、監控所有主機的資料和單個主機的資料,以保證既能檢視所有主機資料,也可以檢視單個主機資料。軟體:Nagios

              2、檢視日誌,登入每臺主機檢視或者將其聚合在一臺主機上檢視。

              3、監控響應時間,監控負載均衡器以找到對應的主機。

二、微服務的監控方式

        部署方式:多個服務,多個伺服器。多個服務聯合為使用者提供服務。

        監控方式:收集log和各個服務的指標,將其聚合在一起。