Hadoop運維記錄系列 二十三

2021-09-05 08:06:39 字數 1121 閱讀 4010

最近做集群機房遷移,在舊機房和新機房之間接了根專線,做集群不停機搬遷,也就是跨機房,同時要新加百多台伺服器,遇到幾個問題,記錄一下。

舊集群的機器是centos 6, 新機房加的機器是centos 7。

一、丟包問題

在跨機房的時候,datanode顯示很多slow blockreceiver的日誌

warn  org.apache.hadoop.hdfs.server.datanode.datanode: slow blockreceiver write packet to mirror took 630ms(threshold=300ms)
經查,這個報錯的主要原因出在網絡卡的mtu設定上,hadoop建議將網絡卡mtu值從1500設定為9000,以支援接收jumbo frame。調整mtu值後,偶爾還會有幾條,但頻率小多了。而且我記得這個得交換機一起配合修改,光改伺服器不好使。

二、centos7 執行df命令掛起,無法退出

在cent7下面執行df命令會死在那裡,用ctrl-c也沒法退出。由於我們的nodemanager健康檢查指令碼裡面包含df命令,所以,nm的健康檢查會卡死,最後把所有cpu全吃光,導致計算任務無法正常進行。使用kill命令也無法殺掉僵死的df程序,使用strace跟蹤df命令也無法退出,必須用kill -9 殺掉strace才可以。

stat("/sys/fs/cgroup/memory", ) = 0

stat("/sys/kernel/config", ) = 0

stat("/", ) = 0

stat("/proc/sys/fs/binfmt_misc",

最後df就是卡死在 binfmt_misc 這了。

經查,這是centos7 systemd的乙個bug,1534701,我們觸發這個bug的原因應該是在執行hadoop安裝的時候,作為依賴更新了systemd相關的元件,但是沒有進行重啟,新的systemd沒生效,所以重啟之後,故障解決。

三、專線流量大,導致跑任務慢

使用tcpdump及nmap綜合分析,發現大量的arp連線,應是b類位址沒有做vlan路由,跨機房集群相互之間做arp通告引發廣播風暴。後續由運維重新規劃vlan解決。

等跨機房遷移弄完了,可以專門寫一寫。

Hadoop運維記錄系列 二十二

今天抽空解決了乙個hadoop集群的乙個非常有意思的故障,之所有有意思,是這個故障既可以稱之為故障,又不算是故障,說不算問題吧,作業跑的特慢,說算問題吧,作業不但都能跑出來,還沒有任何報錯,所以還比較難查。故障表象是一幫人嚷嚷作業太慢了,跑不動,但是基本上嚷嚷一會就能跑出來,但相對於原來還是慢。我看...

Hadoop運維記錄系列 十七

上個月通過email,幫朋友的朋友解決了乙個cloudera的spark sql無法訪問hbase做資料分析的問題,記錄一下。首先,對方已經做好了hive訪問hbase,所以spark sql原則上可以通過呼叫hive的元資料來訪問hbase。但是執行極慢,而且日誌無報錯。中間都是郵件溝通,先問了幾...

Hadoop運維記錄系列 九

linux作業系統針對hadoop的引數和命令調優。對於hadoop本身的引數調優,寫的已經不少了,作業系統方面的不多,記錄一下我用的系統引數。先寫一點,想起哪個再往裡面加。一 系統核心引數調優sysctl.conf net.ipv4.ip forward 0 net.ipv4.conf.defau...