Hive啟動留下的RunJar進程不能使用Kill -9 殺不掉怎么辦?


 1、問題示例

  [Hadoop@master Logs]$ jps
  3728 ResourceManager
  6976 RunJar
  7587 Jps
  4277 Master
  3095 NameNode
  3863 NodeManager
  3450 SecondaryNameNode
  4362 Worker
  3245 DataNode
  [Hadoop@master Logs]$ kill -9 6976
  [Hadoop@master Logs]$ jps
  3728 ResourceManager
  6976 RunJar
  4277 Master
  3095 NameNode
  3863 NodeManager
  7607 Jps
  3450 SecondaryNameNode
  4362 Worker
  3245 DataNode

  問題描述:不正常啟動Hive,留下的RunJar進程,通過不能成功kill掉,該進程變成僵屍進程。

2、問題剖析

  參考:https://blog.csdn.net/walykyy/article/details/113253060

  僵屍進程不能直接被kill掉,可從僵屍進程的父進程進行kill掉。

3、解決方案

  找到僵屍進程,僵屍進程的父進程的標記符為:PPid.

  按如下步驟進行:

  [Hadoop@master Logs]$ cd /proc/6976
  [Hadoop@master 6976]$ ls
  ls: 無法讀取符號鏈接cwd: 權限不夠
  ls: 無法讀取符號鏈接root: 權限不夠
  ls: 無法讀取符號鏈接exe: 權限不夠
  attr coredump_filter gid_map mountinfo oom_score sched statm
  autogroup cpuset io mounts oom_score_adj schedstat status
  auxv cwd limits mountstats pagemap sessionid syscall
  cgroup environ loginuid net patch_state setgroups task
  clear_refs exe map_files ns personality smaps timers
  cmdline fd maps numa_maps projid_map stack uid_map
  comm fdinfo mem oom_adj root stat wchan
  [Hadoo@master 6976]$ cat status

  Name: java
  State: Z (zombie)
  Tgid: 6976
  Ngid: 0
  Pid: 6976
  PPid: 6975               
  TracerPid: 0
  Uid: 1001 1001 1001 1001
  Gid: 1001 1001 1001 1001
  FDSize: 0
  Groups: 0 1001
  Threads: 1
  SigQ: 3/15023
  SigPnd: 0000000000000000
  ShdPnd: 0000000000004100
  SigBlk: 0000000000000000
  SigIgn: 0000000000000000
  SigCgt: 2000000181005ccf
  CapInh: 0000000000000000
  CapPrm: 0000000000000000
  CapEff: 0000000000000000
  CapBnd: 0000001fffffffff
  CapAmb: 0000000000000000
  NoNewPrivs: 0
  Seccomp: 0
  Speculation_Store_Bypass: thread vulnerable
  Cpus_allowed: 3
  Cpus_allowed_list: 0-1
  Mems_allowed:  

  *********(此處有省略

  Mems_allowed_list: 0
  voluntary_ctxt_switches: 50
  nonvoluntary_ctxt_switches: 14
  [Hadoop@master 6976]$ kill -9 6975
  [Hadoop@master 6976]$ jps
  3728 ResourceManager
  4277 Master
  3095 NameNode
  3863 NodeManager
  7832 Jps
  3450 SecondaryNameNode
  4362 Worker
  3245 DataNode

  以上成功kill掉僵屍進程RunJar 6975

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM