Ubuntu16安装Ambari集群

前端之家收集整理的这篇文章主要介绍了Ubuntu16安装Ambari集群前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

安装Ambari集群采坑记录


  • 集群基础配置
    1.我这里把主机命名为note1,从机note2。配置主从机本地域名 /etc/hosts下添加ip和域名。
    2.配置主机ssh免密登录note2。ssh相关配置
    3.安装ntp : apt-get install -y ntp
    4.禁用Transparent Huge Page(禁用大内存页面可以提升MR效率)echo never > /sys/kernel/mm/transparent_hugepage/enabled

(以上从机note2已经配置就绪,可在note1中测试下能否登录


  • 服务器配置
    1.将提前下载好的ambari,HDP,HDP-Util统一解压后放到一个文件夹下。我这里选择/opt。另外再将jdk-1.8.tar.gz的包 (1.8的都行) 添加文件夹中,在后续使用。
    2.在/opt目录下执行python -m SimpleHTTPServer,端口默认8000。然后我们就可以通过http的形式访问改文件夹了。所以我这边通过浏览器输入http://note1:8000/访问到主机的/opt目录。
    3.添加一个ambari源,在/etc/apt/sources.list.d/添加一个文件ambari.list。填入一下内容deb http://${你主机host,我这里为note1}:8000/ambari/ubuntu16/ Ambari main 地址其实就ambari-server的解压后的子路径,用于后续安装使用。
    4.配置获取公钥:apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9733A7A07513CAD (其中keyserver.ubuntu.com表示可下载公钥的服务器,B9733A7A07513CAD为签名)
    5.执行apt-get updateapt-get install -y ambari-server安装服务。
    6.修改配置,安装完成后默认会生成一个配置文件/etc/ambari-server/conf/ambari.properties修改jdk1.8.url,目标就是第一步我们放入opt下面的文件。所以我这里为http://note1:8000/jdk-1.8.tar.gz 了。
    7.修改完后我们就可以初始化ambari了,执行ambari-server setup。这里我们遇到两个警告。
    一是:WARNING: 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-connector-java.jar (不管什么版本,名称只能是这个)放入/usr/share/java,并在ambari.properties中添加server.jdbc.driver.path=/usr/share/java/MysqL-connector-java.jar
    二是:让我们运行/var/lib/ambari-server/resources/Ambari-DDL-MysqL-CREATE.sql这个脚本,可是我执行后却又一堆不成功(不晓得是不是这个版本的问题)。于是需要手动修改一下。我们在# USE @schema;下开始加入自己的逻辑CREATE DATABASE ambari;
    CREATE DATABASE hive;
    GRANT ALL PRIVILEGES ON ambari.* TO 'ambari'@'%'
    IDENTIFIED BY 'ambari';
    GRANT ALL PRIVILEGES ON hive.* TO 'hive'@'%'
    IDENTIFIED BY 'hive';
    FLUSH PRIVILEGES;
    use ambari;
    其中hive的部分是为后续存储其源数据准备。修改完另存为,然后再执行脚本。
    9.执行ambari-server start
    启动过程也多次出现问题。比如Caused by: java.net.ConnectException: Connection refused (Connection refused)连接数据库失败,这时候检测数据库是否能正常连接。我也是发现新装的MysqL修改MysqLd.cnf才能链接成功的。以上是我遇到的部分问题,bug各有不同,就要通过日志来进行对应的修改了。下面让我们下配置完成后的正常启动吧。

  • 配置hdp集群
    ambari启动的默认端口为8080,我们打开服务器页面。账号密码:admin

    进去后第一步:我们选择:Launch Install Wizard 。创建一个自己的集群。
    第二部:名字任意。
    第三步:Select Stack。这里我们选择 HDP2.6 -》Use Local Repository -》Ubuntu16。分别填入自己的url。
    http://${主机}:8000/HDP/ubuntu16/2.6.3.0-235/
    http://${主机}:8000/HDP-UTILS-1.1.0.21-ubuntu16/


    第四步:Target Hosts填入我们的主机和从机hostname,SSH Private Key填入你主机用户下私钥:~/.ssh/id_rsa。SSH User Account 填入你使用ssh的用户,建议都是root。
    第五步:确认ssh是不是连得上你所有机器。连不上再重新配置再刷新。
    第六步:安装你需要的组件,有些必须的你去掉了也是让你选上的。

    第七步:选择主从机安装的组件(hive Metastore最好放到有安装MysqL的服务器)

    第八步:制定服务。这里需要我们测试下hive的连接。我这里是报错找不到JDBC。它提示在ambari-server setup加入启动参数。我嫌麻烦继续往下走了。
    后续hive的安装确实出问题了
SLF4J: Found binding in [jar:file:/usr/hdp/2.6.3.0-235/hive2/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/2.6.3.0-235/hadoop/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
Metastore connection URL:    jdbc:MysqL://note1/hive
Metastore Connection Driver :    com.MysqL.jdbc.Driver
Metastore connection User:   hive
org.apache.hadoop.hive.Metastore.HiveMetaException: Failed to load driver
Underlying cause: java.lang.ClassNotFoundException : com.MysqL.jdbc.Driver
org.apache.hadoop.hive.Metastore.HiveMetaException: Failed to load driver

于是我手动将MysqL-connector-java.jar加入到 /usr/hdp/2.6.3.0-235/hive2/lib/ 下。

安装时问题:

error processing archive /var/lib/ambari-agent/cache/stacks/HDP/2.1/services/SMARTSENSE/package
/files/deb/*.deb (--install):

这种就是上面 服务器配置 中提到的ambari源文件设置问题,配置好后执行apt-get update。然后再次安装。


有问题就看日志。修改完然后Start All 让它重新启动全部应用就行了。
成功后就可以好好玩耍了!

原文链接:https://www.f2er.com/ubuntu/349805.html

猜你在找的Ubuntu相关文章