集群?jiǎn)⒂肧entry之后,Hive和Impala的SQL查詢頁(yè)面多了一個(gè)搜索框,通過搜索框搜索時(shí),側(cè)邊欄一直處于加載狀態(tài),如下圖所示。

首先通過Chrome抓包看到搜索的HTTP請(qǐng)求報(bào)了一個(gè)500錯(cuò)誤。

繼續(xù)查看日志文件,發(fā)現(xiàn)再向localhost:7187端口發(fā)送請(qǐng)求的時(shí)候,連接拒絕了。這個(gè)7187有點(diǎn)陌生,我們似乎沒有那個(gè)服務(wù)用的這個(gè)端口,而且本機(jī)上確實(shí)沒有啟動(dòng)監(jiān)聽。

于是想到查看hue配置,看看哪里配置了這個(gè)7187端口的服務(wù),找到如下默認(rèn)配置:

至此,確定了500錯(cuò)誤是因?yàn)檎?qǐng)求這個(gè)不存在的服務(wù)造成的,那么這個(gè)Navigator是干什么的呢,其實(shí)是一個(gè)Cloudera公司的一個(gè)Hadoop數(shù)據(jù)治理解決方案,是CDH的付費(fèi)內(nèi)容。
既然這個(gè)付費(fèi)內(nèi)容我們用不了,那能不能將它干掉呢?
抱著試一試的心理,在源碼中搜索『Search everywhere...』(那個(gè)搜索框的placeholder內(nèi)容)。發(fā)現(xiàn)這個(gè)搜索框是受 navigatorEnabled 這個(gè)參數(shù)控制的。

至此,可以確定這個(gè)搜索框是可以通過配置去掉的,順藤摸瓜,我們找到以下代碼

在接著找has_navigator方法實(shí)現(xiàn)

意思大概是說navigator_url和navigator.auth_password都有內(nèi)容的話,就認(rèn)為navigator是開啟的。很容易想到如果把navigator.api_url的默認(rèn)配置抹掉就能屏蔽掉那個(gè)搜索框了。

在Cloudera Manager中為Hue添加以下配置,并重啟Hue實(shí)例讓配置生效,再次訪問Hue,那個(gè)沒有用的搜索框已經(jīng)被干掉了。