監控利器sysdig&Weave Scope

監控利器sysdig(實時查看)

sysdig 是一個輕量級的系統監控工具,同時它還原生支持容器。經過 sysdig 咱們能夠近距離觀察 linux 操做系統和容器的行爲。 Linux 上有不少經常使用的監控工具,好比 strace,tcpdump,htop, iftop,lsof ...... 而 sysdig 則是將這些工具的功能集成到一個工具中,而且提供一個友好統一的操做界面。linux

//安裝和運行sysdig的最簡單方法就是運行docker容器,命令爲:[root@sqm-docker01 ~]# docker run -it --rm --name=sysdig --privileged=true -v /var/run/docker.sock:/host/var/run/docker.sock -v /dev:/host/dev -v /proc:/host/proc:ro -v /boot:/host/boot:ro -v /lib/modules:/host/lib/module:ro -v /usr:/host/usr:ro sysdig/sysdignginx

//若是提示下載失敗,運行下邊這條命令:
sysdig-probe-loader

監控利器sysdig&Weave Scope

能夠看到,sysdig 容器是以 privileged 方式運行,並且會讀取操做系統 /dev,/proc 等數據,這是爲了獲取足夠的系統信息。 啓動後,經過 docker container exec -it sysdig bash 進入容器。git

//成功以後執行 csysdig 命令,將以交互方式啓動 sysdig:
root@971f955c2f7b:/# csysdig

監控利器sysdig&Weave Scope

進入界面後點擊「F2(Views)」,而後雙擊「Containers」。
監控利器sysdig&Weave Scopegithub

該界面能夠實時監控容器的各類信息:
監控利器sysdig&Weave Scopedocker

若是想看某個容器運行的進程,好比 nginx,將光標移到目標容器,而後回車或者雙擊。安全

還能夠繼續雙擊查看進程中的線程。bash

返回上一級,按退格鍵便可。 sysdig 的交互功能很強,若是界面顯示的條目不少,能夠點擊底部 Search菜單,而後輸入關鍵字進行查找。以下圖,關鍵字爲 service。ssh

若是以爲界面刷新太快,看不清楚關注的信息,能夠點擊底部 Pause 菜單。 sysdig 的特色以下: 監控信息全,包括 Linux 操做系統和容器。 界面交互性強。tcp

不過 sysdig 顯示的是實時數據,看不到變化和趨勢。並且是命令行操做方式,須要 ssh 到 Host 上執行,會帶來一些不便。ide

2, 監控利器Weave Scope:

Weave Scope 的最大特色是會自動生成一張 Docker 容器地圖,讓咱們可以直觀地理解、監控和控制容器。
1,安裝scope:

在github上下載源代碼:
[root@sqm-docker01 ~]# wget https://github.com/weaveworks/scope/archive/v1.11.0.tar.gz

監控利器sysdig&Weave Scope

[root@sqm-docker01 ~]# cd /usr/local/bin/scope-1.11.0/
[root@sqm-docker01 ~]# cd /usr/local/bin/scope-1.11.0/
[root@sqm-docker01 scope-1.11.0]# mv scope  /usr/local/bin/
[root@sqm-docker01 scope-1.11.0]# chmod +x /usr/local/bin/scope

[root@sqm-docker01 scope-1.11.0]# scope launch
監控利器sysdig&Weave Scope
監控利器sysdig&Weave Scope

若是如今有多臺dockerhost時,又該如何部署。

(1)下載weave/scope鏡像
[root@sqm-docker02 ~]# docker pull weaveworks/scope

(2)下載v1.11.0源碼包,並進行解壓(該軟件包是支持下面的執行命令)

[root@sqm-docker02 ~]# tar zxf v1.11.0.tar.gz 
[root@sqm-docker02 ~]# cd scope-1.11.0/
[root@sqm-docker02 scope-1.11.0]# cp scope  /usr/local/bin/
[root@sqm-docker02 scope-1.11.0]# chmod +x /usr/local/bin/scope

(3)接下來在docker01上添加監控主機:
[root@sqm-docker01 scope-1.11.0]# scope launch 172.16.1.30 172.16.1.31 #注意本機ip在前,其餘主機在後

docker02上相同的操做:
[root@sqm-docker02 scope-1.11.0]# scope  launch 172.16.1.31 172.16.1.30

監控利器sysdig&Weave Scope

訪問網頁:(隨便其中一臺主機的地址都是能夠的)
監控利器sysdig&Weave Scope
監控利器sysdig&Weave Scope
發現能夠分別監控到兩臺docker主機上所運行的容器。

scope監控針對的是容器的信息,它依賴於防火牆,因此沒法實現遠程控制,且對用戶沒有限制,安全係數較低。

———————— 本文至此結束,感謝閱讀 ————————

相關文章
相關標籤/搜索