基于Ambari的HDP搭建
一、环境准备
1.修改hosts和hostname
临时且永久生效,不用重启服务器(需断开连接重连)
hostnamectl set-hostname xxx
2.配置免密
因为在ambari和hdp部署过程中,ambari和hdp部署的节点都有可能互相访问,所以建议每个节点之间都可以ssh无密码登录,包括它们自己登录到自己。
ssh-keygen
ssh-copy-id 你想连的机器ip
把私钥id_rsa拷给你想连的机器
再给自己注册一份ssh-copy-id 自己的ip
3.关闭防火墙
1)查看防火墙状态:firewall-cmd --state
2)关闭防火墙:systemctl stop firewalld.service
3)禁止防火墙开机启动: systemctl disable firewalld.service
4)查看服务是否开机启动: systemctl is-enabled firewalld.service
4 关闭SELinux(相当于360杀毒软件)
1)查看关闭状态
/usr/sbin/sestatus -v
2)关闭方法
vim /etc/selinux/config
把文件里的SELINUX=disabled
3)临时关闭selinux(无需重启),从enforcing(强制模式:拦截访问)到permissive(启动宽松模式:不拦截访问)
setenforce 0
4)查看当前模式
getenforce
/usr/sbin/sestatus -v 查看selinux的修改状态
5.修改系统Linux值
使用ulimit -a来查看所有限制值
ulimit -a
其中“open files (-n) 1024”,是Linux操作系统对一个进程打开的文件句柄数量的限制
修改ulimit大小
ulimit -n 10000
6.安装jdk
rpm -ivh jdk-8u144-linux-x64.rpm
(会自动安装在/usr/java/下)
vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_144
export PATH=$PATH:$JAVA_HOME
7.安装mysql
mkdir -p /opt/tools/mysql
tar -xf mysql-5.7.22-1.el7.x86_64.rpm-bundle.tar -C /opt/tools/mysql
# 删除系统自带的MySQL-libs
yum remove -y mysql-libs
# 安装server时要依赖
yum install -y net-tools
# 离线安装
rpm -vih /opt/tools/mysql/mysql-community-common-5.7.22-1.el7.x86_64.rpm
rpm -vih /opt/tools/mysql/mysql-community-libs-5.7.22-1.el7.x86_64.rpm
rpm -vih /opt/tools/mysql/mysql-community-client-5.7.22-1.el7.x86_64.rpm
yum install -y /opt/tools/mysql/mysql-community-server-5.7.22-1.el7.x86_64.rpm
rpm -ivh /opt/tools/mysql/mysql-community-libs-compat-5.7.22-1.el7.x86_64.rpm
# 启动MySQL
systemctl start mysqld
systemctl status mysqld
# cat /var/log/mysqld.log | grep password 查看初始化密码
# 登录
mysql -uroot -p
# 输入初始化密码
# 设置校验密码的长度
set global validate_password_policy=LOW;
# 修改密码
set password=PASSWORD('12345678');
# 修改my.cnf,默认在/etc/my.cnf,执行:vim /etc/my.cnf,添加如下内容:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
character_set_server=utf8
#创建ambari和hive的元数据库以及对外开放权限
create database ambari character set utf8;
grant all on ambari.* to 'ambari'@'%' identified by 'ambari_root';
flush privileges;
create database hive character set utf8;
grant all on hive.* to 'hive'@'%' identified by 'hive_root';
flush privileges;
set global validate_password_policy=LOW;
grant all privileges on *.* to 'root'@'%' identified by '12345678';
flush privileges;
# 重启生效
systemctl restart mysqld
#mysql开机自启
systemctl enabled mysql
8.配置http服务
yum -y install httpd
systemctl start httpd
systemctl status httpd
9.集群包和配置
创建一个wbe目录:mkdir -p /var/www/html
1)Ambari:web应用程序,后台维Ambari server,主要与负责HDP部署的集群工作节点通信等。
tar -zxvf ambari-2.7.5.0-centos7.tar.gz -C /var/www/html/
cp /var/www/html/ambari/centos7/2.7.5.0-72/ambari.repo /etc/yum.repos.d
vim /etc/yum.repos.d/ambari.repo
2)HDP:包中有很多常见的工具,比如hadoop,hive,hbase等
tar -zxvf HDP-3.1.5.0-centos7-rpm.tar.gz -C /var/www/html/
cp /var/www/html/HDP/centos7/3.1.5.0-152/hdp.repo /etc/yum.repos.d
vim /etc/yum.repos.d/hdp.repo
如上图所示
3)HDP-UTIL:公共包,比如zk一些公共组件
操作如上
4)HDP-GPL:一些开源的
操作如上
10.集群安装部署
1)在安装ambari的机器上执行yum install ambari-server命令,操作如下所示:
yum -y install ambari-server
如报错,看报错原因。如拒绝连接,有可能http服务没开。或者配置文件没配好,再检查检查。
#ambari-server安装完成之后才能有以下操作
#使用ambari库,生成元数据表
use ambari
source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql;
#jdbc
yum install mysql-connector-java
生成的java包自动在/usr/share/java/下
生效(安装完ambari-server服务才能执行)
ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar
2)没有报错的话,ambari-server安装成功,接下来执行
ambari-server setup -j /usr/java/jdk1.8.0_144
-j 后面是指定的jdk的location
出现提示就输入y,其他回车。
默认是启动postgre数据库来存储元数据。前面咱们安装了mysql,在这里也可以选择mysql。
3)启动ambariserver服务
ambari-server start
如果报错
ERROR: Exiting with exit code 1.
REASON: Server not yet listening on http port 8080 after 90 seconds. Exiting.
不用管jps查看后台正常运行server,直接访问web即可
Ambari-server启动成功后,可以通过http://node1:8080访问,用户名和密码都是admin;
二、平台页面安装向导
0.点击开始安装向导
1.Select Version 选择版本
因为我们装的是HDP3版本所以这里会自动识别,不用在选择。
需要勾选一下我们使用本地的存储库。
因为我们装的是CentOs7版本的,所以下面除了红帽7这个留着,其他的都remove掉
2、Install options安装选项
3.Confirm Hosts 验证hosts
因为我只装了两台,所以这里只有两个
4.Choose Server选择服务
我们先安装常见的服务,后期需要什么可随时addserver
我这里只选择了一些基础的组件
5.Assign Master 分配主机点
这里虽然默认帮我们分配好了 但尽量要让每台节点都均衡一下。
6.Assign Slaves and Clients 分配从属服务器和客户端
7.Customize Services 自定义服务
剩下的第8、9、10步骤,如果上面操作没问题的话。等着安装完成即可!!
最后如果你看到了这个页面,恭喜你完成搭建。
注意:如果需要HDP资源包,可给我留言~~