centos7 ambari2.6.1.5+hdp2.6.4.0 大数据集群安装部署
前言
本文是讲如何在centos7(64位) 安装ambari+hdp,如果在装有原生hadoop等集群的机器上安装,需要先将集群服务停掉,然后将不需要的环境变量注释掉即可,如果不注释掉,后面虽然可以安装成功,但是在启动某些服务的时候可能会有异常,比如最后提到的hive启动异常。本文适合系统: RedHat7、CentOS7、Oracle Linux7(都是64位)
注意:centos7中文系统有bug(python脚本中文识别问题),需要使用英文系统。
本文仅作参考(基本每个配置博客都有局限性和坑~),推荐先参考官方文档:
https://docs.hortonworks.com/HDPDocuments/Ambari-2.6.1.5/bk_ambari-installation/content/ch_Getting_Ready.html
以下均在root用户下执行。
1、满足最低系统要求
1.1 浏览器
建议您将浏览器(自己使用的windows既可)更新至最新的稳定版本
1.2 软件要求(在每台主机上)
1
|
1.2.1 yum和rpm
|
以上软件大部分系统自带,其余可参考:CentOS 初始环境配置
2、环境准备(在每台主机上)
2.1 ssh 免密
只需master 免密到其他节点(包含自身),不需要互通,参考:linux ssh 免密登录
2.2 启用NTP
1
|
yum install -y ntp
|
2.3 编辑主机文件
1
|
vim /etc/hosts
|
本文只是在个人虚拟机上进行安装测试,所以只选择两个节点,在公司真实环境下多个节点安装是一样的,ambari对内存要求较高,如果个人电脑配置不高的话,建议学习一下即可。
1
|
192.168.44.138 ambari.master.com
|
其中后面的如ambari.master.com为完全限定域名(FQDN)(通过符号“.”),不能简单的设为master等,如果该文件里有其他映射,如上面的配置必须要在最前面(自带的localhost下面一行),否则后面安装会报错。
2.4 设置主机名
以ambari.master.com为例
2.4.1
1
|
hostname ambari.master.com
|
2.4.2
1
|
vim /etc/hostname
|
1
|
ambari.master.com
|
两步缺一不可,通过命令验证
1
|
hostname
|
两个必须都为ambari.master.com才行
2.5 编辑网络配置文件
1
|
vim /etc/sysconfig/network
|
修改HOSTNAME属性为FQDN
1
|
NETWORKING=yes
|
2.6 禁用iptables
1
|
systemctl disable firewalld
|
2.7 禁用SELinux
2.7.1 临时禁用
1
|
setenforce 0
|
2.7.2 永久禁用(重启机器)
1
|
vim /etc/sysconfig/selinux
|
将SELINUX改为disabled
1
|
SELINUX=disabled
|
这样服务器或虚拟机重启也没有问题。
3、制作本地源(仅在master)
因为ambari 和 hdp 安装文件比较大,如果在线安装的话会很慢,所以最好选择本地源。
(可以在集群可以访问的任何机器上制作本地源)
3.1 安装制作本地源工具
1
|
yum install yum-utils createrepo
|
3.2 创建一个HTTP服务器
1
|
yum install httpd -y
|
3.3 为Web服务器创建目录
1
|
mkdir -p /var/www/html/hdp/HDP-UTILS
|
3.4 下载系统对应的最新版相关安装包
其中包括Ambari、HDP、HDP-UTILS,由于HDP-GPL较小只有几百k,所以没有配置为本地源。
3.4.1 下载
1
|
wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.6.1.5/ambari-2.6.1.5-centos7.tar.gz
|
3.4.2 解压
1
|
tar -zxvf ambari-2.6.1.5-centos7.tar.gz -C /var/www/html
|
3.4.3 解决在浏览器访问HTTP://AMBARI.MASTER.COM/HDP/HDP/CENTOS7/2.6.4.0-91 为空白
原因:该目录下index.xml使用了 https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js 国内访问不了谷歌,将index.xml注释掉即可
1
|
cd /var/www/html/hdp/HDP/centos7/2.6.4.0-91
|
此时应该可以在浏览器访问下面的地址了,可以验证一下
1
|
http://ambari.master.com/ambari/centos7/2.6.1.5-3/
|
3.5 配置ambari、HDP、HDP-UTILS的本地源
1
|
cp /var/www/html/ambari/centos7/2.6.1.5-3/ambari.repo /etc/yum.repos.d/
|
将每个repo里的baseurl和gpgkey的地址修改为本地的
1
|
vim /etc/yum.repos.d/ambari.repo
|
1
|
#VERSION_NUMBER=2.6.1.5-3
|
1
|
vim /etc/yum.repos.d/hdp.repo
|
1
|
#VERSION_NUMBER=2.6.4.0-91
|
1
|
yum clean all
|
3.6 (可选)如果您的环境中配置了多个存储库,请在集群中的所有节点上部署以下插件
1
|
yum install yum-plugin-priorities -y
|
1
|
[main]
|
4、安装ambari(仅在master)
4.1安装ambari-server
1
|
yum install ambari-server -y
|
4.2 设置mysql连接器
1
|
ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar
|
(如果使用mysql作为hive的元数据库)
4.3 创建相关的mysql数据库
创建ambari数据库及用户,登录root用户执行下面语句:
1
|
mysql -uroot -pRoot-123
|
1
|
create database ambari character set utf8 ;
|
如果要安装Hive,再创建Hive数据库和用户,再执行下面的语句:
1
|
create database hive character set utf8 ;
|
hive用户可以不用指定全部库的权限。
4.4 配置ambari-server
4.4.1 SETUP
1
|
ambari-server setup
|
4.4.2 配置流程
以下为全部的配置过程,其中主要是自定义jdk,输入JAVA_HOME路径,自定义数据库选mysql,输入数据库用户名,密码等
1
|
ambari-server setup
|
4.4.3将AMBARI数据库脚本导入到数据库
1
|
mysql -uambari -pAmbari-123
|
4.4.4 启动AMBARI
1
|
ambari-server start
|
4.4.5 启动成功,可以通过如下地址访问:
用户名,密码为admin admin
5、使用ambari浏览器界面安装hadoop,hive等组件
5.1 登录到ambari管理界面
5.2 安装hdp集群,点击Launch Install Wizard
5.3,设置集群名称
5.4 配置本地源
其中HDP-GPL较小,用默认的即可
5.5 设置host
其中下面的为master上ssh的私钥(~/.ssh/id_rsa)
5.6 Host确认
如果失败或者卡住不动可根据日志解决,如果warn根据提示信息解决,直到全部为Success才可以进行下一步。
注:我一般根据/var/log/ambari-server/ambari-server.log 查看ambari的日志,根据里面的异常解决问题,如果没有异常,再查看ambari的其他日志文件。
下面两个是我在使用ambari时碰到的异常,可以参考:HDFS DataNode启动异常:/opt/jdk1.8.0_151/bin/java:权限不够和ambari 异常总结及解决办法
5.7 选择要安装的服务
如果有依赖其他组件选择ok即可,如安装hive依赖tez,pig等
5.8 设置各个服务Master
5.9 设置Slaves 和 Clients
5.10 自定义配置
其中红色的必须要改,大致是设置路径,密码等,如hive要设置hive元数据的数据库信息,我用的master上的mysql
测试一下连接
没有了红色的即可进行下一步,如遇到warn,可根据提示信息进行修改配置,也可以忽略警告,等装完以后再改。
5.11 review前面的配置
5.12 安装、启动、测试
这里因为个人电脑配置较低,浏览器有点卡,进度条没有显示出来。
5.13 安装完成
若最后出现警告,可以装完重启所有服务,再检查看看有没有问题,如有警告或启动失败,可根据日志排查原因,一开始安装的的组件较多的话,出现警告的可能性会大一些,所以可以先装几个必要的组件,之后一个一个组件装。
5.14 概要
5.15 hive启动异常
这次安装重启之后发现hive等服务启动不成功,我就把hive等卸载然后重装,本来以为是开始是hive没安装成功,但是重装后hive还是启动不成功,看了一下日志,发现是之前手动安装的原生的hive的环境变量没有注释掉,注释掉,重启ambari之后,再启动所有服务,就成功了(再在hive shell 里建表、插入数据、查询验证一下),所以如果在已经安装好的大数据集群上安装ambari,最好先把之前配的环境变量注释掉。