如何監控docker容器內的服務程式

kflj88發表於2020-04-22

如何監控 docker容器內的服務程式? docker的缺點是, 把程式碼封裝到一組容器中可能會導致缺乏可見性,容器變成了黑盒子並使得開發人員對容器內部的工作方式幾乎不可見。為了能夠更精確的分配每個容器能使用的資源,我們想要實時獲取容器執行時使用資源的情況。

無論是傳統的基礎元件監控,還是應用效能監控的方式,都很難有效地監控 Docker。介紹一下現有的 Docker 相關監測 App 和服務,包括簡單的開源工具,下面列舉幾種作為參考。

cAdvisor

谷歌的 container introspection 解決方案是 cAdvisor,這是一個 Docker 容器內封裝的實用工具,能夠蒐集、集料、處理和匯出執行中的容器的資訊。透過它可以看到 CPU 的使用率、記憶體使用率、網路吞吐量以及磁碟空間利用率。

然後,你可以透過點選在網頁頂部的 Docker Containers 連結,然後選擇某個容器來詳細瞭解它的使用情況。cAdvisor 部署和使用簡單,但它只可以監視在同一個 host 上執行的容器,對多節點部署不是太管用。

Cloud Insight

在列舉的幾個監控Docker 容器服務平臺中,這是一款國內產品。Cloud Insight 支援多種作業系統、 雲主機、資料庫和中介軟體的監控,原理是在平臺服務儀表盤和自定義儀表盤中,採集並處理 Metric,對資料進行聚合與分組等計算,提供曲線圖、柱狀圖等多樣化的展現形式。優點是監控的指標很全,簡單易用。

Scout

Scout 是一款監視服務,並不是一個獨立的開源專案。它有大量的外掛,除了 Docker 資訊還可以吸收其他有關部署的資料。因此,Scout 算是一站式監控系統,無需對系統的各種資源來安裝各種不同的監控系統。

Scout 的一個缺點是,它不顯示有關每個主機上單獨容器的詳細資訊。此外,每個監控的主機十美元,這樣的價格也是是否選擇 Scout 作為監控服務的考慮因素,如果執行一個有多臺主機的超大部署,成本會比較高。

Sematext

Sematext 也是一款付費監控解決方案,計劃收費方案是3.5美分/小時。同樣也支援 Docker 監控,還包括對容器級事件的監測(停止、開始等等)和管理容器產生的日誌。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31516067/viewspace-2687738/,如需轉載,請註明出處,否則將追究法律責任。

相關文章