关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » HTML5 »监控 Linux 容器性能的命令行神器

    监控 Linux 容器性能的命令行神器

    2015-05-11 00:00:00 出处:linux.cn
    分享

    ctop是一个新的基于命令行的工具,它可用于在容器层级监控进程。容器通过利用控制器组(cgroup)的资源管理功能,提供了操作系统层级的虚拟化环境。该工具从cgroup收集与内存、CPU、块输入输出的相关数据,以及拥有者、开机时间等元数据,并以人性化的格式呈现给用户,这样就可以快速对系统健康状况进行评估。基于所获得的数据,它可以尝试推测下层的容器技术。ctop也有助于在低内存环境中检测出谁在消耗大量的内存。

    功能

    ctop的一些功能如下:

    收集CPU、内存和块输入输出的度量值 收集与拥有者、容器技术和任务统计相关的信息 通过任意栏对信息排序 以树状视图显示信息 折叠/展开cgroup树 选择并跟踪cgroup/容器 选择显示数据刷新的时间窗口 暂停刷新数据 检测基于systemd、Docker和LXC的容器 基于Docker和LXC的容器的高级特性 打开/连接shell以进行深度诊断 停止/杀死容器类型

    安装

    ctop是由Python写成的,因此,除了需要Python 2.6或其更高版本外(带有内建的光标支持),别无其它外部依赖。推荐使用Python的pip进行安装,假如还没有安装pip,请先安装,然后使用pip安装ctop。

    注意:本文样例来自Ubuntu(14.10)系统

    $ sudo apt-get install python-pip

    使用pip安装ctop:

    poornima@poornima-Lenovo:~$ sudo pip install ctop
    
    [sudo] password for poornima:
    
    Downloading/unpacking ctop
    
    Downloading ctop-0.4.0.tar.gz
    
    Running setup.py (path:/tmp/pip_build_root/ctop/setup.py) egg_info for package ctop
    
    Installing collected packages: ctop
    
    Running setup.py install for ctop
    
    changing mode of build/scripts-2.7/ctop from 644 to 755
    
    changing mode of /usr/local/bin/ctop to 755
    
    Successfully installed ctop
    
    Cleaning up...

    假如不选择使用pip安装,你也可以使用wget直接从github安装:

    poornima@poornima-Lenovo:~$ wget https://raw.githubusercontent.com/yadutaf/ctop/master/cgroup_top.py -O ctop
    
    --2015-04-29 19:32:53-- https://raw.githubusercontent.com/yadutaf/ctop/master/cgroup_top.py
    
    Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 199.27.78.133
    
    Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|199.27.78.133|:443... connected.
    
    HTTP request sent, awaiting response... 200 OK Length: 27314 (27K) [text/plain]
    
    Saving to: ctop
    
    100%[======================================>] 27,314 --.-K/s in 0s
    
    2015-04-29 19:32:59 (61.0 MB/s) - ctop saved [27314/27314]
    poornima@poornima-Lenovo:~$ chmod +x ctop

    假如cgroup-bin包没有安装,你可能会碰到一个错误消息,你可以通过安装需要的包来解决。

    poornima@poornima-Lenovo:~$ ./ctop
    
    [ERROR] Failed to locate cgroup mountpoints.
    
    poornima@poornima-Lenovo:~$ sudo apt-get install cgroup-bin

    下面是ctop的输出样例:

    监控 Linux 容器性能的命令行神器

    ctop屏幕

    用法选项

    ctop [--tree] [--refresh=] [--columns=] [--sort-col=] [--follow=] [--fold=, ...] ctop (-h | --help)

    当你进入ctop屏幕,可使用上(↑)和下(↓)箭头键在容器间导航。点击某个容器就选定了该容器,按q或Ctrl+C退出该容器。

    现在,让我们来看看上面列出的那一堆选项究竟是怎么用的吧。

    -h / –help – 显示帮助信息

    poornima@poornima-Lenovo:~$ ctop -h
    Usage: ctop [options]
    
    Options:
    -h, --help show this help message and exit
    --tree show tree view by default
    --refresh=REFRESH Refresh display every <seconds>
    --follow=FOLLOW Follow cgroup path
    --columns=COLUMNS List of optional columns to display. Always includes
    'name'
    --sort-col=SORT_COL Select column to sort by initially. Can be changed
    dynamically.

    –tree – 显示容器的树形视图

    默认情况下,会显示列表视图

    当你进入ctop窗口,你可以使用F5按钮在树状/列表视图间切换。

    –fold= – 在树形视图中折叠名为 <name> 的 cgroup 路径

    该选项需要与 –tree 选项组合使用。

    例子: ctop –tree –fold=/user.slice

    监控 Linux 容器性能的命令行神器

    ‘ctop –fold’的输出

    在ctop窗口中,使用+/-键来展开或折叠子cgroup。

    注意:在写本文时,pip仓库中还没有最新版的ctop,还不支持命令行的‘–fold’选项

    –follow= – 跟踪/高亮 cgroup 路径

    例子: ctop –follow=/user.slice/user-1000.slice

    正如你在下面屏幕中所见到的那样,带有“/user.slice/user-1000.slice”路径的cgroup被高亮显示,这让用户易于跟踪,就算显示位置变了也一样。

    监控 Linux 容器性能的命令行神器

    ‘ctop –follow’的输出

    你也可以使用‘f’按钮来让高亮的行跟踪选定的容器。默认情况下,跟踪是关闭的。

    –refresh= – 按指定频率刷新显示,默认1秒

    这对于按每用户需求来显示改变刷新率时很有用。使用‘p’按钮可以暂停刷新并选择文本。

    –columns= – 限定只显示选定的列。’name’ 需要是第一个字段,其后跟着其它字段。默认情况下,字段包括:owner, processes,memory, cpu-sys, cpu-user, blkio, cpu-time

    例子: ctop –columns=name,owner,type,memory

    监控 Linux 容器性能的命令行神器

    ‘ctop –column’的输出

    -sort-col= – 按指定的列排序。默认使用 cpu-user 排序

    例子: ctop –sort-col=blkio

    假如有Docker和LXC支持的额外容器,跟踪选项也是可用的:

    press 'a' - 接驳到终端输出
    
    press 'e' - 打开容器中的一个 shell
    
    press 's' - 停止容器 (SIGTERM)
    
    press 'k' - 杀死容器 (SIGKILL)

    目前 Jean-Tiare Le Bigot 还在积极开发 ctop 中,希望我们能在该工具中见到像本地 top 命令一样的特性。

    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    正版 Windows 11产品密钥怎么查找/查看?

    还有3个月,微软将停止 Windows 10 的更新

    Windows 10 终止支持后,企业为何要立即升级?

    Windows 10 将于 2025年10 月终止技术支持,建议迁移到 Windows 11

    Windows 12 发布推迟,微软正全力筹备Windows 11 25H2更新

    Linux 退出 mail的命令是什么

    Linux 提醒 No space left on device,但我的空间看起来还有不少空余呢

    hiberfil.sys文件可以删除吗?了解该文件并手把手教你删除C盘的hiberfil.sys文件

    Window 10和 Windows 11哪个好?答案是:看你自己的需求

    盗版软件成公司里的“隐形炸弹”?老板们的“法务噩梦” 有救了!

    IT头条

    公安部:我国在售汽车搭载的“智驾”系统都不具备“自动驾驶”功能

    02:03

    液冷服务器概念股走强,博汇、润泽等液冷概念股票大涨

    01:17

    亚太地区的 AI 驱动型医疗保健:2025 年及以后的下一步是什么?

    16:30

    智能手机市场风云:iPhone领跑销量榜,华为缺席引争议

    15:43

    大数据算法和“老师傅”经验叠加 智慧化收储粮食尽显“科技范”

    15:17

    技术热点

    商业智能成CIO优先关注点 技术落地方显成效(1)

    用linux安装MySQL时产生问题破解

    JAVA中关于Map的九大问题

    windows 7旗舰版无法使用远程登录如何开启telnet服务

    Android View 事件分发机制详解

    MySQL用户变量的用法

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。