第一个坑
没有使用httpd,使用windows server iis 作为本地安装源,因为缺省设置缺乏linux相关文件的扩展名,导致无法访问源中的相关文件,安装失败。
- 错误现象
windows server IIS由于MIME的设置中缺乏bz2文件访问类型,以及缺乏对当前目录的直接访问类型,导致本地源安装失败,找不到文件,主要是:http://172.30.1.143/bigdata/ambari2.7.3/ambari/centos7/2.7.3.0-139/repodata/目录下,扩展名未bz2的文件无法访问,以及http://172.30.1.143/bigdata/ambari2.7.3/ambari/centos7/2.7.3.0-139/RPM-GPG-KEY/目录不能直接访问,导致ambari server2.7.3无法安装成功。
- 解决办法
配置windows server iis MIME类型中添加下面两项:
文件扩展名:bz2
MIME类型:application/x-gzip
文件扩展名(一个点,代表当前目录):.
MIME类型:application/octet-stream
第二个坑
Mysql访问问题
- 错误现象
ambari server已经安装成功,但是启动时报错,提示服务器8080端口因为超时而无法监听,ambari server无法正常启动。
查找原因:所有的设置均正确,防火墙关闭,关闭selinx,检查8080端口根本没有任何任务,后面发现是ambariserver与mysql数据库连接不上。但是mysql通过phpmyadmin可以正常访问,不管是localhost或者是ip地址及域名,均可,而且ambari server的相关数据库和账号均设置正确,并通过pypmyadmin可以正常访问。
- 解决办法
首先要确保mysql-connector-java.jar的版本正确,并正确安装,我用的mysql5.7,connector的版本是5.1.47,能够正常访问。最新的8可以使用所有的mysql版本,但没有试过。以上是前提。
根本原因是ambari server 在安装完成提示成功后,再设置一次server的mysql connector(命令为:ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java-5.1.47-bin.jar),然后确保/etc/ambari-server/conf/ambari.properties文件中有关mysql的属性设置和mysql connector的设置路径及名称一致。
主要涉及到一下几行属性:
custom.mysql.jdbc.name=mysql-connector-java-5.1.47-bin.jar
server.jdbc.driver.path=/usr/share/java/mysql-connector-java-5.1.47-bin.jar
server.jdbc.hostname=172.30.1.147
server.jdbc.port=3306
server.jdbc.rca.driver=com.mysql.jdbc.Driver
server.jdbc.rca.url=jdbc:mysql://172.30.1.147:3306/ambari
server.jdbc.rca.user.name=ambari
server.jdbc.rca.user.passwd=/etc/ambari-server/conf/password.dat
server.jdbc.url=jdbc:mysql://172.30.1.147:3306/ambari