当前位置:首页 > 奇闻趣事

pgft 系统监察:在Ubuntu上安装开源Sysdig

对于系统管理员和开发人员来说,一个优秀的流程最终工具可能会给他们的工作带来很大的帮助。当然,你可能还需要监控原来的网络通讯,最后打开的文件等。,但是一个开源工具可能更适合你的实际需求,因为它不仅是免费的,而且开源代码会让你更容易使用,比如Sysdig。

Sysdig不仅可以分析Linux系统的“实时”状态,还可以将其转储为离线文件,供离线查看。

简而言之,Sysdig是一个监控服务器系统级别的工具。本文将逐步向您展示如何在Ubuntu 15和CentOS 7中安装开源Sysdig。

1.在Ubuntu 15中安装Sysdig

众所周知,Sysdig会更新最新的Debian、RHEL和容器版本。因此,我们将使用apt命令安装Sysdig,当我们第一次需要使用以下curl命令通过Draios通过root用户设置apt时。(下图来自:Linoxide)

# curl-s https://S3 . Amazon AWS . com/download . DRAIOS . com/DRAIOS-GPG-key . public | apt-key add-

# curl-s-o/etc/apt/sources . list . d/draios . list http://download.draios.com/stable/deb/draios.list

现在,您需要通过执行以下命令来更新包列表

# apt-get更新

如上所示,系统更新完成后,您需要使用以下命令安装软件包头的内核。

# apt-get-y install Linux-headers- $(uname-r)

现在可以用下面的命令在Ubuntu上安装sisdig。

# apt-get -y安装sysdig

第二,在CentOS 7中安装sisdig

这个安装过程类似于之前在Ubuntu服务器上安装sisdig。您需要重复相同的步骤来设置yum库。

运行以下命令以使用rpm工具。

# rpm -导入https://S3 . Amazon AWS . com/download . DRAIOS . com/DRAIOS-GPG-key . public

然后下载Draios库,并在您的CentOS 7中应用yum

# curl-s-o/etc/yum . repo . d/draios . repo http://download.draios.com/stable/rpm/draios.repo

更新软件包并开始安装sisdig。

# yum更新

要下载DKMS(动态核心模块技术)安装包,需要EPEL库,因此需要运行以下命令。

# yum -y安装epel-发布

要安装sysdig检测模块,首先安装内核头,然后使用以下命令在服务器端安装sysdig包。

# yum install kernel-dev- $(uname-r)

# yum安装sysdig

第三,使用sysdig

成功安装sysdig后,我们将列出一些最流行的例子。使用sysdig最简单的方法就是直接调用sysdig,不需要其他任何东西。如下:

# sysdig

默认情况下,sysdig将捕获数量、时间、CPU数量、PID、类型和详细参数。

大量的输出可能会令人讨厌,而且不是所有的信息都会有用,所以可以通过-w保存所需的信息。

# sysdig -w result.dump

运行-r调出您保存的文件。也可以用CTRL+C停止sysdig命令..

# sysdig -r result.dump

Sisdig过滤器

对于您需要的特定信息,您需要使用sisdig过滤器,并使用以下命令来查找需要过滤掉的信息列表。

# sysdig -l

-

字段类别:fd

fd.num标识文件deor的唯一编号。

对于TCP/UDP FDs,客户端端口。

对于TCP/UDP FDs,远程协议。

-

字段类别:流程

proc.pid生成事件的进程的id。

proc.name生成

事件。

proc.args启动proc时命令行传递的参数

ess生成事件。

proc.env生成事件的进程的环境变量。

proc.cmdline全过程命令行,即proc.name + proc.args。

proc.exeline全过程命令行,以exe作为第一个参数,即pro

c.exe+进程参数

proc.cwd事件的当前工作目录。

proc.duration自进程启动以来的纳秒数。

proc.fdlimit进程可以打开的最大FDs数。

proc . FD usage pr的未结FDs和最大可用FDs之间的比率

奥西。

thread.pfminor自线程启动以来的次要页面错误数。

如果生成事件的线程是线程中的主线程,则为“真”

e进程。

因此,您可以使用sisdig过滤器来过滤大量的信息,并获得您需要的内容。下面是一个“MySQLD”的例子。

# sysdig-r result . dump proc . name = MySQL d

140630 02:20:30.848284977 2 mysqld(2899)io _ getevents

140632 02:20:30.848289674 2 MySQL(2899)>switch next = 2894(MySQL d)pgft _ maj = 0 pgft _ min = 1 VM _ size = 841372 VM _ RSS = 85900 VM _ swap = 0

140633 02:20:30.848292784 2 MySQL d(2894)io _ getevents

140635 02:20:30.848297142 2 MySQL(2894)>switch next = 2901(MySQL d)pgft _ maj = 0 pgft _ min = 4 VM _ size = 841372 VM _ RSS = 85900 VM _ swap = 0

140636 02:20:30.848300414 2 mysqld(2901)io _ getevents

140638 02:20:30.848307954 2 MySQL(2901)>switch next = 0 pgft _ maj = 0 pgft _ min = 1 VM _ size = 841372 VM _ RSS = 85900 VM _ swap = 0

140640 02:20:30.849340499 1 mysqld(2900)io _ getevents

140642 02:20:30.849348907 1 mysqld(2900)>switch next = 2895(MySQL d)pgft _ maj = 0 pgft _ min = 1 VM _ size = 841372 VM _ RSS = 85900 VM _ swap = 0

140643 02:20:30.849357633 1 MySQL d(2895)io _ getevents

140645 02:20:30.849362258 1 MySQL(2895)>switch next=26329(已调谐)pgft _ maj = 0 pgft _ min = 1 VM _ size = 841372 VM _ RSS = 85900 VM _ swap = 0

140702 02:20:30.995763869 1 MySQL d(2898)io _ getevents

140704 02:20:30.995777232 1 mysqld(2898)>switch next = 2893(MySQL d)pgft _ maj = 0 pgft _ min = 1 VM _ size = 841372 VM _ RSS = 85900 VM _ swap = 0

140705 02:20:30.995782563 1 MySQL d(2893)io _ getevents

140707 02:20:30.995795720 1 mysqld(2893)>switch next = 0 pgft _ maj = 0 pgft _ min = 3 VM _ size = 841372 VM _ RSS = 85900 VM _ swap = 0

140840 02:20:31.204456822 1 MySQL LD(2933)FUTEX addr = 7 f 1453334d 50 op = 129(FUTEX _ PRIVATE _ FLAG | FUTEX _ WAKE)val = 1

140842 02:20:31.204464336 1 MySQL LD(2933)FUTEX addr = 7 f 1453334 D8C op = 393(FUTEX _ CLOCK _ REALY | FUTEX _ PRIVATE _ FLAG | FUTEX _ WAIT _ BITSET)val = 12395

140844 02:20:31.204569972 1 mysqld(2933)>switch next = 3920 pgft _ maj = 0 pgft _ min = 1 VM _ size = 841372 VM _ RSS = 85900 VM _ swap = 0

140875 02:20:31.348405663 2 mysqld(2897)io _ getevents

同时,您可以使用proc.name筛选器来获取特定流程的所有事件。例如,以下内容过滤了许多包含ssh的进程。

sysdig凿的应用

Sysdig凿子有自己的脚本语言来扩展功能。凿子可以在LUA书写,这是一种通用语言,所以更容易使用。

首先,您可以使用-cl命令列出所有可用的凿子。

# sysdig -cl

如果要运行凿子,可以使用-c命令来标记和指定凿子名称。当然你跑凿的时候还是可以用滤镜的。

# sysdig -c topfiles_bytes

结论:总的来说,sysdig在故障排除和系统监控领域占有一席之地。这里只是一个简单的安装例子,sysdig中的巨大功能需要自己去探索。赶紧用。

PS: sysdig的GitHub网站在这里:https://github.com/draios/sysdig

1.《pgft 系统监察:在Ubuntu上安装开源Sysdig》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《pgft 系统监察:在Ubuntu上安装开源Sysdig》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/guonei/1130610.html

上一篇

典成家居 家具是做实木定制好还是买成品好

下一篇

戏水玩具 妈妈们,世界上最好玩的洗澡玩具大盘点!

c盘搬家 好用的符号链接,利用mklink命令给C盘搬家

c盘搬家 好用的符号链接,利用mklink命令给C盘搬家

最近,边肖在击败WebDAV时,在Windiws上发现了一个有趣且易于使用的东西:符号链接。 熟悉符号链接 Linux下的符号链接相信很多朋友都很熟悉,但是Windows上的符号链接却很少被提及,比如边肖。Windows系统上的符号链接称为“NTFS符号链接”,是一种指向NTFS文件系统中另...

mklink 好用的符号链接,利用mklink命令给C盘搬家

mklink 好用的符号链接,利用mklink命令给C盘搬家

最近,边肖在击败WebDAV时,在Windiws上发现了一个有趣且易于使用的东西:符号链接。 熟悉符号链接 Linux下的符号链接相信很多朋友都很熟悉,但是Windows上的符号链接却很少被提及,比如边肖。Windows系统上的符号链接称为“NTFS符号链接”,是一种指向NTFS文件系统中另...

测试网速命令 教你Linux中使用Speedtest CLI测试你的网速

在本文中,我们将使用名为speedtest-cli的命令行工具来测试网络速度。这是一个用Python语言编写的工具,系统通过向speedtest.net网站上传和下载数据来测试带宽。 本文包含了一个可以复制并向左滑动的长代码,希望对大家有帮助! 环境 Centos7 安装speedtest-...

我的世界一键房子指令 我的世界:原来用命令方块造房这么简单,就是操作有点让人窒息

  • 我的世界一键房子指令 我的世界:原来用命令方块造房这么简单,就是操作有点让人窒息
  • 我的世界一键房子指令 我的世界:原来用命令方块造房这么简单,就是操作有点让人窒息
  • 我的世界一键房子指令 我的世界:原来用命令方块造房这么简单,就是操作有点让人窒息
计算机软件的确切含义 进程是进行中的程序,是操作系统的核心概念

计算机软件的确切含义 进程是进行中的程序,是操作系统的核心概念

汇编语言到机器语言(目标程序)、汇编程序、翻译功能程序。 从高级语言到编译器到机器语言,是最接近人类自然语言和数学公式的编程语言。 进程是一个正在进行的程序,这是操作系统的核心概念。 在Windows操作系统下,按Ctrl+Alt+Delete打开任务管理器,查看进程和所有应用。 计算机软件...