服务器资源监控之Perfmon
Linux安装配置JAVA
我电脑用的Mac,在本地下载有 jdk-8u291-linux-x64.tar.gz,可以使用下面命令上传至服务器
公式就是:scp 本地路径 Linux登录用户名@Linuxip地址:+Linu路径。例如这里的路径就是/home/a
sudo scp /Users/***/Desktop/jdk-8u291-linux-x64.tar.gz ubuntu@ubuntuIP:/home/ubuntu/app
服务器解压文件及配置环境变量
cd /home/ubuntu/app
chmod 775 jdk-8u291-linux-x64.tar.gz // 授权
tar -zxvf jdk-8u291-linux-x64.tar.gz // 解压的的jdk-8u291-linux-x64
sudo mv jdk-8u291-linux-x64 /usr/local/jdk1.8 // 移动 jdk-8u291-linux-x64 文件夹到 /usr/local下并重命名为 jdk1.8
sudo vim /etc/profile
在文末添加上下面配置
export JAVA_HOME=/usr/local/jdk1.8
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
# 使配置生效
source /etc/profile
下载安装perfmon
官方下载地址 https://github.com/undera/perfmon-agent
# 服务器使用命令下载
wget https://github.com/undera/perfmon-agent/releases/download/2.2.3/ServerAgent-2.2.3.zip
# 添加权限
chmod 775 ServerAgent-2.2.3.zip
# 解压
unzip ServerAgent-2.2.3.zip
# 进入文件夹
cd ServerAgent-2.2.3
# 启动服务
startAgent.sh
# 后台启动服务(默认端口号为 444 ,尽量不使用默认端口)
nohup ./startAgent.sh --udp-port 0 --tcp-port 1888&
jmeter 配置
添加监控器
开始运行jmeter,查看资源的使用率
服务器使用命令监控资源的使用
- top命令
1.作用
top命令用来显示执行中的程序进程,使用权限是所有用户。
2.格式
top [-] [d delay] [q] [c] [S] [s] [i] [n]
3.主要参数
d:指定更新的间隔,以秒计算。
q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高的优先序执行。
c:显示进程完整的路径与名称。
S:累积模式,会将己完成或消失的子行程的CPU时间累积起来。
s:安全模式。
i:不显示任何闲置(Idle)或无用(Zombie)的行程。
n:显示更新的次数,完成后将会退出top。
例: top -d 1 // 每1秒刷新数据
第一行是任务队列信息,同uptime命令的执行结果。eg.
top - 15:09:51 up 17 days , 3:38 , 4 users , load average : 1.09 , 3.39 , 4.76
15:09:51 当前时间
up 17 days , 3:38 系统运行时间,格式为时:分
4 users 当前登录用户数
load average : 1.09 , 3.39 , 4.76 系统负载,即任务队列的平均长度。
三个数值分别为1分钟、5分钟、15分钟前到现在的平均值。
第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行。eg.
Tasks : 115 total , 1 running , 114 sleeping , 0stopped , 0zombie
Cpu(s) : 16.1 us , 2.0 sy , 0.0 ni , 79.5 id , 1.4 wa , 0.0 hi , 1.0 si , 0.0 st
Tasks : 115 total 进程总数
1 running 正在运行进程数
114 sleeping 睡眠进程数
0 stopped 停止进程数
0 zombie 僵尸进程数
Cpu(s) : 16.1% us 用户空间占用CPU百分比
2.0% sy 内核空间占用CPU百分比
0.0% ni 用户进程空间内改变过优先级的进程占用CPU百分比
79.5% id 空闲CPU百分比
1.4% wa 等待输入输出的CPU时间百分比
0.0% hi
0.0% si
最后两行为内存信息。eg.
Mem : 8169876 k total , 7686472 k used , 483404 k free , 35272 k buffers
Swap : 4096532 k total , 160 k used , 4096372 k free , 2477532 k cached
Mem : 8169876 ktotal 物理内存总量
7686472 k used 使用的物理内存总量
483404 k free 空闲内存总量
35272 k buffers 用作内核缓存的内存量
Swap : 4096532 k total 交换分区总量
160 k used 使用的交换区总量
4096372 k free 空闲交换区总量
2477532 k cached 缓冲的交换区总量。
- free命令
1.作用
free命令用来显示内存的使用情况,使用权限是所有用户。
2.格式
free [-b-k-m] [-o] [-s delay] [-t] [-V]
3.主要参数
-b -k -m:分别以字节(KB、MB)为单位显示内存使用情况。
-s delay:显示每隔多少秒数来显示一次内存使用情况。
-t:显示内存总和列。
-o:不显示缓冲区调节列。
4.应用实例
free命令是用来查看内存使用情况的主要命令。和top命令相比,它的优点是使用简单,并且只占用很少的系统资源。通过-S参数可以使用free命令不间断地监视有多少内存在使用,这样可以把它当作一个方便实时监控器。
#free -b -s5
使用这个命令后终端会连续不断地报告内存使用情况(以字节为单位),每5秒更新一次。