基于ambari2.5.0.3+hdp2.5.3的hadoop集群环境搭建图文教程
本文以图文并茂的方式,旨在说明如何在自己的虚拟机上搭建hadoop集群环境,由于环境不同仅供大家参考!
一、机器环境详细说明:
虚拟机:VirtualBox5.1.28
linux系统:centos6.9
jdk:Java HotSpot(TM) 64-Bit 1.8.0_152
数据库:MySQL5.1
ambari:ambari2.5.0.3
hdp:hdp2.5.3
节点数:4个,关闭所有机器的防火墙,设置好时钟同步
集群方式:完全分布式
机器IP | 机器名 | 角色 | 备注 |
---|---|---|---|
192.168.65.111 | master | ambari-server | 主服务器 |
192.168.65.112 | slave1 | ambari-agent | 从服务器 |
192.168.65.113 | slave2 | ambari-agent | 从服务器 |
192.168.65.114 | slave3 | ambari-agent | 从服务器 |
二、配置集群间机器名
为了方便集群间的访问,我们按上表为每个机器配置好他们的机器名。
通过 /etc/sysconfig/network 配置文件修改其机器名。
通过 /etc/hosts 配置文件来设置其FQDN(Fully Qualified Domain Name)全限定域名。
主服务器192.168.65.111设置为主机名为master,全限定域名为master.hadoop。
按相同设置来分别配置其他三个节点,对应表如下:
机器IP | 机器名 | 全限定域名 |
---|---|---|
192.168.65.111 | master | master.hadoop |
192.168.65.112 | slave1 | slave1.hadoop |
192.168.65.113 | slave2 | slave2.hadoop |
192.168.65.114 | slave3 | slave3.hadoop |
三、配置集群间ssh互通
由于hadoop集群间存在任务计划分发、心跳监测以及任务管理、多租户管理等等通信,为了通信安全选择采用ssh方式,为了方便通信我们将ssh配置成无密码免登陆方式。具体操作请参考我的另一篇博文:Linux主机ssh使用秘钥方式实现免登陆互通配置
四、通过yum安装ambari-server
ambari-server安装在主服务器192.168.65.111上。
1、配置ambari-server的yum源,使用wget命令下载ambari的yum源。
wget -nv http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.5.0.3/ambari.repo -O /etc/yum.repos.d/ambari.repo
操作完毕后,在/etc/yum.repos.d目录下会多一个ambari.repo文件。
通过yum repolist命令验证yum源配置是否成功:
2、通过yum命令安装ambari-server
使用 yum install ambari-server 命令来安装ambari-server,然后输入 y 确认安装。如下图:
安装完成后返回 complete!
3、启动ambari-server并配置其参数
通过yum命令安装完ambari-server组件后,我们要先通过ambari-server setup命令完成它的初始化和参数配置。
1)、如果你的SELinux未关闭,则会有警告信息,选择 y 即可。
Setup ambari-server
Checking SELinux…
SELinux status is ‘enabled’
SELinux mode is ‘enforcing’
Temporarily disabling SELinux
WARNING: SELinux is set to ‘permissive’ mode and temporarily disabled.
OK to continue [y/n] (y)? y
2)、如果默认使用root用户来运行ambari则选择 n,否则选择 y 并输入之前创建好的用户。这里我们选择 n。
Customize user account for ambari-server daemon [y/n] (n)? n
3)、下面选择JDK环境,这里我们选择 3。
然后输入系统配置好的JDK环境/usr/java/jdk1.8.0_152。
Adjusting ambari-server permissions and ownership…
Checking firewall status…
Checking JDK…
[1] Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8
[2] Oracle JDK 1.7 + Java Cryptography Extension (JCE) Policy Files 7
[3] Custom JDK
\================================================================\
Enter choice (1): 3
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: /usr/java/jdk1.8.0_152
Validating JDK on Ambari Server…done.
4)这里我们选择自定义指定ambari的数据库,故选择 y。
Completing setup…
Configuring database…
Enter advanced database configuration [y/n] (n)? y
5)、这里我们输入3,选择MySQL。然后设置其数据库和用户信息:
Choose one of the following options:
[1] - PostgreSQL (Embedded)
[2] - Oracle
[3] - MySQL / MariaDB
[4] - PostgreSQL
[5] - Microsoft SQL Server (Tech Preview)
[6] - SQL Anywhere
[7] - BDB
Enter choice (1): 3
Hostname (localhost): localhost
Port (3306): 3306
Database name (ambari): ambari
Username (ambari): ambari
Enter Database Password (bigdata):
整个过程截图如下:
至此ambari的初始化相关参数设置完毕。
4、配置mysql中ambari用户环境。
创建ambari数据库和ambari用户:
CREATE DATABASE ambari CHARCTER SET utf8 ;
CREATE USER ‘ambari’@’%’ IDENTIFIED BY ‘bigdata’;
GRANT ALL PRIVILEGES ON . TO ‘ambari’@’%’;
GRANT ALL PRIVILEGES ON . TO ‘ambari’@’localhost’;
执行ambari提供的SQL脚本,初始化ambari库。注意切换到ambari用户和数据库中。
mysql -uambari -pbigdata;
use ambari;
source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql;
5、启动ambari-server并验证访问ambari,经过以上配置完成安装。
启动ambari:ambari-server start
访问ambari验证其是否启动:http://192.168.65.111:8080/
五、ambari安装hdp的hadoop集群
输入admin/admin登陆ambari,选择Launch Install Wizard开始安装hdp。
1、配置集群名称,选择hdp版本,指定集群节点
设置集群名字:
选择版本2.5.3,由于我们使用的是centos6.9系统,故下面的repositories中只保留redhat6:
设置集群节点全限定域名:
进入验证节点信息:
各个节点验证通过,ambari-agent安装完毕:
2、安装HDFS、MapReduce、Zookeeper组件
进入安装hadoop组件的环节,这里我们先安装HDFS、MapReduce2和Yarn。其中ambari会要求我们安装zookeeper和ambariMetrics和SmartSense。
分配组件到集群中各节点,我们按默认分配即可:
分配从服务器和客户端节点:
vc=" src="http://www.2cto.com/uploadfile/Collfiles/20180416/20180416091645568.png" />
服务参数设置,按默认即可:
参数设置完毕下一步后,进入部署确认页面:
我们点击deploy按钮,进入部署阶段:
正常的话需要40分钟左右的时间即可完成,时间长短取决于安装的组件多少和机器的性能及网络状况。当然中间还会出现安装失败的情况,那么恭喜你中奖了,这时需要retry来重新安装:
我是在这里中大奖了,前后重新retry不下10次,具体几次都记不清了,心理万马奔腾啊。但经过不懈努力终于走上了正轨:
安装完成后,会自动启动和测试安装的组件:
经过不断的努力尝试,终于安装成功,点击下一步,查看摘要说明:
结果写的正常用时24分钟,可实际却是折腾了一天的时间,你说我容易嘛~!
3、查看刚刚创建的名为hdp_haoop的hadoop集群情况
终于完美展现:
以上步骤,就是基于ambari+hdp搭建hadoop集群环境的完整过程,只要大家细心操作,耐心等待肯定没有问题。切记在操作前,确保环境正确,尤其是以下几点:
ssh免密码登陆配置
关闭防火墙和SELinux
在MySQL数据库中创建ambari用户和数据库并执行ambari提供的数据库脚本
开启htp时钟同步
上一篇: 云计算ALS算法推荐
推荐阅读
-
基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持续集成交付环境的详细教程
-
Windows7下安装 Nodejs 并在 WebStorm 9.0.1 下搭建编译 LESS 环境的图文教程
-
PHP服务端环境搭建的图文教程(分享)
-
搭建基于Docker的PHP开发环境的详细教程
-
Vscode搭建远程c开发环境的图文教程
-
Ubuntu 搭建基于Docker的LNMP+Redis的开发环境(图文)
-
基于ambari2.5.0.3+hdp2.5.3的hadoop集群环境搭建图文教程
-
基于CentOS的Hadoop分布式环境的搭建开发
-
基于IntelliJ IDEA 13搭建Android集成开发环境(图文教程)
-
VMware Workstation Pro 16搭建CentOS8虚拟机集群的图文教程