docker輕量級監控-sysdig

sysdig

Sysdig = system(系統)+dig(挖掘)。Sysdig 是一個開源系統發掘工具,用於系統級別的勘察和排障,可以把它看作一系列Linux系統工具的組合,主要包括:

strace:追蹤某個進程產生和接收的系統調用。

tcpdump:分析網路數據,監控原始網路通訊。

lsof: list opened files, 列出打開的文件。

top:監控系統性能工具。

htop :互動式的進程瀏覽器,可以用來替換 top 命令。

iftop :主要用來顯示本機網路流量情況及各相互通訊的流量集合。

lua:一個小巧的腳本語言。該語言的設計目的是為了嵌入應用程式中,從而為應用程式提供靈活的擴展和訂製功能。

[root@Prometheus ~]# docker container 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
* Setting up /usr/src links from host
* Unloading sysdig-probe, if present
* Running dkms install for sysdig

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
make -j4 KERNELRELEASE=3.10.0-1127.el7.x86_64 -C /lib/modules/3.10.0-1127.el7.x86_64/build M=/var/lib/dkms/sysdig/0.27.1/build...
cleaning build area...

DKMS: build completed.

sysdig-probe.ko.xz:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/3.10.0-1127.el7.x86_64/kernel/extra/
mkdir: cannot create directory '/lib/modules/3.10.0-1127.el7.x86_64/kernel/extra': Read-only file system
cp: cannot create regular file '/lib/modules/3.10.0-1127.el7.x86_64/kernel/extra/sysdig-probe.ko.xz': No such file or directory

depmod...

DKMS: install completed.
* Trying to load a dkms sysdig-probe, if present
sysdig-probe found and loaded in dkms (xz)
root@a9c3d6cc325c:/# csysdig

sysdig容器是以privileged方式運行,而且會讀取作業系統 /dev,/proc等數據,這是為了獲取足夠的系統資訊,啟動後, 通過 docker container exec -it sysdig bash 進入容器 執行csysdig命令,將以交互方式啟動sysdig  

 

//下載插件失敗後可以運行下邊的命令,重新下載

sysdig-probe-loader