监控Linux系统节点和服务性能的方法

1、获取信息

#!/bin/bash
#描述:
# 把top信息输入到一个文件内部
#作者:孤舟点点
#版本:1.0
#创建时间:2017-11-09 03:04:28
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
p=`pwd`
Day=`date +"%Y%m%d"`
HOST=`hostname`
for((i=0; i<1440; i=i+1))
 do
 echo "Date `date +"%Y-%m-%d %H:%M:%S"`" >>$p/$Day-top.txt
 top c -bn1 >>$p/$Day-top.txt
 sleep 1
 done

2、筛选信息

#!/bin/bash
#描述:
#作者:孤舟点点
#版本:1.0
#创建时间:2017-11-09 04:08:52
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
p=`pwd`
Day=`date +"%Y%m%d"`
HOST=`hostname`
mkdir -p $p/$HOST-$Day
PT=$p/$HOST-$Day
cd $PT
cat $p/$1 | grep -v grep | grep "^Date" >> $PT/Time-$Day.txt
cat $p/$1 | grep -v grep | grep "^Cpu(s):" >> $PT/CPU-$Day.txt
cat $p/$1 | grep -v grep | grep "^Mem:" >> $PT/Mem-$Day.txt
cat $p/$1 | grep -v grep | grep "^Swap:" >> $PT/Cache-$Day.txt
while read line
do
 cat $p/$1 | grep -v grep | grep "$line" >> $PT/$line-$Day.txt
done < $p/service.txt
# 这里service.txt是按行存放的服务名称
cd $p

3、整理数据

  例如用Excel整理内存使用情况,这里把获取的时间和内存信息放在Excel内部,并把内存列用Excel分列,用时间和使用的内存大小列可以制作出一张内存使用趋势图;同理也可以制作CPU、cached及各个微服务的CPU和内存趋势图。

总结

以上所述是小编给大家介绍的监控Linux系统节点和服务性能的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

(0)

相关推荐

  • Shell脚本实现Linux系统和进程资源监控

    在服务器运维过程中,经常需要对服务器的各种资源进行监控,例如:CPU的负载监控,磁盘的使用率监控,进程数目监控等等,以在系统出现异常时及时报警,通知系统管理员.本文介绍在Linux系统下几种常见的监控需求及其shell脚本的编写. 文章目录: 1.Linux使用 Shell 检查进程是否存在 2.Linux使用 Shell检测进程 CPU 利用率 3.Linux使用 Shell检测进程内存使用量 4.Linux使用 Shell检测进程句柄使用量 5.Linux使用 Shell查看某个 TCP 或

  • 一个监控LINUX目录和文件变化的Shell脚本分享

    最近看到群里有人聊到他们的服务器最近被挂马,然后想利用一个脚本能够实时监控web目录下文件的变化,也就是对该目录的增删改操作都会记录到相应日志下. 当时感觉这个功能的确实有点意思,所以网上查阅了些资料,自己研究了下,这会儿有空写了个脚本,分享给大家,如有问题,还请大家指出. 以下我写了两个脚本: 脚本1:将需要监控的目录的原始状态保存到LOG日志 脚本2:将脚本1的原始状态与本脚本比对,如果目录文件发生变化,则将变化的内容保存到日志. 注:原理实际上利用的是du -sb输出值来判断文件的变化,再

  • linux命令学习之10个网络命令和监控命令

    网络和监控命令类似于这些: hostname, ping, ifconfig, iwconfig, netstat, nslookup, traceroute, finger, telnet, ethtool 用于查看linux服务器ip地址,管理服务器网络配置 ,通过 telnet 和ethernet建立与linux之间的网络链接,查看linux的服务器信息等.下面让我们看看在linux下的网络和监控命令的使用.1. hostname 复制代码 代码如下: hostname 没有选项,显示主机

  • LINUX下的流量监控shell脚本

    最近比较忙,好久没更新博客了,今天刚好不忙写了一个流量监控脚本.测试在centos下已通过,有需要的朋友可以试试,有BUG或者需要添加其他功能话可以留言哦. 一.脚本源码# vi /etc/rc.d/traffic_monitor.sh---------------------------------------------- 复制代码 代码如下: #!/bin/bashPATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sb

  • shell脚本监控linux系统内存使用情况的方法(不使用nagios监控linux)

    一.安装linux下面的一个邮件客户端msmtp软件(类似于一个foxmail的工具) 1.下载安装: 复制代码 代码如下: # tar jxvf msmtp-1.4.16.tar.bz2# cd msmtp-1.4.16# ./configure --prefix=/usr/local/msmtp# make# make install 2.创建msmtp配置文件和日志文件(host为邮件域名,邮件用户名test,密码123456) 复制代码 代码如下: # vim ~/.msmtprcacc

  • linux进程监控shell脚本代码

    为确保php页面在后台运行,写了一个监控脚本,假设程序异常退出,那么可以自动重启. shell脚本/usr/local/scripts/receve.sh内容: #!/bin/bash #funtion:keep receve.php running PHP="/usr/local/php5/bin/php" PROGRAM="receve.php" #start dameo $PHP /home/httpd/$PROGRAM >>/usr/local/

  • Zabbix监控Linux主机设置方法

    说明: Zabbix监控服务端已经配置完成,现在要使用Zabbix对Linux主机进行监控. 具体操作: 以下操作在被监控的Linux主机进行,这里以CentOS 6.x系统为例. 一.配置防火墙,开启10050.10051的TCP和UDP端口 vi /etc/sysconfig/iptables #编辑防火墙配置文件 -A INPUT -s 192.168.21.127 -m state --state NEW -m tcp -p tcp --dport 10050:10051 -j ACCE

  • python实现监控linux性能及进程消耗性能的方法

    本文以实例形式实现了python监控linux性能以及进程消耗性能的方法,具体实现代码如下: # -*- coding: utf-8 -*- """ Created on Tue Jun 10 10:20:13 2014 @author: lifeix """ from collections import OrderedDict import time import os def cpuinfo(): lines = open('/proc/s

  • 监控Linux系统节点和服务性能的方法

    1.获取信息 #!/bin/bash #描述: # 把top信息输入到一个文件内部 #作者:孤舟点点 #版本:1.0 #创建时间:2017-11-09 03:04:28 PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH p=`pwd` Day=`date +"%Y%m%d"` HOST=`hostname` for((i=0; i<1440; i=i+1)) do

  • Linux系统中SSH服务基于key认证实践的过程

    众所周知ssh是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,它默认工作在tcp的22号端口,具体实现的软件有:openssh(centos默认安装的),dropbear.ssh协议目前有两个版本v1和v2,v1基于CRC-32做MAC,不安全.v2基于DH算法做密钥交换,基于RSA或DSA实现身份认证.所以目前大多流行的Linux都是使用的V2版本. 简单了解了下ssh,我们再来说说它的两种用户登录认证方式,第一种基于用户名口令的方式,这种认证方式想必大家都应该知道,就是我们要想

  • Linux系统下部署项目的设置方法

    一.修改防火墙设置,开放对应的端口 修改Linux系统防火墙配置需要修改 /etc/sysconfig/iptables 这个文件,如果要开放哪个端口,在里面添加一条 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT 就可以了,其中 8080 是要开放的端口号,然后重新启动linux的防火墙服务 二.安装jdk 1.检查一下系统中的jdk版本 [root@localhost softw

  • 设置Linux系统的空闲等待时间TMOUT的方法

    为了增强Linux系统的安全性,我们需要在用户输入空闲一段时间后自动断开,这个操作可以由设置TMOUT值来实现.将以下字段加入到/etc/profile 中即可(对所有用户生效). export TMOUT=900    # 设置900秒内用户无操作就字段断开终端 readonly TMOUT     # 将值设置为readonly 防止用户更改 注意:设置了readonly 之后在当前shell下是无法取消的,需要先将/etc/profile 中设置readonly行注释起来或直接删除,log

  • 浅谈生产者消费者模型(Linux系统下的两种实现方法)

    生产者消费者问题是同步问题中的一种常见情况,借用一下维基百科的话 生产者消费者问题(英语:Producer-consumer problem),也称有限缓冲问题(英语:Bounded-buffer problem),是一个多线程同步问题的经典案例.该问题描述了两个共享固定大小缓冲区的线程--即所谓的"生产者"和"消费者"--在实际运行时会发生的问题.生产者的主要作用是生成一定量的数据放到缓冲区中,然后重复此过程.与此同时,消费者也在缓冲区消耗这些数据.该问题的关键就

  • Linux系统下使用U盘的方法

    在linux系统之中, 一切设备皆文件, 所以我们的U盘也是一个文件.磁盘设备被抽象成sda文件, U盘设备被抽象成sdb文件. 1.查看所有的设备文件. 在linux的文件系统中, /dev中存放着所有的设备文件. cd /dev #进入dev文件夹 ls #查看所有的文件 其中名为sda的系类是磁盘设备, sdb系列是U盘设备. 2.外部设备挂载点 在linux中, 外部设备需要挂载在/mnt文件夹中. cd /mnt #进入/mnt文件夹 ls #列出所有文件, 发现一个也没有 mkdir

  • linux系统 java环境变量的配置方法

    配置java环境变量 这里是将环境变量配置在etc/profile,即为所有用户配置JDK环境. sudo vi /etc/profile 配置环境变量(注意jdk位置) #set java env export JAVA_HOME=/usr/lib/jdk/jdk1.8.0_171 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOM

  • 在 Linux 系统中手动滚动日志的方法

    日志滚动log rotation在 Linux 系统上是再常见不过的一个功能了,它为系统监控和故障排查保留必要的日志内容,同时又防止过多的日志造成单个日志文件太大. 日志滚动的过程是这样的:在一组日志文件之中,编号最大的(最旧的)一个日志文件会被删除,其余的日志文件编号则依次增大并取代较旧的日志文件,而较新的文件则取代它作为当前的日志文件.这一个过程很容易就可以实现自动化,在细节上还能按需作出微调. 使用 logrotate 命令可以手动执行日志滚动的操作.本文将要介绍的就是手动进行日志滚动的方

  • linux 系统忘记密码的快捷解决方法(图文详解)

    在学习Linux的过程当中,想到,万一自己忘记了linux的密码该怎么办? 其实,在linux当中,只用简单的操作几步,就可以更改用户密码~下面小编给大家作下记录,方便以后遇到此类问题. 1,重启系统,在系统进入前3秒钟,按下 E键. 2,紧接着,咱们再次按下E键,进入编辑命令,在图中的三个选项当中,咱们选中kernel 内核模式下进行编辑 3.第三次按下E键,进入了核心选项的模式后,咱们按下空格键,并且输入"singel" 或者是"1"",又或者是&qu

随机推荐