linux 下查看系统资源和负载,以及性能监控
2016-08-09 00:00
274 查看
摘要: linux 下查看系统资源和负载,以及性能监控
1,查看磁盘 df -h 2,查看内存大小 free free [-m|g]按MB,GB显示内存 vmstat 3,查看cpu cat /proc/cpuinfo 只看cpu数量grep "model name" /proc/cpuinfo | wc -l 4,查看系统内存 cat /proc/meminfo 5,查看每个进程的情况 cat /proc/5346/status 5347是pid 6,查看负载 w uptime 7,查看系统整体状态 top 最后一些输出信息的解释: load average: 0.09, 0.05, 0.01 三个数分别代表不同时间段的系统平均负载(一分钟、五 分钟、以及十五分钟),它们的数字当然是越小越好。“有多少核心即为有多少负荷”法则: 在多核处理中,你的系统均值不应该高于处理器核心的总数量 进程使用的内存可以用top,有3个列VIRT RES SHR, 标示了进程使用的内存情况, VIRT标识这个进程可以使用的内存总大小, 包括这个进程真实使用的内存, 映射过的文件, 和别的进程共享的内存等. RES标识这个这个进程真实占用内存的大小. SHR标识可以和别的进程共享的内存和库大小. 8,性能监视sar命令 sar -u输出显示CPU信息。-u选项是sar的默认选项。该输出以百分比显示CPU的使用情况 CPU CPU编号 %user 在用户模式中运行进程所花的时间 %nice 运行正常进程所花的时间 %system 在内核模式(系统)中运行进程所花的时间 %iowait 没有进程在该CPU上执行时,处理器等待I/O完成的时间 %idle 没有进程在该CPU上执行的时间 sar 5 10 sar以5秒钟间隔取得10个样本 sar -u -p ALL 5 5 分cup显示 sar -n { DEV | EDEV | NFS | NFSD | SOCK | ALL } sar 提供六种不同的语法选项来显示网络信息。-n选项使用6个不同的开关:DEV | EDEV | NFS | NFSD | SOCK | ALL 。DEV显示网络接口信息,EDEV显示关于网络错误的统计数据,NFS统计活动的NFS客户端的信息,NFSD统计NFS服务器的信息,SOCK显示套接字信息,ALL显示所有5个开关。它们可以单独或者一起使用。 sar -n DEV 各参数含义 IFACE LAN接口 rxpck/s 每秒钟接收的数据包 txpck/s 每秒钟发送的数据包 rxbyt/s 每秒钟接收的字节数 txbyt/s 每秒钟发送的字节数 rxcmp/s 每秒钟接收的压缩数据包 txcmp/s 每秒钟发送的压缩数据包 rxmcst/s 每秒钟接收的多播数据包 9,查看命令历史(含时间戳) export HISTTIMEFORMAT='%F %T ';history| more 10,查看文件夹和文件大小 du -h --max-depth=0 dm 查看dm目录大小 du -h --max-depth=1 dm 查看dm目录大小,以及dm各文件文件夹的大小 du -h --max-depth=0 查看当前文件夹大小 负载(load)是linux机器的一个重要指标,直观了反应了机器当前的状态。如果机器负载过高,那么对机器的操作将难以进行。 Linux的负载高,主要是由于CPU使用、内存使用、IO消耗三部分构成。任意一项使用过多,都将导致服务器负载的急剧攀升。 查看服务器负载有多种命令,w或者uptime都可以直接展示负载, $ uptime 12:20:30 up 44 days, 21:46, 2 users, load average: 8.99, 7.55, 5.40 $ w 12:22:02 up 44 days, 21:48, 2 users, load average: 3.96, 6.28, 5.16 load average分别对应于过去1分钟,5分钟,15分钟的负载平均值。 这两个命令只是单纯的反映出负载,linux提供了更为强大,也更为实用的top命令来查看服务器负载。 $ top top命令能够清晰的展现出系统的状态,而且它是实时的监控,按q退出。 Tasks行展示了目前的进程总数及所处状态,要注意zombie,表示僵尸进程,不为0则表示有进程出现问题。 Cpu(s)行展示了当前CPU的状态,us表示用户进程占用CPU比例,sy表示内核进程占用CPU比例,id表示空闲CPU百分比,wa表示IO等待所占用的CPU时间的百分比。wa占用超过30%则表示IO压力很大。 Mem行展示了当前内存的状态,total是总的内存大小,userd是已使用的,free是剩余的,buffers是目录缓存。 Swap行同Mem行,cached表示缓存,用户已打开的文件。如果Swap的used很高,则表示系统内存不足。 在top命令下,按1,则可以展示出服务器有多少CPU,及每个CPU的使用情况 一般而言,服务器的合理负载是CPU核数*2。也就是说对于8核的CPU,负载在16以内表明机器运行很稳定流畅。如果负载超过16了,就说明服务器的运行有一定的压力了。 在top命令下,按shift + "c",则将进程按照CPU使用率从大到小排序,按shift+"p",则将进程按照内存使用率从大到小排序,很容易能够定位出哪些服务占用了较高的CPU和内存。 仅仅有top命令是不够的,因为它仅能展示CPU和内存的使用情况,对于负载升高的另一重要原因——IO没有清晰明确的展示。linux提供了iostat命令,可以了解io的开销。 输入iostat -x 1 10命令,表示开始监控输入输出状态,-x表示显示所有参数信息,1表示每隔1秒监控一次,10表示共监控10次。 其中rsec/s表示读入,wsec/s表示每秒写入,这两个参数某一个特别高的时候就表示磁盘IO有很大压力,util表示IO使用率,如果接近100%,说明IO满负荷运转。 总结: (1)使用top命令查看负载,在top下按“1”查看CPU核心数量,shift+"c"按cpu使用率大小排序,shif+"p"按内存使用率高低排序; (2)使用iostat -x 命令来监控io的输入输出是否过大 |
相关文章推荐
- linux下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux下查看系统资源和负载,以及性能监控
- linux下查看系统资源和负载,以及性能监控
- linux下查看系统资源和负载,以及性能监控
- linux下查看系统资源和负载,以及性能监控
- linux 下查看系统资源和负载,以及性能监控
- linux下查看系统资源和负载,以及性能监控