作者主页:不吃西红柿
简介:程序员宅基地专家、信息技术智库公号作者。简历模板、职场PPT模板、技术难题交流、面试套路尽管【关注】私聊我。
今日重点:
① 学会查看linux各种状态,包括:网络IO、磁盘、CPU、内存等;
② 学会理解命令所代表的含义,能够迅速发现集群存在的问题。
linux 监控网络IO、磁盘、CPU、内存:
(1)内存:条数、每条大小、内存是DDR4还是DDR3、内存频率是2666MT/S还是1600MT/s
条数: dmidecode|grep -A5 'Memory Device'|grep Size | grep -v Installed |wc -l
每条大小: dmidecode|grep -A5 'Memory Device'|grep Size | grep -v Installed |uniq
内存类型: dmidecode | grep -A16 "Memory Device" | grep 'Type:' |grep -v Unknown |uniq
内存频率: dmidecode | grep -A16 "Memory Device" | grep 'Speed' |grep -v Unknown |uniq
(2)硬盘:块数,大小
fdisk -l | grep "Disk /dev/sd"
(3)查看什么进程占用端口
netstat -antp | fgrep <port>
(4)查看进程资源
(5)CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
(6)CPU核数
cat /proc/cpuinfo| grep "cpu cores"| uniq
(7)CPU主频
cat /proc/cpuinfo| grep "model name"| uniq
ps命令用于查看系统中的进程状态
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
● USER,进程所有者的用户名。
● PID,进程号,可以唯一标识该进程。
● %CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。
● %MEM,进程使用内存的百分比。
● VSZ,进程使用的虚拟内存大小,以K为单位。
● RSS,进程占用的物理内存的总数量,以K为单位。
● TTY,进程相关的终端名。
● STAT,进程状态,用(R--运行或准备运行;S--睡眠状态;I--空闲;Z--冻结;D--不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。
● START,进程开始运行时间。
● TIME,进程使用的总CPU时间。
● COMMAND,被执行的命令行。
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。
1、上半部分显示了整体系统负载情:
2、下半部分显示了各个进程的运行情况:
【西红柿寄语】
1、遇到问题不要慌。根据经验,再通过命令排查内存、磁盘、网络、cpu,问题无非就这几类,切不可着急忙慌乱改一通,让简单问题复杂化。
2、根据以上命令,提前设置监控预警。监控预警能够让你及时发现系统的性能信息、比如磁盘快满了,内存超负荷了,我们可以提前作出调整。
添加文末公众号「信息技术智库」:
硬核资料:关注即可领取PPT模板、简历模板、行业经典书籍PDF。
技术互助:技术群大佬指点迷津,你的问题可能不是问题,求资源在群里喊一声。
面试题库:由技术群里的小伙伴们共同投稿,热乎的大厂面试真题,持续更新中。
知识体系:含编程语言、算法、大数据生态圈组件(Mysql、Hive、Spark、Flink)、数据仓库、前端等。
送书抽奖丨技术互助丨粉丝福利
文章浏览阅读5.7k次。这个问题可能是编码的整体规范不太符合标准 最好是能好好检测一下自己刚写的代码如果实在想提交在项目中找到 (pre-commit)文件把# Run hooknode "./node_modules/yorkie/src/runner.js" pre-commit || { echo echo "pre-commit hook failed (add --no-verify to bypass)" exit 1}这段注释掉在提交 提交完再还原就好了..._> running pre-commit hook: lint-staged some of your tasks use `git add`
文章浏览阅读4.6k次,点赞2次,收藏7次。最近因为需要对服务器做监控,同事推荐了grafana做前端展示,然后按照官方文档下载解压及一系列操作后,启动grafana-server.exe后,无法访问web端,然后百度了半天找到一个链接解答了我的问题,(原地址:http://www.freesion.com/article/736862253/)。官方地址:https://grafana.com/grafana/download在官..._grafana官网 打不开了
文章浏览阅读1.1k次。创建新表表中添加数据连接两个或多个表左连接右连接_myresult = mycursor.fetchall()
文章浏览阅读1.6k次。报如下错误输入命令:ssh-keygen -R IP已经可以登陆了_ssh秘钥过期时间
文章浏览阅读2.9k次,点赞7次,收藏42次。安规作为诸多电子产品必须要做的认证,设计的范围非常广泛。安规认证是什么?有哪些申请流程?电子产品的安规基本要求有多少?这期为大家简单介绍一下安规知识,以下为正文:(文末有PPT百度网盘链接..._电子设备的安规要求
文章浏览阅读1.2k次。java代码实现hive的基本操作步骤pom.xlclass类编写注意事项步骤1.)pom.xml配置文件2.)class类pom.xl在已有的hadoop、hbase相关配置的基础上添加hive的jdbc驱动包。 <!-- 添加hive的jdbc驱动包 --> <dependency> <groupId>or..._将java代码cunfanghive
文章浏览阅读91次。I was trying to build a web-based utility for Linux Management and I found those are not familiar to me with which Node.js, ShellJS, ... etc. Luckily I found another way to control the underlying Linu..._python flask中control
文章浏览阅读1k次。ubuntu 16.04升级到18.04 ros-moveit安装问题ubuntu版本与ROS版本适配安装moveitubuntu版本与ROS版本适配ubuntu 16.04对应的是ROS Kinetic,ubuntu 18.04对应的是ROS Melodic。安装moveit跟着moveit官方教程走,官网教程链接在执行下面两行命令时sudo apt-get install ros-..._ubuntu升级会影响ros吗
文章浏览阅读394次。1。安装步骤参照https://www.cnblogs.com/bookwed/p/5896619.html 2.出现问题1)缺data-dumperA 现象[root@localhost mysql]#./scripts/mysql_install_db --user=mysql --datadir=/usr/app/mysql/data/mysqlFATAL ERROR: please ins..._please configure the 'hostname' command to return a correct hostname.
文章浏览阅读2k次。a = range(5) print(a)for i in range(5): print(i)i = 1 while i <=5: print(‘hello’) i +=1for i in range(5): print(‘hello’)for i in range(1,5): print(i)range 后面可以写1 for i in range(1,..._range前后
文章浏览阅读89次。JS变量之前的+号 比如 if (+comment === 1) 这个+什么意思 可以理解为Number(value)会将其按照Number函数的规则转换为数值或者NaN,规则大概如下:Boolean:true返回1,false返回0数据值,直接返回null,返回0undefined,返回NaN对于字符串,将其转换为十进制...
文章浏览阅读4.2k次。一、fdisk 的介绍fdisk - Partition table manipulator for Linux ,译成中文的意思是磁盘分区表操作工具;本人译的不太好,也没有看中文文档;其实就是分区工具fdsik 能划分磁盘成为若干个区,同时也能为每个分区指定分区的文件系统,比如linux 、fat32、 linux 、linux swap 、fat16 以及其实类Unix类操作系统的文件系统..._fdisk命令详解