搭建平台之前请查看Ambari,Hdp,Centos版本之间是否兼容
1.机器节点
192.168.12.21 hdp01.hadoop
192.168.12.22 hdp02.hadoop
192.168.12.23 hdp03.hadoop
2.环境预备工作
- CentOS 7.5(英文版最小化安装+工具包)
- Jdk 1.8
- Ambari 2.6.2
- HDP 2.6.4
- Mysql 5.7
- HDP Utils 1.1.0.21
- Python 2.7.x
- ntp时间同步 (master时间同步定时任务:vi /etc/crontab
3.关闭防火墙(三台)
- 临时关闭:systemctl stop firewalld
- 防火墙开机关闭:systemctl disable firewalld
- 开机启动:systemctl enable firewalld
- 查看状态:systemctl status firewalld
4.关闭selinux(三台)
- 永久关闭:编辑/etc/selinux/config
将文本中的SELINUX=enforcing,改为SELINUX=disabled。然后重启
- 即时有效:setenforce 0
5.修改hosts(三台)
192.168.12.21 hdp01.hadoop
192.168.12.22 hdp02.hadoop
192.168.12.23 hdp03.hadoop
6.集群间互信(三台)
- ssh-keygen -t rsa # 一路回车 # 将公钥添加到认证文件中
- cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
- chmod 600 authorized_keys
- 将三台机器id_rsa.pub整合在authorized_keys中,然后分发到各节点
7.时间同步(三台)
安装ntp服务(所有机器)
yum -y install ntp
设置hdp1,hadoop为主服务器,开启nptd服务(主服务器)
vim /etc/ntp.conf
systemctl start ntpd.service #启动服务
systemctl enable ntpd.service #开机自启动
各子节点
crontab -e
0-59/10 * * * * /usr/sbin/ntpdate hdp01.hadoop
8.安装httpd服务(主)
- yum -y install httpd
- service httpd restart 或 systemctl restart httpd
9.安装jdk1.8(三台)
压缩包目录:/usr/local/src
tar -zxvf jdk-8u172-linux-x64.tar.gz
编辑环境变量 vim /etc/profile
export JAVA_HOME=/usr/local/src/jdk1.8.0_172
export JRE_HOME=/usr/local/src/jdk1.8.0_172/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH
使之生效 source /etc/profile
10.安装mysql数据库(任意节点)
先检查本节点是否存在MySQLrpm -qa | grep mysql
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum update
yum install mysql-server
systemctl start mysqld
systemctl status mysqld
mysqladmin -u root password "root@1234";
行:create database ambari; (创建ambari数据库)
执行:GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'localhost' IDENTIFIED BY 'ambari'; (创建ambari用户)
执行:GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'%' IDENTIFIED BY 'ambari';
执行:create database hive; (创建hive数据库)
执行:GRANT ALL PRIVILEGES ON *.* TO 'hive'@'localhost' IDENTIFIED BY 'hive'; (创建hive用户)
执行:GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%' IDENTIFIED BY 'hive';
执行:FLUSH PRIVILEGES; (刷新权限)
执行:quit;
update user set authentication_string=password("root@1234") where user="root"; //更新用户密码
set global validate_password_policy=0; //修改密码策略,mysql5.7密码特殊
set global validate_password_length=1;
alter user 'root'@'localhost' identified by 'root';
11.添加mysql驱动包
- mkdir -p /usr/share/java/
- 上传驱动包:将mysql-connector-java-5.1.27.jar上传到该目录
- 修改jar包权限: chmod 777 mysql-connector-java-5.1.27.jar
- 修改包名:mv mysql-connector-java-5.1.27.jar mysql-connector-java.jar
12.安装相应包
所有依赖的安装包及下载地址可从下面的网址获取:
- ambari 2.6.2:https://docs.cloudera.com/HDPDocuments/Ambari/Ambari-2.6.2.0/index.html
- hdp 2.6.4:https://docs.cloudera.com/HDPDocuments/HDP2/HDP-2.6.4/index.html
创建 mkdir -p /var/www/html/hdp
将其解压到/var/www/html/hdp下然后验证,打开浏览器http://192.168.12.21/hdp/
然后将Ambari.repo,hdp.repo拷贝至/etc/yum.repos.d下
编辑 Ambari.repo
编辑 hdp.repo
- 安装生成repo工具 :yum -y install createrepo
- 清理缓存:yum clean all
- 建立缓存:yum makecache
13.安装服务
1)通过yum安装Ambari Server
yum install ambari-server
2)建立Ambari与MySQL驱动的连接
ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar
3)初始化Ambari Server
ambari-server setup
4) 初始化Ambari数据库
进入mysql切换ambari库,执行一下语句
source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
5)启动Ambari
ambari-server start
6) 浏览器验证
浏览器输入:http://192.168.12.21:8080/#/login 用户名密码admin
14.安装hdp
给集群起名称 cluster_1
选择hdp版本,选择本地仓库,并删除没用os
然后配三台机器hostname 主机注册SSH方式,这需要提供ssh免密访问所用私有证书(主节点);
确认机器 选择服务 分配节点 三个agent 一个server 选择服务,安装服务,一步步按照要求做
最终完成页面
=====================================================================
vim /etc/ambari-agent/conf/ambari-agent.ini
[security]
force_https_protocol=PROTOCOL_TLSv1_2