如何在Centos7.2安装HDP2.6

时间:2022-05-06
本文章向大家介绍如何在Centos7.2安装HDP2.6,主要内容包括2.2.禁用SELinux、2.3.禁用防火墙、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 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.localdomain4
192.168.0.234 ip-192-168-0-234
192.168.0.235 ip-192-168-0-235
192.168.0.236 ip-192-168-0-236
192.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=disabled
SELINUXTYPE=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.conf
server 127.127.1.0
fudge 127.127.1.0 stratum 10

(可左右滑动)

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

[root@ip-192-268-0-234 ~]$ sudo vim /etc/ntp.conf
server 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 - Media
baseurl=file:///media/DVD1
gpgcheck=0
enabled=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]# ll
total 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 /test
mkdir: 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实操