目录
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等查找错误