前言

hadoop除了社区版之外,还有两个主流的分支,一个是cdh版本,一个是hdp版本,其中ambari是hdp版本的部署工具

1.ambari安装准备

https://docs.hortonworks.com/ ambari版块,找到installation

ip

role

os

java

10.110.92.148

ambari-master

centos-7.2

1.8

10.110.92.161

ambari-agent

centos-7.2

1.8

10.110.92.162

ambari-agent

centos-7.2

1.8

  • master到agent端的ssh免密通信
  • master与agent时间同步
  • iptables off 与selinux off
  • 各node中/etc/hosts中ip对hostname的对应
[root@10-110-92-148 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.110.92.162 10-110-92-162
10.110.92.161 10-110-92-161
10.110.92.148 10-110-92-148
数据库准备工作
  • 数据库,因为os为centos7.2,所以直接通过yum源安装了mariadb
[root@10-110-92-1648 ~]# yum -y install mariadb-server.x86_64 mariadb-devel.x86_64 mariadb-libs.x86_64
  • 数据库授权
  • 可以后续ambari-server setup的时候再依实际情况设置,如果ambari-server setup未作更改,可以进行以下的授权
MariaDB [(none)]> grant all on ambari.* to ambari@'%' identified by "bigdata";
  • mysql驱动安装
[root@10-110-92-148 resources] #  yum install mysql-connector-odbc.x86_64 mysql-connector-java.noarch
  • 手动链接mysql驱动java库至ambari安装目录(重要)
[root@10-110-92-148 resources]# ln -svnf /usr/share/java/mysql-connector-java.jar /var/lib/ambari-server/resources/mysql-connector-java.jar

如果未出现链接,后续web安装时在agent端可能出现无法安装hive等组件的问题,具体表示为以下类似情况

Failed to download file from http://10-110-92-148:8080/resources/mysql-connector-java.jar due to HTTP error: HTTP Error 404: Not Found

2.本地仓库准备

1.安装文件的下载

ambari中安装组件很多,所以最好先自行下载,完成本地仓库的安装

找到Apache Ambari installationObtaining Public Repositories下面的Ambari Repositories,下载其中的Tarball链接文件,三个均要下载,然后解压

[root@10-110-92-148 ambarirepo]# cd /data/ambarirepo/
[root@10-110-92-148 ambarirepo]# ll
total 8722480
drwxr-xr-x 3 zabbix users         28 Jul 13 07:53 HDP
-rw-r--r-- 1 root   root  8841048054 Jul 13 08:15 HDP-3.0.0.0-centos7-rpm.tar.gz
drwxr-xr-x 3 zabbix users         28 Jul 13 16:15 HDP-GPL
-rw-r--r-- 1 root   root      162239 Jul 13 16:15 HDP-GPL-3.0.0.0-centos7-gpl.tar.gz
drwxr-xr-x 3 zabbix users         28 Aug 13 18:28 HDP-UTILS
-rw-r--r-- 1 root   root    90606616 Aug 13 18:28 HDP-UTILS-1.1.0.22-centos7.tar.gz
2.仓库文件的http访问

安装nginx,然后更改nginx的配置文件,使得其可以通过web访问到文件

server {
        listen       80 default_server;
        server_name  _;
        root         /data/ambarirepo;  ##更改目录
        
        location / {
        autoindex on;   ##加入此项
        }
        ###下略
        }

/data/ambarirepo/HDP/centos7/3.0.0.0-1634目录之下的index.html重命名为index.html.bak,在web访问http://10.110.92.148/HDP/centos7/3.0.0.0-1634/可以看到文件与目录列表,即表示ok

Ambari修改HDFS文件存储路径 ambari安装hadoop_数据库

3.安装ambari

1.下载ambari repo文件

Apache Ambari installationInstalling Ambari下面Download the Ambari Reposioty

比如本文中的为2.7.1,repo链接为

[root@10-110-92-148 ~]# wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.7.1.0/ambari.repo -O /etc/yum.repos.d/ambari.repo
2.安装ambari并启动
[root@10-110-92-148 ~]# yum install ambari-server
[root@10-110-92-148 ~]# ambari set-up
3.ambari-setup设定

设定mysql使用,java环境等,自行选择java环境时,需要指定java环境路径

设定完成之后,初始化ambari数据库

MariaDB [(none)]> create database ambari;
MariaDB [(none)]> use ambari;
MariaDB [(none)]> source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
4.启动ambari
[root@10-110-92-148 ~]# ambari-server setup

4.ambari web安装

  • 访问master的web端 http://10.110.92.148:8080 默认用户密码为admin/admin
  • launch cluster,取一cluster名称
  • get started中,添加agent三个主机的hostname,并非ip,然后将master的私钥文件导入,即id_rsa,并非id_rsa.pub文件
  • 选择使用本地仓库,将刚才nginx可访问的文件链接依次贴入,本文例

hdp

http://10.110.92.148/HDP/centos7/3.0.0.0-1634/

gpl

http://10.110.92.148/HDP-GPL/centos7/3.0.0.0-1634/

utils

http://10.110.92.148/HDP-UTILS/centos7/1.1.0.22/

  • 选择下一步,选择自行安装的组件
  • 密码统一设定即可,需要大于8位,同时为字母数字组合,部分密码需要那样的格式
  • 将namenode的jvm调整至4G大小
  • 确保在custionzie services无提醒
  • Ambari修改HDFS文件存储路径 ambari安装hadoop_java_02