ubuntu 1604搭建hdp2.4 Hadoop
首先参考离线安装版教程:
http://www.jianshu.com/p/debf0e6a3f3b
里面说的是针对ubuntu1404版本,但是1604也可以装。
在迅雷上下载后拷贝至服务器中,按照教程走,起http服务器,建本地源,apt-get install ambari-server。
这些都很容易,但是在ambari-server setup开始就有一些需要自己手动设置的,当然你一路回车默认他会帮你下载oraclejdk,用postgresql也很简单,但是如果你作死想用自己的mysql和jdk就有点蛋疼了。
1、首先要在数据库中给它建用户ambari和数据库ambari;
CREATE USER 'ambari'@'localhost' IDENTIFIED BY 'password';
UPDATE user SET password=PASSWORD("bigdata") WHERE user='ambari';
Grant all on *.* to 'ambari'@'%' identified by "pass";
flush privileges;
create database ambari;
2、然后按setup中的提示来,选择jdk路径(其实如果你嫌它命令行下jdk慢,也可以手动复制它地址在迅雷中下好在拷贝过来)和mysql,选完mysql后他会要装java-odbc
apt-get install libmysql-java
然后他会要你执行/var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
登进数据库source下即可,但是会有key过长的报错,"ERROR 1071 (42000) at line 434 in file: '/var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql': Specified key was too long; max key length is 767 bytes"
不知道有没有问题。。
更新:果然在启动ambari之后报表没找到失败了。。
解决:
因为我用的版本字符是utf-8(3byte一个字符)的编码,mysql也是用的这个,但是ambari是国外的。。默认是gbk2312(2byte一个字符)或者是latin1(1byte一个字符),然后会vchar设置的会很大,在不改他的sql脚本情况下,把自己的数据改成latin1就好了。
3、setup执行success之后,就可以ambari-server start,可惜还是有报错,
报错:ambari com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
link failure如果没有问题的话就是要把mysql的配置文件my.cnf中的地址打开127.0.0.1改成0.0.0.0,重启解决。
又遇到新的原因,是hosts里面的主机名没有改好,改正之后就可以了。。
4、然后我还遇到了ambari access deny的报错,在数据库中把ambari密码改了一下,这次start终于成功。。。
5、现在就可以进入web页面开始安装配置节点组建。
0824更新:
在最后一步开始部署组建的时候他会检查你当前的os版本,这是个巨大的坑,我用的办法是
vim /usr/lib/ambari-agent/lib/ambari_commons/os_check.py
在return distribution之前添加这句
distribution = ('Ubuntu', '14.04', 'trusty')
然后就可以一路畅通了。。。