0222-如何在Centos7.2安装HDP2.6

大数据
后台-插件-广告管理-内容页头部广告(手机)

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

Fayson的github:https://github.com/fayson/cdhproject

提示:代码块部分可以左右滑动查看噢

1.文档编写目的


本文档主要描述在 CENTOS7.2操作系统部署 HDP的过程。

  • 内容概述

1.集群服务器配置,包括安装操作系统、关闭防火墙、同步服务器时钟等;

2.外部数据库安装

3.安装Ambari管理器;

4.安装HDP集群;

5.集群完整性检查,包括 HDFS 文件系统、MapReduce、Hive 等是否可以正常运行。

  • 测试环境

1.操作系统版本:CENTOS7.2

2.Ambari 版本:ambari-2.6.1.5

3.HDP 版本:HDP2.6.4

4.采用 root 对集群进行部署

2.前置准备

2.1.hostname及 hosts配置


集群中各个节点之间能互相通信使用静态IP 地址。IP 地址和主机名通过/etc/hosts 配置,主机名/etc/hostname 进行配置。

以 ambari 节点(192.168.0.234)为例:

1.hostname配置,/etc/hostname 文件如下:

ip-192-168-0-234

(可左右滑动)

或者你可以通过命令修改立即生效

[root@ip-192-168-0-234 ~]# hostnamectl set-hostname ip-192-168-0-234

(可左右滑动)

注意:这里修改 hostname 跟 REDHAT6 的区别

2.hosts配置,/etc/hosts文件如下:

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4192.168.0.234 ip-192-168-0-234192.168.0.235 ip-192-168-0-235192.168.0.236 ip-192-168-0-236192.168.0.237 ip-192-168-0-237

(可左右滑动)

以上两步操作,在集群中其它节点做相应配置。

2.2.禁用SELinux


在所有节点执行setenforce 命令,此处使用批处理 shell 执行:

[root@ip-192-168-0-234 ~]$ sh batch_cmd.sh node.list "setenforce 0"

(可左右滑动)

集群所有节点修改/etc/selinux/config文件如下:

SELINUX=disabledSELINUXTYPE=targeted

(可左右滑动)

2.3.禁用防火墙


集群所有节点执行sudo systemctl stop 命令,此处通过shell 批量执行命令如下:

[root@ip-192-168-0-234 ~]$ sh batch_cmd.sh node.list "systemctl stop firewalld"[root@ip-192-168-0-234 ~]$ sh batch_cmd.sh node.list "systemctl disable firewalld"[root@ip-192-168-0-234 ~]$ sh batch_cmd.sh node.list "systemctl status firewalld"

(可左右滑动)

 

2.4.配置服务器的免密登陆


1.在集群每台节点生成密钥对,执行命令

ssh-keygen -t rsa -P "" -f /root/.ssh/id_rsa

(可左右滑动)

这里使用批量执行脚本:

 

2.配置192.168.0.234对集群其他所有节点的免密登陆,将192.168.0.234节点的公钥导入到authorized_keys文件中,使用批量脚本执行:

首先将192.168.0.234的公钥拷贝到其他所有节点的/root目录下:

 

然后将/root/id_rsa.pub导入到authorized_keys文件中:

 

验证免密登陆:

 

2.5.集群时钟同步


配置 ntp 时间同步, 将192.168.0.234机器作为本地 ntp 服务器,其他 3 台机器与其保持同步,配置片段:

1.192.168.0.234使用如下配置

[root@ip-192-268-0-234 ~]$ sudo vim /etc/ntp.confserver 127.127.1.0fudge 127.127.1.0 stratum 10

(可左右滑动)

2.集群其它节点:在注释下增加如下配置:

[root@ip-192-268-0-234 ~]$ sudo vim /etc/ntp.confserver 192.168.0.234

(可左右滑动)

3.重启所有机器的 ntp 服务

[root@ip-192-268-0-234 ~]$ sh batch_cmd.sh node.list "systemctl restart ntpd”

(可左右滑动)

4.验证时钟同步,在所有节点执行 ntpq -p 命令,如下使用脚本批量执行:

 

2.6.配置操作系统repo


1.挂载操作系统iso文件

[root@ip-192-168-0-234 ~]$ mkdir /media/DVD1[root@ip-192-168-0-234 ~]$ mount -o loop CentOS-7-x86_64-DVD-1611.iso /media/DVD1/

(可左右滑动)

2.配置操作系统repo

[root@ip-192-168-0-234 ~]$ vim /etc/yum.repos.d/local_os.repo[local_iso]name=CentOS-$releasever - Mediabaseurl=file:///media/DVD1gpgcheck=0enabled=1

(可左右滑动)

2.7.安装httpd服务


1.安装httpd服务

[root@ip-192-168-0-234 ~]$ yum -y install httpd

(可左右滑动)

2.启动httpd服务

[root@ip-192-168-0-234 ~]$ systemctl start httpd

(可左右滑动)

3.安装完 httpd 后,重新制作操作系统 repo,换成 http 的方式方便其它服务器也可以访问

[root@ip-192-168-0-234 ~]$ mkdir /var/www/html/iso[root@ip-192-168-0-234 ~]$ scp -r /media/DVD1/* /var/www/html/iso/

(可左右滑动)

 

2.8.安装MySQL数据库


1.在192.168.0.234节点安装mysql数据库:

 

2.启动并配置数据库:

启动mariadb,执行systemctl start mariadb

 

配置mariadb,执行/usr/bin/mysql_secure_installation命令,并设置root密码:

 

创建ambari数据库,执行命令create database ambari

 

创建ambari用户并设置密码和权限

MariaDB [ambari]> CREATE USER 'ambari'@'%' IDENTIFIED BY 'bigdata';Query OK, 0 rows affected (0.01 sec)MariaDB [ambari]> GRANT ALL PRIVILEGES ON ambari.* TO 'ambari'@'%';Query OK, 0 rows affected (0.00 sec)MariaDB [ambari]> FLUSH PRIVILEGES;Query OK, 0 rows affected (0.00 sec)

(可左右滑动)

 

3.创建Hive数据库及用户

 

3.安装Ambari

3.1.配置Ambari和HDP本地yum源


1.准备好ambari和HDP的安装包,并解压到/var/www/html目录下:

   

2.配置repo文件

Ambari的repo:

 

HDP的repo:

 

HDP-UTILS的repo:

 

HDP-GPL的repo

 

2.使用浏览器查看yum源是否可用

       

3.2.安装Ambari


1.在192.168.0.234节点上执行yum install ambari-server -y命令:

 

3.3.安装jdk


如果选择客户端安装JDK则需要执行以下步骤,如果服务器可以访问外面,并选择自动安装JDK,则可以略过以下步骤。

1.将jdk上传至192.168.0.234节点的/usr/java/目录,并解压

 

2.执行tar -zxvf jdk-8u111-linux-x64.tar.gz命令进行解压:

 

3.将解压好的jdk拷贝至其他节点,使用批量执行脚本

 

3.4.安装mysql驱动


1.上传mysql驱动包至/usr/share/java目录

[root@ip-192-168-0-234 ~]# ll /usr/share/java/total 940-rw-r--r--. 1 root root 960372 Nov 9 23:37 mysql-connector-java-5.1.34.jar[root@ip-192-168-0-234 ~]# cd /usr/share/java/[root@ip-192-168-0-234 java]# lltotal 940-rw-r--r--. 1 root root 960372 Nov 9 23:37 mysql-connector-java-5.1.34.jar

(可左右滑动)

 

2.方便起见,将mysql驱动拷贝至其他节点的相同目录

 

3.设置mysql驱动,执行命令:

ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar 

(可左右滑动)

 

3.5.初始化Ambari


执行命令ambari-server setup

   

界面中黄色标记的是需要操作的步骤:

1:按回车继续

2:按回车继续

4:输入数字3,选客户端安装jdk,如果服务器可以访问外网,则可以选1,自动下载jdk1.8,默认下载的安装目录是/usr/java/default

5:输入安装的java目录,所有服务器保持一致

6:输入“y“,进行数据库的高级配置

7:输入“3“,选择mysql/mariadb数据库

8:设置数据库的配置参数:host,port,database,username,password

9:按回车继续

执行完以上操作后,可以看到ambari-server setup完成。

3.6.初始化ambari数据库


1.初始化ambari数据库,在192.168.0.234服务器上执行以下命令:

[root@ip-192-168-0-234 ~]# mysql -uroot -p -Dambari < /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql

(可左右滑动)

2.查看是否初始化完成:

 

3.7.启动ambari-server


1.执行ambari-server start命令:

 

3.8.访问ambari的web界面


用浏览器访问http://192.168.0.234:8080,用户名和密码默认都是admin

   

4.安装HDP

4.1.点击“Launch Install Wizard“


 

4.2.输入集群名,然后点“Next“


 

4.3.选择HDP版本


这里使用HDP2.6,并配置HDP的Repository,这里使用的Local Repository:

 

4.4.输入安装的主机,并输入Ambari节点SSH的私钥


 

4.5.确认主机


 

4.6.等待安装完成,然后点击“Next“


 

这里需要注意,主机注册成功后会对主机进行前置检查,如果有警告,需要进行检查并按要求进行相应的修改。

4.7.选择安装的服务


这里为了加快安装只选了常用的几个服务:

 

4.8.分配服务Master角色


实际部署时需按规划设计进行分配:

 

4.9.工作节点角色分配


 

4.10.修改服务默认配置


 

4.11.查看服务安装


 

4.12.进入服务安装


   

进行安装的过程中如果出现缺少libtirpc-devel包,请参照“5安装问题->问题一“解决。

4.13.安装完成


点击“Complete“进入主页:

 

5.组件功能验证

5.1.HDFS功能验证


[root@ip-192-168-0-234 test]# hdfs dfs -mkdir /testmkdir: Permission denied: user=root, access=WRITE, inode="/test":hdfs:hdfs:drwxr-xr-x[root@ip-192-168-0-234 test]# sudo -u hdfs hdfs dfs -mkdir /test[root@ip-192-168-0-234 test]# sudo -u hdfs hdfs dfs -chown root:root /test[root@ip-192-168-0-234 test]# hdfs dfs -put a.txt /test[root@ip-192-168-0-234 test]# hdfs dfs -cat /test/a.txt

(可左右滑动)

 

5.2.Hive功能验证


创建Hive表并插入测试数据,执行以下命令:

CREATE TABLE table_date2(s1 STRING, s2 STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY ",";INSERT INTO TABLE table_date2 values('2015-10-26 16:23:00','test');

(可左右滑动)

   

5.3.MapReduce任务验证


hadoop jar /usr/hdp/2.6.4.0-91/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 5 5

(可左右滑动)

   

6.安装问题


问题一:出现缺少libtirpc-devel包,导致无法安装服务:

 

1.下载libtirpc-devel和libtirpc两个包,下载地址:

http://mirror.centos.org/centos/7/os/x86_64/Packages/libtirpc-0.2.4-0.10.el7.x86_64.rpm

http://mirror.centos.org/centos/7/os/x86_64/Packages/libtirpc-devel-0.2.4-0.10.el7.x86_64.rpm

 

2.然后做成yum源,进行升级安装两个包

 

3.执行createrepo命令:

 

4.创建repo文件,并分发到其他节点

   

5.升级libtirpc

 

6.安装libtirpc-devel

 

提示:代码块部分可以左右滑动查看噢

为天地立心,为生民立命,为往圣继绝学,为万世开太平。

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

 

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操

后台-插件-广告管理-内容页尾部广告(手机)
标签:

评论留言

我要留言

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。