yarn裏有大量的短暫killed的hive任務問題排查

問題:我們用AWS EMR的時候發現在yarn的application  manager ui裏有大量killed的hive任務,而且非常之多,如截圖所,我們是通過hive server2方式提交任務的:

解決方案:

首先想到的是不是有什麼進程在不斷的搗鬼,後來grep 下所有hive進程,將該殺的都殺了之後,並沒有什麼特殊的異常進程,但是在grep的瞬間有遇到類似如下的命令:bash /usr/lib/hive/bin/hive -e show PARTITIONS  mytable

因爲我們的集羣默認配置的是hive server2,對原生的/usr/lib/hive/bin/hive做的alias,按理說不會直接調用原生的hive cli,猜測可能是由於之前的老代碼沒有修改徹底導致的。但是這與yarn後臺大量的killed的hive任務是否有關係?顯然,只需要做一個測試即可。經過測試,hive cli確實產生了一個killed的hive任務,至此根本原因算是定位到了。那如何規避這一問題?或者說這一問題是怎麼間接產生的呢?排查的思路是先查看環境變量,如果環境變量正常,則只能進一步查看是哪個程序執行了這樣的操作。後來發現在環境變量裏有個alias bhive=hive,但是這個bhive=hive是在我們自定義的alias hive=/usr/bin/beeline 上面,所以並沒有生效,還是執行了一遍hive cli命令,這時只需要將alias bhive=hive放置在alias=/usr/bin/beeline 下面即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章