首页 > 系统相关 >Linux系统监控工具-glances

Linux系统监控工具-glances

时间:2023-10-21 15:03:27浏览次数:35  
标签:glances python echo source 系统监控 install Linux 进程

一、glances介绍

glances是一个基于python语言开发,可以为linux或者UNIX性能提供监视和分析性能数据的功能。glances在用户的终端上显示重要的系统信息,并动态的进行更新,让管理员实时掌握系统资源的使用情况,而动态监控并不会消耗大量的系统资源,比如CPU资源,通常消耗小于2%,glances默认每两秒更新一次数据。同时glances还可以将相同的数据捕获到一个文件,便于以后对报告进行分析和图形绘制,支持的文件格式有.csv电子表格格式和和html格式。

glances可以分析系统的:

  • CPU使用率
  • 内存使用率
  • 内核统计信息和运行队列信息
  • 磁盘I/O速度、传输和读/写比率
  • 磁盘适配器
  • 网络I/O速度、传输和读/写比率
  • 页面监控
  • 进程监控-消耗资源最多的进程
  • 计算机信息和系统资源

二、glances安装方式

  1. 源码安装
  2. 基于pip命令安装
  3. 基于epel公网yum源

由于源码安装需要解决大量的依赖包的问题,对于小白同学学习压力较大,所以本文将重点介绍基于yum的安装方法,让大家快速安装,并能及时体验到glances监控的强大和高效。

三、基于epel公网源安装glances

由于glances运行需要python环境,所以我们需要首先安装好python环境,这里我给大家使用的是一个脚本安装python3.7.3,目前的最新版本。

3.1、python3.7.3安装脚本

#!/bin/bash
# 
#Name: 
#Author: zutuanxue_com
#Created Time: 2019/10/1 11:20
#Release: 
#Description:python 3.7.3安装脚本

#变量
source_url="https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz"
source_pkg="Python-3.7.3.tgz"
source_doc="Python-3.7.3"

cpu_count=`egrep "flags" /proc/cpuinfo |wc -l`

#程序
check () {
  [ "$USER" != "root" ]&&echo "need be root so that"&&exit 1
  [ ! -x /usr/bin/wget ]&&echo "not found command: wget"&&exit 1 
}


install_python () {

check

#1、download python source package
if ! (wget $source_url &>/dev/null) ;then
   echo "$source_pkg download fail"
   exit 1
fi
#2、Decompression source package
if [ -f $source_pkg ];then
    tar xf $source_pkg
else
    echo "not found package: $source_pkg"
    exit 1
fi

#3、python install pre
if ! (yum -y install gcc-* openssl-* libffi-devel  curses-devel lm_sensors sqlite-devel &>/dev/null);then
    echo "yum install software package fail"
    exit 1
fi



#4、configure python install env
if [ -d $source_doc ];then
    
 
   #5、python configure
   cd $source_doc
   
   sed -i.bak '212s/#//' Modules/Setup.dist
   sed -i '213s/#//' Modules/Setup.dist
   sed -i '214s/#//' Modules/Setup.dist
   
   echo "python configure...please waiting"
   if ./configure --enable-optimizations --with-openssl=/usr/bin/openssl &>/dev/null ;then
 
           #6、python make 
           echo "python make...please waiting"
           if make -j $cpu_count &>/dev/null ;then
          
                #7、python install
                echo "python install...please waiting"
                if make install & > /dev/null;then
                    echo "$source_doc install success"
                else
                    echo "python make install fail"
                    exit 1
                fi
            else
                echo "python make fail"
                exit 1
            fi
    else
         echo "python configure fail"
         exit 1
    fi
else
   echo "not found $source_doc"
   exit 1
fi


post_install

}

 
#Post-installation settings
post_install () {
#update pip tool
pip3 install --upgrade pip

}


#函数调用

install_python && rm -rf $source_doc

3.2、glances 安装

[root@manager01 ~]# pip install glances
Collecting glances
  Downloading https://files.pythonhosted.org/packages/32/34/72f9202ad5b7ada314507a50b9ab1fb604d2f468b138679e0a4fedeb91fa/Glances-3.1.0.tar.gz (6.7MB)
     |████████████████████████████████| 6.7MB 659kB/s 
Collecting psutil>=5.3.0 (from glances)
  Downloading https://files.pythonhosted.org/packages/1c/ca/5b8c1fe032a458c2c4bcbe509d1401dca9dda35c7fc46b36bb81c2834740/psutil-5.6.3.tar.gz (435kB)
     |████████████████████████████████| 440kB 575kB/s 
Installing collected packages: psutil, glances
  Running setup.py install for psutil ... done
  Running setup.py install for glances ... done
Successfully installed glances-3.1.0 psutil-5.6.3

3.3、温度监控工具安装

[root@manager01 ~]# yum -y install lm_sensors

3.4、epel公网源安装

[root@manager01 ~]# yum install epel* -y
[root@manager01 ~]# yum -y install glances

四、glances监控

4.1、开启glances监控

[root@manager01 ~]# glances

glances_1.png

glances 工作界面的说明 :
在上图 的上部是 CPU 、Load(负载)、Mem(内存使用)、 Swap(交换分区)的使用情况。在上图的中上部是网络接口、Processes(进程)的使用情况。通常包括如下字段:

 %CPU:该进程占用的 CPU 使用率
 %MEM:该进程占用的物理内存和总内存的百分比
 VIRT: 虚拟内存大小
 RES: 进程占用的物理内存值
 PID: 进程 ID 号
 USER: 进程所有者的用户名
 NI: 进程优先级
 S: 进程状态,其中 S 表示休眠,R 表示正在运行,Z 表示僵死状态。
 TIME+: 该进程启动后占用的总的 CPU 时间
 IO_R 和 IO_W: 进程的读写 I/O 速率
 Command: 进程名称

在上图的左侧是网络、磁盘IO、磁盘分区使用情况。 另外 glances 可以使用交互式的方式运行该工具,用户可以使用如下快捷键:

 h : 显示帮助信息
 q : 离开程序退出
 c :按照 CPU 实时负载对系统进程进行排序
 m :按照内存使用状况对系统进程排序
 i:按照 I/O 使用状况对系统进程排序
 p: 按照进程名称排序
 d : 显示磁盘读写状况 
 w : 删除日志文件
 l :显示日志
 s: 显示传感器信息
 f : 显示系统信息
 1 :轮流显示每个 CPU 内核的使用情况(次选项仅仅使用在多核 CPU 系统)

4.2、glances 使用方法

 glances 是一个命令行工具包括如下命令选项:
 -b:显示网络连接速度 Byte/ 秒
 -B @IP|host :绑定服务器端 IP 地址或者主机名称
 -c @IP|host:连接 glances 服务器端
 -C file:设置配置文件默认是 /etc/glances/glances.conf 
 -d:关闭磁盘 I/O 模块
 -e:显示传感器温度
 -f file:设置输出文件(格式是 HTML 或者 CSV)
 -m:关闭挂载的磁盘模块
 -n:关闭网络模块
 -p PORT:设置运行端口默认是 61209 
 -P password:设置客户端 / 服务器密码
 -s:设置 glances 运行模式为服务器
 -t sec:设置屏幕刷新的时间间隔,单位为秒,默认值为 2 秒,数值许可范围:1~32767 
 -h : 显示帮助信息
 -v : 显示版本信息

五、glances C/S模式

glances还支持C/S模式监控,被监控机运行服务端,监控端运行客户端既可以实现远程监控。

glances_cs.png

注意:C/S模式都必须安装glances才可以实现

5.1、服务端启动

服务端使用的端口默认是61209,如果使用服务端请注意开启防火墙。
glances_服务端.png

5.2、客户端访问

[root@zutuanxue ~]# glances -c 192.168.10.100

六、其他数据保存方式

6.1、导出数据为CSV电子表格

[root@manager01 ~]# glances --export-csv /tmp/1.csv

标签:glances,python,echo,source,系统监控,install,Linux,进程
From: https://www.cnblogs.com/yihr/p/17778963.html

相关文章

  • Linux终端的使用
    一、终端的作用要了解终端,就要了解一下计算机方面的历史,早期的计算机都属于大中型计算机,是个庞然大物,占用很大的空间,属于公用产品。不像现在的电脑,可以人手一部,直接操作。那如何对这些计算机进行控制与操作呢。那就搞个终端设备来操作。因此一台计算机上有很多种不同的终端设备也......
  • 捡起ctf学习 day1 Linux Labs
    1.把忘记密码的kali重置了密码进入GRUB启动程序,修改命令,重置密码(参考https://www.cnblogs.com/wh0915/p/17153270.html) 2.做题,ssh连接命令ssh-p端口用户名@网址然后输入密码即可连接 cd命令:切换当前目录百至其它目录,比如进入/etc目录,则执行cd/etccd/:在Linux系......
  • linux 网络管理
    现代人的生活越来越依赖网络,对于一个操作系统来讲,网络功能的支持和管理就更为重要了,本节课我们一起来看一下在CentOS8中如何对网络进行管理NetworkManager和常用工具和基本用法NetworkManager介绍在linux系统中传统的网络管理方法是用过一个叫network的服务来实现,在CentOS7中依......
  • linux磁盘基本管理
    一、磁盘介绍磁盘:计算机中的外部存储设备,负责存储计算机数据,并且断电后也能保持数据不丢失。磁盘分类:按照物理结构:机械磁盘固态磁盘按照接口:IDESCSISATASASmSATAM.2NVMEPCIe按照尺寸:机械硬盘:1.8寸2.5寸3.5寸固态硬盘:SATA:2.5寸M.2:2242、2260、2280......
  • linux磁盘管理-RAID介绍
    一、RAID介绍RAID(RedundantArrayofIndependentDisk独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失效时不会使对数据的访问受损失而开发出一定水平的数据保护技术。RAID就是一种由多块廉价磁盘构成的冗余......
  • linux服务管理
    systemctl命令管理服务我们一起来看一下在服务管理方面systemctl这个工具如何使用[root@zutuanxue~]#systemctlstartservernamestart 启动服务stop 停止服务restart 重启服务(没启动的服务会启动)try-restart 只重启正在运行的服......
  • Linux基本优化
    一、selinux和防火墙优化1、SElinuxselinux安全增强型Linux(Security-EnhancedLinux)简称SELinux,它是一个Linux内核模块,也是Linux的一个安全子系统。SELinux主要由美国国家安全局开发。它的主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。也由于它......
  • Linux基本命令与常用符号
    一、常用命令介绍在linux系统中存在很多命令,这些命令可以帮助我们完成不同的工作,在这里面我们先介绍一些常用的基础命令,这些命令可以帮助我们完成对应的基本操作,随着以后的学习,我们还会接触到更多可以帮助我们完成不同工作的linux命令,我们来一起看一下这些基础命令都有哪些1、关......
  • linux日志服务器部署
    集中式日志服务器介绍如果你负责管理数台的Linux,你得登录每一台Linux后,才能阅读其中的信息!这样是不是很麻烦??那有没有什么更好的方案呢?Linux的系统日志服务,允许你把信息传递到某一台Linux的系统日志服务中;那你就可以把一台Linux作为日志服务器(LogServer),而其他的Linux......
  • linux启动常见问题
    一、忘记root密码日常生活中,我们会接触到很多账号和密码,而这些账号和密码我们不能都很好的记忆,对于linux也是一样的,如果root密码忘记了怎么办?岂不是都无法登陆使用Linux了?现在我就教各位,在不知道root密码的前提下,如何给root设置一个新的密码step1重启你的linux系统,在下图这个......