1. 程式人生 > >Hadoop叢集佔用系統態Cpu較高問題解決

Hadoop叢集佔用系統態Cpu較高問題解決

問題描述

問題1:Sys cpu佔用較高

問題解決

處理過程1:修改配置檔案

分析nmon發現dm-2磁碟壓力較大,該磁碟主要寫logs\local

 

avg-cpu: %user   %nice %system %iowait  %steal  %idle

         39.68    0.00   60.32   0.00    0.00    0.00

Device:         rrqm/s   wrqm/s    r/s     w/s   rsec/s  wsec/s avgrq-sz avgqu-sz  await  svctm  %util

sdb               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sdd               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sdc               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sda               5.67     2.67   0.67    1.00    50.67   29.33    48.00     0.02  10.60   9.80   1.63

sde               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sdf               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sdi               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sdg               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sdj               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sdk               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sdl               0.00     0.33   0.00    0.67     0.00    8.00    12.00     0.00   4.50   4.50   0.30

sdm               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sdh               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

sdn               0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

dm-0              0.00     0.00   0.00    0.67     0.00    5.33     8.00     0.01  21.00  19.50   1.30

dm-1              0.00     0.00   0.00    0.00     0.00    0.00     0.00     0.00   0.00   0.00   0.00

dm-2              0.00     0.00   6.33    3.00    50.67   24.00     8.00     0.05   5.50  0.36   0.33

將Yarn日誌修改為寫到資料盤目錄,然後重啟叢集,步驟如下:

停止hive

         ps -ef|grep metastore | grep -v grep|awk '{print $2}' | xargs kill -9

         ps -ef|grep hiveserver2 | grep -v grep|awk '{print $2}' | xargs kill -9

停止Yarn

         stop-yarn.sh

         備節點: yarn-daemon.sh stopresourcemanager

更新yarn-site.xml

<property>

         <name>yarn.nodemanager.local-dirs</name>

         <value>/chunk1/yarn/local,/chunk2/yarn/local,/chunk2/yarn/local,/chunk4/yarn/local,/chunk5/yarn/local,/chunk6/yarn/local,/chunk7/yarn/local,/chunk8/yarn/local,/chunk9/yarn/local,/chunk10/yarn/local,/chunk11/yarn/local,/chunk12/yarn/local,/chunk13/yarn/local</value>

     </property>

     <property>

         <name>yarn.nodemanager.log-dirs</name>

         <value>/chunk1/yarn/logs,/chunk2/yarn/logs,/chunk2/yarn/logs,/chunk4/yarn/logs,/chunk5/yarn/logs,/chunk6/yarn/logs,/chunk7/yarn/logs,/chunk8/yarn/logs,/chunk9/yarn/logs,/chunk10/yarn/logs,/chunk11/yarn/logs,/chunk12/yarn/logs,/chunk13/yarn/logs</value>

     </property>

scp配置檔案到各個節點;

重啟yarn

         start-yarn.sh

         mr-jobhistory-daemon.sh starthistoryserver

         yarn-daemon.sh start resourcemanager

重啟Hive

         nohup hive --service metastore &

         nohup hive --service hiveserver2 &

處理過程2:修改主機引數

而Hadoop是個高密集型記憶體運算系統,這個改動似乎給它帶來了副作用。理論上運算型Java程式應該更多的使用使用者態CPU才對,Cloudera官方也推薦關閉THP

引數修改如下:

echo never >/sys/kernel/mm/redhat_transparent_hugepage/enabled

echo never >/sys/kernel/mm/redhat_transparent_hugepage/defrag

[always] never means that transparenthugepage compaction is enabled.

always [never] means that transparenthugepage compaction is disabled.

10:47完成主機引數修改,修改前後主機Cpu資源對比見下圖:

參考資料