iotop

Linux 如何查看系统负载

社会主义新天地 提交于 2020-05-01 17:48:24
Linux 如何查看系统负载 3 1 0 博客 / Linux / 4个月前 / 534 / 0 操作系统的负载状态,反映了应用程序的资源使用情况,从中能找出应用程序优化的瓶颈所在。 系统平均负载,是指处于运行或不可打扰状态的进程的平均数。\ 处于运行,表示运行态,占用 CPU,或就绪态,等待 CPU 调度。\ 不可打扰,表示阻塞,正在等待 I/O 在 Linux 系统中,要查看负载情况一般使用 uptime 命令(w 命令和 top 命令也行)* 一、uptime 命令 $ uptime\ 16:33:56 up 69 days, 5:10, 1 user, load average: 0.14, 0.24, 0.29 以上信息的解析如下: 16:33:56 : 当前时间 up 69 days, 5:10 : 系统运行了 69 天 5 小时 10 分 1 user : 当前有 1 个用户登录了系统 load average: 0.14, 0.24, 0.29 : 系统在过去 1 分钟内,5 分钟内,15 分钟内的平均负载 load average: 0.14, 0.24, 0.29 : 系统在过去 1 分钟内,5 分钟内,15 分钟内的平均负载 平均负载解析 查看逻辑 CPU 核心数: $ grep 'model name' /proc/cpuinfo | wc -l\ 1\

CentOS-常用命令(版本:7.x)

早过忘川 提交于 2020-04-22 08:56:59
常用命令 注:centos命令不定期持续更新,希望能够帮到你~ 修改主机名 $ hostnamectl set-hostname xxx 查看IP $ vim /etc/sysconfig/network-scripts/ifcfg-eth33 查看系统版本 $ cat /etc/redhat-release 查看内存 $ free -kh 查看磁盘存储 $ df -kh [/home] 统计目录使用大小 $ du -sh [/home] 统计目录文件数 $ du -x -m --max-depth 1 [/home] 查看本机出口IP $ curl ipinfo.io $ curl -L ip.cn 查看磁盘IO(yum install isysstat -y) $ iostat -x 1 3 查看磁盘IO进程(yum install iotop -y) $ iotop 统计文件个数 $ ls -l | wc $ ls -l | grep "^-" | wc -l 统计文件夹个数 $ ls -l | grep "^d" | wc -l 设置静态IP ## 常见的名称为 ifcfg-ens33、ifcfg-eth0 $ vim /etc/sysconfig/network-scripts/ifcfg-ens33 BOOTPROTO # 获取IP的方式,默认为 dhcp(动态)

服务器诡异的请求超时问题

给你一囗甜甜゛ 提交于 2020-03-19 12:59:05
3 月,跳不动了?>>> 前些日子,监控显示线上偶尔发生请求两秒超时的情况。解决这个问题前前后后花了不少时间,也走了一些弯路。这里记录下来备忘。 前期分析 首先需要了解一下我们的服务: 我们的服务是一组无状态的前端服务器加上有状态的后端存储层。 这些服务都部署在腾讯云黑石服务器上面。 第一件事是要定位问题出现在前端还是后端。通过日志,我们发现在出错时间段里,每个前端服务器都有报错,并且出错请求都是发往同一后端服务器的。由此可见,问题出现在后端服务上。 接下来,需要分析出错的特征。通过日志发现错误都是因为前端两秒超时导致,而后端在前端超时之后事实上是完成了请求。因为是存储服务,我们自然在第一时间就查看了磁盘的情况。果然,在出错时,磁盘的 io.util 非常高( sar -dp 的输出,从第4列开始分别是 tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util ): 需要注意的是: io.util非常高,且只持续了2~3秒 几乎所有盘的io.util都高 io的tps和吞吐并不高 另外,还发现了另外一个规律:单台机器,大概每12小时左右会出现io.util高,并伴随着超时出错: 问题排查 快速排查 我们做了一些快速排查,试图以比较小的代价找到问题的根源: 查看系统的定时任务 查看系统日志 查看存储服务代码中的定时任务 可惜

linux命令(二)linux常用命令

懵懂的女人 提交于 2020-03-02 02:16:06
运行脚本命令 bash -c "cmd string" 等价于|| /bin/bash cmd string 文件操作命令 # 1)、从本地复制到远程 scp local_file remote_username@remote_ip:remote_folder # 2)、复制目录命令格式 scp -r local_folder remote_username@remote_ip:remote_folder 网络命令 # 查看磁盘io iotop -oP # 打包 tar zcf target.tar.gz ./source # ssh密钥生成 ssh-keygen -t rsa # 端口占用查看 netstat -anp|grep 80 # 查看网络配置 cat /etc/sysconfig/network-script/ifcfg-eth0 # 查看进程 ps -aux| grep logstash # 查看shell执行过程 sh -x test.sh 硬件信息查看命令 # 物理cpu个数 grep 'physical id' /proc/cpuinfo | sort -u # 物理cpu核数 grep 'core id' /proc/cpuinfo | sort -u | wc -l # 逻辑cpu个数 grep 'processor' /proc/cpuinfo |

Linux就该这么学-使用实战

狂风中的少年 提交于 2020-02-29 02:53:02
基本上已经完整的跟着刘老师学习了遍 《Linux就该这么学》 这本,然后又按照书籍对着自己的电脑反复的练习练习。学习linux只有多练多敲。才能更好更快的入手linux。直到有进,感觉工作起来,还是linux更方便我们工作。 接下来,我以个人的实际情况,按照书籍的所讲内容,灵活应用到工作的实际当中。 接下来就以我亲身经历,来运用所学习的知识,为公司服务器实例初使化,写了一个运维脚本。结合Linux就该这么学当中的一些章节来说明。为了提升自己的,增加自己的含金量。话说先有多大能力,才能有多大薪资。所以要不断的丰富自己的。事情是这样来的,去年10月份时,就听公司领导说,年后要上一批数据库服务器,看看是从公司内部找人,还是专门招聘个人来管理服务器。 也是跟对了人啊, 有一个好的部门老大,就是不一样。刚好我们老大也精通,就是我们常说的公司大拿之类的。有计算机的什么事情,只要到了,他那里,基本上没有什么解决不了的。 也亏路平时人缘好。再他的举荐下,让我去试试。提一下,之前我就是一个维护公司网络的小员工。我也就按下决心一定要抓住这次机会。变成一个正直全面人才。心想反正有老大这颗大树。 在老大的推荐之下,我找到了Linux就该这么学。正好这样从实战中学习。从网上找到Linux就该这么学这本书。 接下来我就讲一讲过程。来的时候服务器已经是最小安装的centos7.2。从经理那里得到

刚拿到CentOS系统环境后需要做的内容

廉价感情. 提交于 2019-12-09 23:10:22
拿到机器,不要第一时间配置环境。先做如下配置: 添加用户,禁用root远程ssh登录 # useradd wangzhibo //先建自己的用户 # vim /etc/ssh/sshd_config //然后root远程给禁用 PermitRootLogin no //将PermitRootLogin的值yes改为no # systemctl restart sshd //重启sshd服务 禁用selinux 查看selinux状态 # sestatus //查看selinux状态 # getenforce # /usr/sbin/sestatus -v 禁用selinux 临时关闭 设置SELinux 成为permissive模式 # setenforce 1 设置SELinux 成为enforcing模式 # setenforce 0 永久关闭 # vi /etc/selinux/config SELINUX=disabled 将SELINUX=enforcing改为SELINUX=disabled,设置后需要重启才能生效 检查更新系统所有可以通过yum和rpm安装的所有软件包 # yum update -y 生产环境,就不要用这个命令了,根据实际需要,需要更新那个包,就单独更新 epel-release第三方源安装。 自带源rpm软件太少,安装第三方源,减少下载软件的麻烦。

Linux系统监控--监控磁盘

牧云@^-^@ 提交于 2019-12-07 07:49:51
iostat 命令、 iostat命令是监控磁盘的命令,默认是没有安装的,需要先安装 [root@localhost ~]# yum install -y sysstat [root@localhost ~]# iostat Linux 3.10.0-957.el7.x86_64 (localhost.localdomain) 02/28/2019 _x86_64_ (4 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.75 0.00 1.92 0.72 0.00 96.60 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 8.23 317.90 16.60 301670 15755 dm-0 6.08 283.81 14.42 269326 13687 dm-1 0.09 2.59 0.00 2460 0 iostat 1 1秒刷新一次,会显示CPU使用情况 iostat -d 1 1秒钟刷新一次,只显示跟硬盘有关的信息。 iostat -d 1 5 1秒刷新一次,显示5次。 iostat -dx 1 5 1秒刷新一次,显示5次,显示的内容要比上一条命令更全一些,会有磁盘的使用率等信息。 [root@localhost ~]# iostat 1 2 Linux

0413 第十三次课:日常运维-系统监控

久未见 提交于 2019-12-06 06:11:13
日常运维(上) 系统监控 使用w查看系统负载 vmstat命令 top命令 sar命令 nload命令 监控io性能 free命令 ps命令 查看网络状态 linux下抓包 扩展 tcp三次握手四次挥手 tshark几个用法 一、w、vmstat、top、sar命令 w命令查看系统负载 w命令可以查看系统的运行情况 详细解释: 信息 说明 21:51:33 表示当前时间 up 209 days 表示系统运行时间为209天 1 users 表示当前登录用户个数,可以通过下面 USER行 查看当前的用户 TTY 登录的方式 pts/0 表示网络登录 如果为tty1-6 则是终端登录 LOGIN@ 表示用户登录时间 IDLE 表示用户空闲时间 FROM 用户登录的ip JCPU 该终端相关进程任务所耗费的时间 PCPU 表示WHAT或任务执行后耗费的CPU时间 WHAT 表示当前执行的任务 最常用的信息 load average:后面3个数字分别代表过去1,5,10分钟内CPU的负载情况。这个数值表示cpu的使用情况,一般来说只要不超过cpu的核数就是正常的 查看cpu的核数 cat /proc/cpuinfo 其中processor表示cpu的核数。从0开始计算,0就是表示核数为1。 或者使用lscpu命令查看 vmstat命令 vmstat命令可以查看进程、内存、I

磁盘优化思路

怎甘沉沦 提交于 2019-12-04 10:27:18
磁盘优化思路 性能定位套路 和之前类似,我们不可能出现性能问题就把所有工具都跑一遍,而是先运行那几个支持指标较多的工具,如 top,iostat,vmstat等来缩小范围 先用top, iostat 发现磁盘 I/O 性能瓶颈; 再借助 iotop, pidstat 等定位出导致瓶颈的进程; 随后用strace, lsof等分析进程的 I/O 行为; 最后,结合应用程序的原理,分析这些 I/O 的来源。 性能优化思路 由于影响磁盘I/O性能的因素众多,我们对磁盘I/O优化分应用程序,文件系统,磁盘三方面来说 1.应用程序优化 应用程序处于整个 I/O 栈的最上端,它可以通过系统调用,来调整 I/O 模式(如顺序还是随机、同步还是异步), 同时,它也是 I/O 数据的最终来源。 在我看来,可以有这么几种方式来优化应用程序的 I/O 性能: 1).可以用追加写代替随机写,减少寻址开销,加快 I/O 写的速度。 2).可以借助缓存 I/O ,充分利用系统缓存,降低实际 I/O 的次数。 3).可以在应用程序内部构建自己的缓存,或者用 Redis 这类外部缓存系统。这样,一方面,能在应用程序内部,控制缓存的数据和生命周期;另一方面,也能降低其他应用程序使用缓存对自身的影响。 4).在需要频繁读写同一块磁盘空间时,可以用 mmap 代替 read/write,减少内存的拷贝次数。 5)

1111111111111 Linux 性能检查命令总结

邮差的信 提交于 2019-12-04 09:32:30
*******性能监测 mpstat类似vmstat,但能详细到某个cpu http://blog.csdn.net/joeyon1985/article/details/46682939 http://www.xitongzhijia.net/xtjc/20141203/31828_2.html 内存瓶颈: free,vmstat(进程,内存,虚拟内存情况) cpu瓶颈: top -H (按cpu消耗排序) ps -Lp pid cu (按某进程对菜谱消耗排序) 网络瓶颈: 根据CPU中的%iowait来判断 磁盘瓶颈: iostat(磁盘整体TPS,IO读写情况), iotop定位到进程 应用瓶颈 https://mp.weixin.qq.com/s/97ZHAF-IStTqs_4vB7ltAA vmstat:虚拟内存统计 比较合理的数值: CPU 利用率 ,如果 CPU 有 100% 利用率,那么应该到达这样一个平衡:65%-70% User Time,30%-35% System Time,0%-5% Idle Time; • 上下文切换 ,上下文切换应该和 CPU 利用率联系起来看,如果能保持上面的 CPU 利用率平衡,大量的上下文切换是可以接受的; • 可运行队列 ,每个可运行队列不应该有超过1-3个线程(每处理器),比如:双处理器系统的可运行队列里不应该超过6个线程。