Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和WeaveScope)

一、Docker的監(jiān)控

Docker自帶的監(jiān)控命令

簡(jiǎn)單命令介紹
ps
docker container ps 是我們?cè)缫咽煜さ拿盍?,方便我們查看?dāng)前運(yùn)行的容器。新版的 Docker 提供了一個(gè)新命令 docker container ls,其作用和用法與 docker container ps 完全一樣。不過 ls 含義可能比 ps 更準(zhǔn)確,所以更推薦使用。

汕尾網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)建站從2013年開始到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。

top
如果想知道某個(gè)容器中運(yùn)行了哪些進(jìn)程,可以執(zhí)行 docker container top [container] 命令。命令后面還可以跟上 Linux 操作系統(tǒng) ps 命令的參數(shù)顯示特定的信息,比如 -au。

stats
docker container stats 用于顯示每個(gè)容器各種資源的使用情況。默認(rèn)會(huì)顯示一個(gè)實(shí)時(shí)變化的列表,展示每個(gè)容器的 CPU 使用率,內(nèi)存使用量和可用量。注意:容器啟動(dòng)時(shí)如果沒有特別指定內(nèi)存 limit,stats 命令會(huì)顯示 host 的內(nèi)存總量,但這并不意味著每個(gè) container 都能使用到這么多的內(nèi)存。

除此之外 docker container stats 命令還會(huì)顯示容器網(wǎng)絡(luò)和磁盤的 IO 數(shù)據(jù)。默認(rèn)的輸出有個(gè)缺點(diǎn),顯示的是容器 ID 而非名字。我們可以在 stats 命令后面指定容器的名稱只顯示某些容器的數(shù)據(jù)。比如 docker container stats sysdig weave。

命令執(zhí)行

1.ps

[root@docker01 ~]# docker ps
//查看容器信息 

Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和Weave Scope)

2.top

[root@docker01 ~]# docker top 容器名稱
[root@docker01 ~]# docker top wordpress_wordpress_1 
//查看容器中運(yùn)行的進(jìn)程信息,支持 ps 命令參數(shù)。 

Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和Weave Scope)

3.stats

[root@docker01 ~]# docker stats wordpress_wordpress_1 
//實(shí)時(shí)查看容器統(tǒng)計(jì)信息,查看容器的CPU利用率、內(nèi)存的使用量以及可用內(nèi)存總量。 

Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和Weave Scope)
默認(rèn)會(huì)顯示一個(gè)實(shí)時(shí)變化的列表,展示每個(gè)容器的CPU使用率,內(nèi)存使用量和可用量

 注意:容器啟動(dòng)時(shí)如果沒有特別指定內(nèi)存limit,stats命令會(huì)顯示host的內(nèi)存總量,但這并不意味著每個(gè)container都能使用到這么多的內(nèi)存
  除此之外docker container stats命令還會(huì)顯示容器網(wǎng)絡(luò)和磁盤的IO數(shù)據(jù)
  默認(rèn)的輸出有個(gè)缺點(diǎn),顯示的是容器ID而非名字。我們可以在stats命令后面指定容器的名稱只顯示某些容器的數(shù)據(jù)。比如docker container stats test1 test2 
[root@docker01 ~]# docker logs 容器名稱
[root@docker01 ~]# docker logs wordpress_wordpress_1 
//查看容器的日志

二、用 Sysdig 監(jiān)控服務(wù)器

[root@docker01 ~]# docker pull sysdig
//下載sysdig鏡像 

通過sysdig運(yùn)行容器

[root@docker01 ~]# docker run -it --rm --name sysdig --privileged=true --volume=/var/run/docker.sock:/host/var/run/docker.sock  --volume=/dev:/host/dev --volume=/proc:/host/proc:ro  --volume=/boot:/host/boot:ro  --volume=/lib/modules:/host/lib/modules:ro --volume=/usr:/host/usr:ro  sysdig/sysdig 
 可以看到,sysdig容器是以privileged方式運(yùn)行,而且會(huì)讀取操作系統(tǒng) /dev,/proc等數(shù)據(jù),這是為了獲取足夠的系統(tǒng)信息
  啟動(dòng)后,通過docker container exec -it sysdig bash進(jìn)入容器,執(zhí)行csysdig命令,將以交互方式啟動(dòng)sysdig 

下載插件失敗后可以運(yùn)行下邊命令,重新下載

root@10ccab83a512:/# system-sysdig-loader
//下載插件失敗后可以運(yùn)行下邊命令,重新下載 

下載成功后,可以運(yùn)行sysdig命令,查看監(jiān)控項(xiàng)

root@10ccab83a512:/# sysdig
//運(yùn)行sysdig命令,查看監(jiān)控項(xiàng),它會(huì)動(dòng)態(tài)查看 

使用 csysdig

csysdig 就是運(yùn) ncurses 庫的用戶界面的 sysdig 軟件包,Ncurses 是一個(gè)能提供功能鍵定義 ( 快捷鍵 ), 屏幕繪制以及基于文本終端的圖形互動(dòng)功能的動(dòng)態(tài)庫。在 sysdig 軟件包里還提供了一個(gè)工具 csysdig,該工具執(zhí)行后,運(yùn)行界面和 top 命令類似。csysdig 工作界面如圖 5。

Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和Weave Scope)

運(yùn)行csysdig命令,查看監(jiān)控項(xiàng)
root@10ccab83a512:/# csysdig
//運(yùn)行csysdig命令,圖形化界面查看監(jiān)控項(xiàng),它會(huì)動(dòng)態(tài)查看 
csysdig 使用如下快捷鍵:

P:暫停屏幕輸出信息

Enter:進(jìn)入當(dāng)前突出顯示的條目。

Ctrl+F:列表搜索。

F1- 幫助信息

F2- 顯示視圖選擇器。這將讓你切換到另一個(gè)視圖。

F4- 使用過濾器

F5- 查看 IO 輸出信息

F7 顯示幫助頁面當(dāng)前顯示的視圖。

F8 打開視圖的操作面板。

F9,打開列排序面板。

Q 放棄退出。

Arrows, PgUP, PgDn, Home, End:圖標(biāo)上下左右的移動(dòng)控制。

sysdig按不同的View來監(jiān)控不同類型的資源,點(diǎn)擊底部Views菜單(或者按F2),顯示View選擇列表

我們將光標(biāo)移到Containers這一項(xiàng),界面右邊立即顯示出此view的功能介紹,回車或者雙擊Containers,進(jìn)入容器監(jiān)控界面

sysdig會(huì)顯示該host所有的容器的實(shí)時(shí)數(shù)據(jù),每?jī)擅胨⑿乱淮巍8髁袛?shù)據(jù)的含義也是自解釋的,如果不清楚,可以點(diǎn)一下底部的Legend,如果想按某一列排序,比如按使用的內(nèi)存量,點(diǎn)一下列頭VIRT

如果想查看某個(gè)容器的進(jìn)程,將光標(biāo)移動(dòng)到目標(biāo)容器,然后回車或者雙擊

還可以繼續(xù)雙擊查看進(jìn)程中的線程

返回上一級(jí),按退格鍵即可

sysdig的交互功能很強(qiáng),如果界面顯示的條目很多,可以點(diǎn)擊底部Search菜單,然后輸入關(guān)鍵字進(jìn)行查找

如果覺得界面刷新太快,看不清楚關(guān)注的信息,可以點(diǎn)擊底部的Pause菜單

sysdig的特點(diǎn):

(1)監(jiān)控信息全,包括Linux操作系統(tǒng)和容器
(2)界面交互性強(qiáng)

其缺點(diǎn)是sysdig顯示的是實(shí)時(shí)數(shù)據(jù),看不到變化和趨勢(shì)。而且是命令行操作方式,需要ssh到host上執(zhí)行,不是太方便

總結(jié)
這些示例僅僅是展示了 Sysdig 能力的冰山一角,在目前的其他系統(tǒng)監(jiān)控類工具中,筆者還沒有看到像 Sysdig 這樣功能如此強(qiáng)大、而又對(duì)容器支持這樣好的。所以,對(duì)于經(jīng)常使用服務(wù)器特別是 Docker 容器作為產(chǎn)品運(yùn)行方式的用戶,這是一款值得使用的系統(tǒng)工具。

三、Docker監(jiān)控方案之Weave Scope

Weave Scope 的最大特點(diǎn)是會(huì)自動(dòng)生成一張 Docker 容器地圖,讓我們能夠直觀地理解、監(jiān)控和控制容器。千言萬語不及一張圖,先感受一下。
Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和Weave Scope)

[root@docker01 ~]# docker pull scope
//下載scope鏡像 

執(zhí)行如下腳本安裝運(yùn)行Weave Scope

[root@docker01 ~]# curl -L git.io/scope -o /usr/local/bin/scope
[root@docker01 ~]# chmod +x /usr/local/bin/scope
[root@docker01 ~]# scope launch 

Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和Weave Scope)

瀏覽器訪問http://192.168.1.11:4040/

Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和Weave Scope)

然后就可以更好的監(jiān)控,管理docker中的容器了

開啟第docker02,加入docker01監(jiān)控項(xiàng)

docker01

刪除weavescope容器

[root@docker01 ~]# docker stop weavescope 
weavescope
[root@docker01 ~]# docker rm weavescope 
weavescope 

docker02

[root@docker01 ~]# docker pull scope
//下載scope鏡像 
[root@docker01 ~]# curl -L git.io/scope -o /usr/local/bin/scope
[root@docker01 ~]# chmod +x /usr/local/bin/scope
[root@docker01 ~]# scope launch 

docker01

[root@docker01 ~]# scope launch 192.168.1.11 192.168.1.13 

docker02

[root@docker02 ~]# scope launch 192.168.1.13 192.168.1.11 

瀏覽器訪問http://192.168.1.11:4040/

Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和Weave Scope)

瀏覽器訪問http://192.168.1.13:4040/也是可以的

Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和Weave Scope)

網(wǎng)頁名稱:Docker的監(jiān)控(簡(jiǎn)單部署Sysdig和WeaveScope)
標(biāo)題路徑:http://bm7419.com/article38/iihgpp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)網(wǎng)站建設(shè)、全網(wǎng)營(yíng)銷推廣、App開發(fā)商城網(wǎng)站、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計(jì)