java調(diào)用Hbase報錯解決方法
偽分布式hbase服務搭建
系統(tǒng)操作都很正常,也可以查詢所有的表的列表,但是查詢表的詳情,調(diào)用的時候就會報錯
java.net.connectexception: call to localhost/127.0.0.1:16020 failed on connection exception
從報錯信息也能看出來,應該是master節(jié)點,查詢表的名稱應該是只讀取了master信息,而表的具體信息就需要讀取regionserver的信息了,master把regionserver的本地IP返回給遠程java程序了,導致連接本地16020端口,這是肯定不對的
問題是這個問題,可是怎么解決呢?搜索無數(shù)資料,改了無數(shù)次hostname和防火墻配置,無效
最終查看hbase配置文件的時候,發(fā)現(xiàn)一個配置
<property>
<name>hbase.regionserver.hostname.disable.master.reversedns</name>
<value>true</value>
</property>默認是false,改成true,重啟,發(fā)現(xiàn)regionServer名稱變成了hadoop001而不是localhost了,本地測試,創(chuàng)建表成功
這個配置的意思就是master不要解析regionServer的ip,直接返回,跟hdfs的配置一樣,不過又換了個名字。。。
以上就是java調(diào)用Hbase報錯解決方法的詳細內(nèi)容,更多關(guān)于java調(diào)用Hbase報錯的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
java.lang.IllegalStateException:方法有太多主體參數(shù)問題
這篇文章主要介紹了java.lang.IllegalStateException:方法有太多主體參數(shù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07
WebSocket實現(xiàn)系統(tǒng)后臺消息實時通知功能
在現(xiàn)代Web應用中,提供實時通知對于改善用戶體驗至關(guān)重要,WebSocket技術(shù)允許建立雙向通信通道,從系統(tǒng)后臺將消息實時傳送給系統(tǒng)用戶,下面我們就來深入探討一下如何使用WebSocket來實現(xiàn)這一功能吧2023-10-10

