報錯1:
Using python /usr/bin/python Starting ambari-server Ambari Server running with administrator privileges. ERROR: Exiting with exit code -1. REASON: Before starting Ambari Server, you must copy the MySQL JDBC driver JAR file to /usr/share/java and set property "server.jdbc.driver.path=[path/to/custom_jdbc_driver]" in ambari.properties.
**原因分析:**也就是說mysql的驅動程序jdbc放的位置不對,ambari無法找到這個驅動程序,也就無法連上mysql的ambari數據庫,從而報錯。
解決方法:
方法1:
yum install -y mysql-connector-java
方法2:
需要查看如下幾個目錄, 確保 JDBC 在
/usr/share/java
/var/lib/ambari-server/resources 和 /var/lib/ambari-server
/usr/lib/ambari-server
如果不在,就把jdbc的jar包復制進去,如果/usr/share/java這個目錄不存在,那么可以創建這個目錄。
報錯2:
REASON: Server not yet listening on http port 8080 after 90 seconds. Exiting.
原因分析: 可能來不及監聽吧,導致在一定時間內沒有響應,就直接退出了。
解決方法:
重啟ambari。
報錯3:
1 Using python /usr/bin/python 2 Starting ambari-server 3 Ambari Server running with administrator privileges. 4 Organizing resource files at /var/lib/ambari-server/resources... 5 Ambari database consistency check started... 6 Server PID at: /var/run/ambari-server/ambari-server.pid 7 Server out at: /var/log/ambari-server/ambari-server.out 8 Server log at: /var/log/ambari-server/ambari-server.log 9 Waiting for server start...........................................ERROR: Exiting with exit code -1. 10 REASON: Ambari Server java process has stopped. Please check the logs for more information.
原因分析:
由於這個報錯原因太過籠統(概括性), 所以查看日志進行分析:
tail -200 /var/log/ambari-server/ambari-server.log
可以看到這里:
Access denied for user 'ambari'@'%' to database 'ambari'
報錯說,ambari這個user沒有權限直接連上數據庫。
解決方法:
方法1: 打開mysql終端,寫sql語句給ambari用戶權限,我用了方法2。
方法2:重新config 用root用戶配置。
最后,成功排除萬難: