linux实用故障排查

目录

1、排查思路

2、cpu

3、内存

4、磁盘IO

5、网络

6、系统负载

7、GC问题

8、日志的查看


1、排查思路

大数据集群运行在linux系统上总会遇见各种各样的问题,我们要定位问题,基本从这几个方面入手排查:cpu, 内存,磁盘IO,网络,GC等。

2、cpu

一些概念:多核,超线程 ,CPU频率(2.2GHZ)

(节能模式,普通模式,超能模式,bios里设置,搭集群要注意下这个参数尽量关闭节能模式)bios里可以关闭。

#1 查看物理CPU个数

 cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l

#2查看逻辑cpu个数

cat /proc/cpuinfo |grep "processor"|wc -l

#3查看CPU多少核

#4 在生产集群中我们通常通过top来查看cpu的使用率来判断系统的负载情况,Top 然后按1,可以看到cpu的使用率

 

3、内存

#1,常见内存大小64 G---128G--256G---512G,通过free -g来查看系统内存是否不足

#2查看内存详细内容:

 

4、磁盘IO

#1、磁盘种类:

sata(150M/s左右)  sas(300 M/S左右)   ssd(最快也最贵)

一般磁盘2T-4T,服务器支持的最大存储也不同,比较常见的48T,一般服务器可以支持12-24块盘。

#2、磁盘io的查看:可以定位是否是因为io过大导致性能下降

iostat -mx 2

如果没有这个命令:yum  install -y sysstat

#3、df -h 查看磁盘空间

#4、df -T 查看磁盘的格式化的格式主流一般是xfs和ext4,系统盘默认是xfs,后续添加数据盘尽量也是xfs格式这样统一比较好,也方便写脚本批量挂盘

#5、lsblk 能够查看盘与分区以及ssd盘,用fdisk查看盘可能识别不到ssd

#6、fdisk -l 查看磁盘与未挂载的磁盘和分区信息

#7、cat /etc/fstab 查看磁盘挂载信息,新加磁盘要手动永久挂在需要在这个配置文件里添加,6列。如果这个文件写错了,重启服务器正常模式下是启动不了的!!!

#8、Lvm:逻辑卷管理(了解)

PV: 物理卷:硬盘和分区

VG:卷组,多个PV

LV: 逻辑卷,多个VG

实际需求应用:

1.集群磁盘扩容加盘,要永久挂载(信息写入/etc/fstab)

2.根目录空间不够要给根目录扩容(lvm)

https://www.cnblogs.com/himismad/p/7851548.html

http://heylinux.com/archives/3392.html

#9、磁盘阵列 (bios里设置)常见:

raid0(无冗余),raid1(双备份),raid5(n-1/n,损失其中一块盘的空间)等等

 

5、网络

#1、查看是否ping通:  ping IP

#2、查看某端口是否被监听

示例:比如你起启动datanode没有启动,查看日志报错:Address in used ,翻译过来就是端口被占用,那你得查看下这个端口被哪个程序占用了,就用 netatat -anp|grep 端口号,

就可以知道它的进程,比如下图进程pid就是107484,就可以用kill -9 PID强制杀死

#3、网卡模式配置(bound6,负载均衡)

 

6、系统负载

Linux命令:

Top

Uptime

W

cat /proc/loadavg

 

7、GC问题

#1是否full GC(GC是java里面JVM的东西,不了解的可以去看下)

Jps查出要查看的pid,用jstat -gcutil pid,看第四列O如果100%就是fullGC

 

8、日志的查看

#1、首先要知道日志的位置,一种是去配置文件查看有没有配置相关位置,一种是去通过进程查看如下 用ps -ef |grep pid通过显示出来的信息可以找到日志的位置。

查看某个进程日志的位置:

#2、查看日志

实时查看日志文件后100行:tail -f 100 file

静态查看:vim filelog,然后可以通过关键字error/warn等查找错误

 

猜你喜欢

转载自blog.csdn.net/weixin_43230682/article/details/107459711