一、服务器准备
1.安装文件下载(文件下载地址可以参考官方的安装文档,上面有具体的下载地址。2.5.1版本可以参考附件的文档)

Ambari 2.4.2 下载资源:
1 wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.5.1.0/ambari.repo
2 wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.5.1.0/ambari-2.5.1.0-centos7.tar.gz

HDP 2.6.1 下载资源:

1 wget http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.1.0/hdp.repo
2 wget http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.1.0/HDP-2.6.1.0-centos7-rpm.tar.gz
3 wget http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7/HDP-UTILS-1.1.0.21-centos7.tar.gz

2.主机配置
a)配置主机HOST(所有节点)
vi /etc/hosts
调整:
192.168.55.80 HDP-Server.boco.com HDP-Server
192.168.55.81 HDP-Master.boco.com HDP-Master
192.168.55.82 HDP-Slave1.boco.com HDP-Slave1
192.168.55.83 HDP-Slave2.boco.com HDP-Slave2
192.168.55.84 HDP-Slave3.boco.com HDP-Slave3

b)配置FQDN(所有节点)
vi /etc/sysconfig/network
调整:
NETWORKING=yes
HOSTNAME=HDP-Server.boco.com
注意:HOSTNAME,请修改相应主机域名。

c)配置Master到Slave的SSH免密码登录(HDP-Master节点)
在master节点(192.168.55.81)里,使用root用户登录,执行如下命令:
ssh-keygen
一直回车键,直到结束。

然后复制key到各节点,注意不要漏掉主节点。命令如下:  
ssh-copy-id 192.168.55.81
ssh-copy-id 192.168.55.82
ssh-copy-id 192.168.55.83
ssh-copy-id 192.168.55.84

检查:
ssh 192.168.55.81
ssh 192.168.55.82
ssh 192.168.55.83
ssh 192.168.55.84

d)准备HDP-Server到Agent节点的免密码登录秘钥(HDP-Server节点)
在server节点(192.168.55.80)里,使用root用户登录,执行如下命令:
ssh-keygen
一直回车键,直到结束。

然后复制key到各节点,注意不要漏掉主节点。命令如下:  
ssh-copy-id 192.168.55.81
ssh-copy-id 192.168.55.82
ssh-copy-id 192.168.55.83
ssh-copy-id 192.168.55.84

检查:
ssh 192.168.55.81
ssh 192.168.55.82
ssh 192.168.55.83
ssh 192.168.55.84

事先将id_rsa传到本地电脑上,安装的时候需要用。

e)开启NTP服务(所有节点)
yum install ntp
systemctl is-enabled ntpd
systemctl enable ntpd
systemctl start ntpd

f)关闭防火墙(所有节点)
systemctl disable firewalld
systemctl stop firewalld

g)关闭SELinux(所有节点)
查看SELinux状态:
sestatus

如果SELinux status参数为enabled即为开启状态
SELinux status: enabled

临时关闭,不用重启机器:
setenforce 0

修改配置文件需要重启机器:
vi /etc/sysconfig/selinux
SELINUX=disabled

h)缺少安装包(所有Agent节点)
以目前7.2版本的RESHAT,仅缺少一个libtirpc-devel的依赖包,该包在操作系统光盘中并不存在,需要从网上下载。

3.Ambari配置
a)制作本地源(HDP-Server节点)
(1)安装 Apache HTTP 服务器
yum install httpd

如果防火墙已经关闭,下面命令可以不用执行:
firewall-cmd —add-service=http
firewall-cmd —permanent —add-service=http

添加随开机自动启动:
systemctl start httpd.service
systemctl enable httpd.service

配置:
cd /var/www/html/
mkdir ambari
cd ambari/

(2)安装本地源制作相关工具
yum install yum-utils createrepo

(3)解压缩安装文件
tar -zxvf ambari-2.5.1.0-centos7.tar.gz -C /var/www/html/ambari/
tar -zxvf HDP-2.6.1.0-centos7-rpm.tar.gz -C /var/www/html/ambari/
tar -zxvf HDP-UTILS-1.1.0.21-centos7.tar.gz -C /var/www/html/ambari/

(4)验证:
浏览器中打开:http://192.168.55.80/ambari/
出现文件夹浏览即可。

(5)配置:
编辑:
vim ambari.repo
修改内容:
#VERSION_NUMBER=2.5.1.0

[Updates-ambari-2.5.1.0]
name=ambari-2.5.1.0 - Updates
baseurl=http://192.168.55.80/ambari/ambari/centos7/
gpgcheck=1
gpgkey=http://192.168.55.80/ambari/ambari/centos7/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

编辑:
vim hdp.repo
修改内容:
#VERSION_NUMBER=2.6.1.0
[HDP-2.6.1.0]
name=HDP Version - HDP-2.6.1.0
baseurl=http://192.168.55.80/ambari/HDP/centos7/
gpgcheck=1
gpgkey=http://192.168.55.80/ambari/HDP/centos7/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

[HDP-UTILS-1.1.0.21]
name=HDP-UTILS Version - HDP-UTILS-1.1.0.21
baseurl=http://192.168.55.80/ambari/
gpgcheck=1
gpgkey=http://192.168.55.80/ambari/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

将上面的修改过的源放到/etc/yum.repos.d/下面。具体命令:

mv ambari.repo /etc/yum.repos.d/
mv hdp.repo /etc/yum.repos.d/

然后更新yum。具体命令:

yum clean all
yum list update
yum makecache
yum repolist

b)安装MySQL数据库(HDP-Server节点)
(1)安装:

(2)配置:
开放3306端口:
mysql -uroot -pmysql
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘mysql’ WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
(3)创建数据库:
create database ambari character set utf8 ;
CREATE USER ‘ambari’@’%’IDENTIFIED BY ‘ambari’;
GRANT ALL PRIVILEGES ON . TO ‘ambari’@’%’;
FLUSH PRIVILEGES;

create database hive character set utf8 ;
CREATE USER ‘hive’@’%’IDENTIFIED BY ‘hive’;
GRANT ALL PRIVILEGES ON . TO ‘hive’@’%’;
FLUSH PRIVILEGES;

create database oozie character set utf8 ;
CREATE USER ‘oozie’@’%’IDENTIFIED BY ‘oozie’;
GRANT ALL PRIVILEGES ON . TO ‘oozie’@’%’;
FLUSH PRIVILEGES;

(4)安装驱动:
yum install mysql-connector-java
c)安装JDK(所有节点)
(1)安装:
tar -zxvf jdk-8u121-linux-x64.tar.gz -C /opt/
ln -snf /opt/jdk1.8.0_121 /opt/jdk

(2)配置:
vim /etc/profile

JAVA_SET
export JAVA_HOME=/opt/jdk
export JRE_HOME=/opt/jre
export CLASSPATH=$JAVA_HOME/lib
export PATH=:$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

d)安装Ambari
(1)安装Ambari服务器
yum install ambari-server
注意:(如果提示找不到KEY,则执行如下命令:rpm —import /var/www/html/ambari/AMBARI-2.4.2.0/centos7/2.4.2.0-460/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins )

(2)配置Ambari
ambari-server setup
下面是配置执行流程,按照提示操作:
1.检查SELinux是否关闭,如果关闭不用操作。

Using python /usr/bin/python
Setup ambari-server
Checking SELinux…
SELinux status is ‘disabled’

2.提示是否自定义设置。输入:y。

Customize user account for ambari-server daemon [y/n] (n)? y

3.ambari-server 账号。输入:ambari。

Enter user account for ambari-server daemon (root):ambariAdjusting ambari-server permissions and ownership…

4.检查防火墙,如果关闭则不用操作。

Checking firewall status…
Redirecting to /bin/systemctl status iptables.service

5.设置JDK。输入:3。
Checking JDK…Do you want to change Oracle JDK [y/n] (n)? y
[] Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8
[] Oracle JDK 1.7 + Java Cryptography Extension (JCE) Policy Files 7
[] Custom JDK
==============================================================================
Enter choice (1): 3

6.如果上面选择3自定义JDK,则需要设置JAVA_HOME。输入:

/opt/jdk

WARNING: JDK must be installed on all hosts and JAVA_HOME must be valid on all hosts.WARNING: JCE Policy files are required for configuring Kerberos security. If you plan to use Kerberos,please make sure JCE Unlimited Strength Jurisdiction Policy Files are valid on all hosts.Path to JAVA_HOME: /opt/java/jdk1.8.0_121Validating JDK on Ambari Server…done.Completing setup…

7.数据库配置。选择:y。

Configuring database…Enter advanced database configuration [y/n] (n)? y

8.选择数据库类型。输入:3。

Configuring database…==============================================================================
Choose one of the following options:
[1] - PostgreSQL (Embedded)
[2] - Oracle
[3] - MySQL
[4] - PostgreSQL
[5] - Microsoft SQL Server (Tech Preview)
[6] - SQL Anywhere==============================================================================
Enter choice (3): 3

9.设置数据库的具体配置信息,根据实际情况输入,如果和括号内相同,则可以直接回车。

Hostname (localhost):
Port ():
Database name (ambari):
Username (ambari):
Enter Database Password (Ambari-123):

10.提示必须安装MySQL JDBC,回车结束ambari配置。

WARNING: Before starting Ambari Server, you must copy the MySQL JDBC driver JAR file to /usr/share/java.
Press to continue.

11.提示是否配置远程数据库连接属性。输入:y

Proceed with configuring remote database connection properties [y/n] (y)? y

11.将Ambari数据库脚本导入到数据库。
如果使用自己定义的数据库,必须在启动Ambari服务之前导入Ambari的sql脚本。用Ambari用户(上面设置的用户)登录mysql

mysql -uroot -pmysql
use ambari
source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql

(3)启动
ambari-server start

(4)开始安装:
http://192.168.55.80:8080/
用户密码:admin/admin


选择Launch Install Wizard

设置集群名称

设置HDP 安装源,选择HDP2.6 ,并且设置Advanced Repository Options 的信息,本次使用本地源,所以修改对用系统的安装源为本地源地址。
具体配置为:
HDP-2.6:http://192.168.55.80/ambari/HDP/centos7/
HDP-UTILS-1.1.0.21:http://192.168.55.80/ambari/


Target Hosts输入主机域名:
HDP-Master.boco.com
HDP-Slave1.boco.com
HDP-Slave2.boco.com
HDP-Slave3.boco.com
Host Registration Information:选择已保存的sshkey文件。


根据情况选择。(我这里是全选)

这里需要根据实际情况调整。(我这里将所有的主节点组件都放在了master节点上)

根据实际情况调整。(我这里将slaves和clients组件都放在了slave节点上)

设定标红的配置内容,直到没有红色提醒。
这里面需要注意的是:
1.部分目录里面是用逗号分割的二选一,保留其中的一种即可;
2.数据库部分需要是需要用自己新建的mysql数据库,则需要选择Existing MySQL / MariaDB Database,并填写相关内容。如要注意如下提醒
Be sure you have run:
ambari-server setup —jdbc-db=mysql —jdbc-driver=/path/to/mysql/mysql-connector-java.jar on the Ambari Server host to make the JDBC driver available and to enable testing the database connection.
例如:
ambari-server setup —jdbc-db=mysql —jdbc-driver=/usr/share/java/mysql-connector-java.jar
要求最终测试通过。

这里,有hive和oozie这几个数据库的连接需要填写。

直到所有配置项完成。

开始部署。


安装、启动、测试,等待完成。