ambari關於ranger的一個大坑----端口永遠是3306
這個坑是我在搭建ambari環境的時候發現的,我並沒有找到原因,求助同事,然后一步步循着蛛絲馬跡和試探,終於解決了,然而也揭露了ambari的大坑!!!!
ambari安裝ranger的時候需要連接數據庫,我選擇的是mysql數據庫,這個時候你需要輸入數據庫root用戶名和密碼,因為需要連接root用戶去創建新用戶和數據庫
問題就出在這里了
數據庫並不在集群機器上面,在另外一台服務器,大家都知道一般生產環境數據庫的端口號都不會設置為3306
那么數據庫的iP和端口(非3306)在添加ranger組件的時候已經配置了,但是其實這個時候它的配置並沒有生效,因為你發現你在配置好相關參數,去安裝啟動ranger的時候,
ranger admin怎么都無法啟動,並報錯connection refused!!!!
其他的多余信息一樣沒有,就這么句話,錯很難找,然后就把報錯的那個命令拿到服務器上面進行執行,返回的信息是一樣的
一開始以為是數據庫的連接數到頂了或者連接時間設置的不夠長、或者root沒有遠程連接權限導致,然而發現並不是
最后在服務器上面把執行命令在IP后面加了端口發現能成功連接遠程的mysql數據庫!!!!!!喜大普奔!!!!!!!!
那么證明數據庫確實沒有問題,那么問題來了,這也就是說我的ranger配置里面,端口號未生效!!!!!!!!!!!!!!
怎么辦呢,在報錯提示里面的腳本里面找到關於問題的部分,手動添加端口號,然后重啟ranger admin試試
成功啦!!!!!!!!!!!!!!ranger admin成功啟動
請記住了,如果你的mysql數據庫端口號不是3306,那么正常情況下你都會遇上這個問題的。有不理解的可隨時@我,
唉,記憶力為一天的我需要時刻用筆記來提醒自己,以防自己忘記了,下次還糾結在這上面,心疼自己的腦子,時常不在線上
這里再補充一個問題,就是ambari在啟用kerberos的時候,你需要提前在服務器上面安裝krb的server和client,那么這個時候你一定要注意了,krb的版本一定得是19以上的,否則你在認證的時候和添加組件之后啟動的時候,會報一堆權限不通過的問題,然后你去百度,發現答案千篇一律,還解決不了問題,其實就是krb的版本不對,血的教訓!!!!
最后再啰嗦一句,就是安裝ranger的時候,很可能你的ranger的conf文件為紅色的(Too many levels of symbolic links ),無法打開進去,因為你的軟連接方式不對,
/etc/ranger/admin和/usr/hdp/current/ranger-admin下面的conf都為紅色,執行ll一下發現的,這個時候把這個兩個地方的conf都刪除,
先將/etc/ranger-admin/2.6.5.0-292/0軟連接到/usr/hdp/current/ranger-admin/conf,
后進入/usr/hdp/current/ranger-admin,將conf軟連接到/etc/ranger/admin,重試一下就發現可以啦,能安裝也能啟動啦!!!!!!!!!!