用 Weave Scope 監控叢集 - 每天5分鐘玩轉 Docker 容器技術(175)

jj1130050965發表於2020-12-09

用 Weave Scope 監控叢集 - 每天5分鐘玩轉 Docker 容器技術(175)

原創 CloudMan CloudMan 2018-06-01

第175篇

用 Weave Scope 監控叢集

建立 Kubernetes 叢集並部署容器化應用只是第一步。一旦叢集執行起來,我們需要確保一起正常,所有必要元件就位並各司其職,有足夠的資源滿足應用的需求。Kubernetes 是一個複雜系統,運維團隊需要有一套工具幫助他們獲知叢集的實時狀態,併為故障排查提供及時和準確的資料支援。

本章重點討論 Kubernetes 常用的監控方案,下一章會討論日誌管理。

Weave Scope

Weave Scope 是 Docker 和 Kubernetes 視覺化監控工具。Scope 提供了至上而下的叢集基礎設施和應用的完整檢視,使用者可以輕鬆對分散式的容器化應用進行實時監控和問題診斷。

安裝 Scope

安裝 Scope 的方法很簡單,執行如下命令:

kubectl apply --namespace kube-system -f "https://cloud.weave.works/k8s/scope.yaml?k8s-version=$(kubectl version | base64 | tr -d '\n')"

部署成功後,有如下相關元件:

  1. DaemonSet weave-scope-agent,叢集每個節點上都會執行的 scope agent 程式,負責收集資料。

  2. Deployment weave-scope-app,scope 應用,從 agent 獲取資料,通過 Web UI 展示並與使用者互動。

  3. Service weave-scope-app,預設是 ClusterIP 型別,為了方便已通過 kubectl edit 修改為 NodePort

使用 Scope

瀏覽器訪問 http://192.168.56.106:30693/,Scope 預設顯示當前所有的 Controller(Deployment、DaemonSet 等)。

拓撲結構

Scope 會自動構建應用和叢集的邏輯拓撲。比如點選頂部 PODS,會顯示所有 Pod 以及 Pod 之間的依賴關係。

點選 HOSTS,會顯示各個節點之間的關係。

實時資源監控

可以在 Scope 中檢視資源的 CPU 和記憶體使用情況。

支援的資源有 Host、Pod 和 Container。

線上操作

Scope 還提供了便捷的線上操作功能,比如選中某個 Host,點選 >_ 按鈕可以直接在瀏覽器中開啟節點的命令列終端:

點選 Deployment 的 + 可以執行 Scale Up 操作:

可以檢視 Pod 的日誌:

可以 attach、restart、stop 容器,以及直接在 Scope 中排查問題:

強大的搜尋功能

Scope 支援關鍵字搜尋和定位資源。

還可以進行條件搜尋,比如查詢和定位 MEMORY > 100M 的 Pod。

Weave Scope 介面極其友好,操作簡潔流暢,更多功能留給大家去探索。

下一節我們學習 Heapster。

書籍:

1.《每天5分鐘玩轉Kubernetes》
https://item.jd.com/26225745440.html(點選“閱讀原文”直達)

2.《每天5分鐘玩轉Docker容器技術》
https://item.jd.com/16936307278.html

3.《每天5分鐘玩轉OpenStack》
https://item.jd.com/12086376.html

相關文章