1. 程式人生 > 實用技巧 >容器監控工具WeaveScope初步安裝,瞭解

容器監控工具WeaveScope初步安裝,瞭解

Weave Scope是Docker和Kubernetes的視覺化和監視工具。它提供了自上而下的應用程式檢視以及整個基礎架構檢視,並允許您實時診斷將分散式容器化應用程式部署到雲提供商時遇到的任何問題。

github開源專案地址: https://github.com/weaveworks/scope

Weave Scope可以監控Kubernetes叢集的一系列資源的狀態、資源使用情況、應用拓撲、還可以直接通過UI介面進行調式檢視日誌等操作

Scope 提供了至上而下的叢集基礎設施和應用的完整檢視,使用者可以輕鬆對分散式的容器化應用進行實時監控和問題診斷,以確保容器應用程式的穩定性和效能,通過檢視容器上下文的度量/標記,以及原資料,在容器內部的程序之間可以輕鬆的確定執行服務消耗最多CPU/記憶體資源的容器

  • 實時瞭解您的Docker容器 選擇您的容器基礎架構的概述,或專注於特定的微服務。輕鬆識別並糾正問題,以確保容器化應用程式的穩定性和效能。
  • 上下文細節和深層連結 檢視容器的上下文指標,標籤和元資料。毫不費力地在容器內部的程序之間導航,以託管執行在可擴充套件,可排序表中的容器。
  • 對於給定的主機或服務,使用最多CPU或記憶體的容器即可輕鬆找到該容器。與容器互動和管理 直接與您的容器進行互動:暫停,重新啟動和停止容器。啟動命令列。所有這些都無需離開示波器瀏覽器視窗。
  • 通過外掛擴充套件和自定義 通過建立範圍外掛,為主機,容器和/或程序新增自定義詳細資訊或互動。或者,僅從其他人已經在GitHub Weaveworks Scope外掛組織中撰寫的內容中進行選擇。

Weave Scope由App和Probe兩部分組成

  • Probe負責收集容器和宿主的資訊,併發送給App
  • App負責處理這些資訊,並生成相應的報告,並以互動介面的形式展示

安裝與執行

由於我用的是Docker,這裡主要介紹這個工具在Docker上的使用。
對於WeaveScope的安裝相當簡單,只要三行命令就可以了。官方的文件中是這樣命令

sudo curl -L git.io/scope -o /usr/local/bin/scope
sudo chmod a+x /usr/local/bin/scope
scope launch

但是經過本人的實驗,這個命令存在一些坑。第一個下載命令我下載下來的版本有問題,執行時會報錯。第三個執行命令只是最基本的,不能很好的滿足我的需求。
所以經過我的探索我建議使用如下命令

sudo curl -L https://github.com/weaveworks/scope/releases/download/latest_release/scope -o /usr/local/bin/scope
sudo chmod a+x /usr/local/bin/scope
scope launch -app.basicAuth -app.basicAuth.password 123456 -app.basicAuth.username user -probe.basicAuth -probe.basicAuth.password 123456 -probe.basicAuth.username user
  • 第一個下載命令換成從它官方的github上下載最新版本。
  • 第二個命令只是加許可權都一樣沒啥區別。
  • 第三個執行命令是有很多道道的,官方的命令是最基本的執行。我改進版的是可以支援使用者密碼登入的功能,因為畢竟容器的監控我們不希望任何人都可以看到的。這個東西我也是搜了很久在官方的issues中找到了答案

scope launch可以這樣使用scope launch {OPTIONS} {PEERS},scope help命令可以看到具體的{OPTIONS} {PEERS}。裡面的東西很多,包括很多基礎的設定,使用者名稱和密碼登入、埠設定等都可以通過這裡來設定

完整安裝步驟展示:

~ # curl -L https://github.com/weaveworks/scope/releases/download/latest_release/scope -o /usr/local/bin/scope
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   629  100   629    0     0      9      0  0:01:09  0:01:04  0:00:05   147
100 11664  100 11664    0     0    178      0  0:01:05  0:01:05 --:--:-- 25805

~ # chmod a+x /usr/local/bin/scope

~ # scope launch -app.basicAuth -app.basicAuth.password 123456 -app.basicAuth.username user -probe.basicAuth -probe.basicAuth.password 123456 -probe.basicAuth.username user
Unable to find image 'weaveworks/scope:1.13.1' locally
1.13.1: Pulling from weaveworks/scope
c9b1b535fdd9: Pull complete 
550073704c23: Pull complete 
8738e5bbaf1d: Pull complete 
0a8826d26027: Pull complete 
387c1aa951b4: Pull complete 
e72d45461bb9: Pull complete 
75cc44b65e98: Pull complete 
11f7584a6ade: Pull complete 
a5aa3ebbe1c2: Pull complete 
7cdbc028c8d2: Pull complete 
Digest: sha256:4342f1c799aba244b975dcf12317eb11858f9879a3699818e2bf4c37887584dc
Status: Downloaded newer image for weaveworks/scope:1.13.1
22d8d2bd5cf22bf75708e8f2ad5dfde51816d9fb51999c49fdac7f987ec5cc97
Scope probe started
Weave Scope is listening at the following URL(s):
  * http://192.168.1.1:4040/
  * http://192.168.0.253:4040/
  * http://172.20.0.1:4040/
  * http://172.19.0.1:4040/

使用 Scope

成功啟動scope後,可以在瀏覽器中方法http://ip:4040,如果埠沒有修改預設是4040。之後輸入使用者名稱和密碼進入監控首頁

實時資源監控,可以在Scope中檢視資源的CPU和記憶體使用情況,並且支援HOST、Pod和Container

一般我們可以點選Container檢視容器的情況,這裡一般會列出你自己的容器和weave自帶的容器,通過名字可以區別。點選相應容器可以對它進行線上bash操作,或者重啟,暫停,關閉容器。

點選Hosts按鈕,可以看到各個節點之間的關係,可以對自己的主機進行監控和操作,當然也可以線上bash。

點選by image可以看到自己現在docker中所有的映象。