从头开始系列(一)—HDP篇之Centos 7完全离线安装HDP2.6.X

从头开始系列—HDP篇之Centos 7离线安装HDP2.6.X

标签(空格分隔): 大数据 从头开始系列


[TOC]

题外话

公司最近要搭建自己得大数据平台,因为是培训公司,就着实验环境来。所以,从头开始搭建大部分环境。总上考虑,我打算使用HDP来搭建公司的大数据平台。

HDP能满足大部分需求。

环境准备

本次安装为离线安装。安装系统为:Centos 7
三台服务器:双路24线程CPU、64G内存、1T硬盘
节点规划如下:

表一

本次安装得是HDP2.6.X系列。因为是离线安装,所以需要其相应得离线文件,他们有:

  • Centos 7 everything的iso
  • jdk 1.8+
  • MySql安装包或者使用MaraiDB
  • HDP对应得文件^footnote
    -ambari-2.5.0.3-centos7.tar.gz
    -HDP-2.6.1.0-centos7-rpm.tar.gz
    -HDP-UTILS-1.1.0.21-centos7.tar.gz
    -ambari.repo
    -hdp.repo

开始

1、服务器端设置

1.1确认环境
  1. 三台服务器的HostName,以及/etc/hosts是否符合表一描述。
    image_1cbdu203816kk41m1pdq1n6e1eh42l.png-2kB
    微信图片_20180419163422.png-4.3kB
  2. 安装ambari时,需要关闭Linux的Selinux,故需要修改/etc/selinux/config修改为selinux=disabled
    image_1cbdtvs0d1vc6kpebua6rvva1r.png-2kB
    image_1cbdu0r2fuk3vig13k11qkr17hr28.png-24.1kB
  3. 因为我们是集群环境,故需要明确确定时间问题导致的服务启动失败,解决办法有:
    1、安装ntp服务(如果大家集群环境可以联网,可以试着配置一下)
    2、使用xshell功能,设置一个相同的时间(我采用该方式)
    1.png-1.7kB
    image_1cbdtru904p513841ur9aing4c1e.png-3.3kB
  4. 需要生成ssh密钥,并且主节点需要和从节点免密登陆
    ssh-keygen -t rsa
    
    三次回车后,会出现:
    image_1cbdu8saklm8fbb6q1ohic1v3f.png-8.7kB
    然后,使用
ssh-copy-id root@hdp02
ssh-copy-id root@hdp03

OK

  1. 需要关闭防火墙

以上必要的环境我们已经搭建完成。

1.2安装必要软件包

image_1cbdv8877hlg1fte11m1hvf12i83s.png-4.4kB
准备好了所有安装包

  1. 安装JDK
    tar zxvf jdk-8u161-linux-x64.tar.gz
    mv jdk1.8.0_161/ /opt/jdk
    ##修改环境变量
    vim /etc/profile
    
    image_1cbdvo471m5t82819qp13cd13l049.png-4.1kB
    source /etc/profile
    java
    javac
    
    如果java,javac有指令返回,说明环境变量配置成功
    scp -r /opt/jdk/ root@hdp02:/opt/
    scp -r /opt/jdk/ root@hdp03:/opt/
    scp -r /etc/profile root@hdp02:/etc/
    scp -r /etc/profile root@hdp03:/etc/
    
    至此,jdk安装完成
  2. 安装MySql或者MaraiDB[需要在主节点安装,本次安装使用MaraiDB]^mysql
  3. 安装web环境
    为什么需要安装web环境,因为我们需要通过repo的方式获取安装文件,而我们下载了离线安装包,所以需要配置相关的repo文件。有很多种方式,但是我们这里直接使用Python自带的一个简单工具来开启
    ##因为我们是在/root/目录下,所以我们需要在/root/HDP目录下启动该命令
    python -m SimpleHTTPServer
    
  4. 解压所有相关文件到指定文件夹下
    ##因为我们是在/root/HDP目录下启动的web服务,所以我们需要将相关文件解压到/root目录下
    tar zxvf ambari-2.5.0.3-centos7.tar.gz
    tar zxvf HDP-2.6.1.0-centos7-rpm.tar.gz
    mkdir HDP-UTILS
    cd HDP-UTILS
    tar zxvf ../HDP-UTILS-1.1.0.21-centos7.tar.gz
    
    image_1cbe7o3s619cj1oru1a0u1tf7hvg9.png-4.6kB
    最终的目录应该如上所示。
    我们访问http://192.168.0.201:8000会发现如下界面:
    image_1cbe7s6kg1uepa810dd1lg8qdm.png-25.8kB
    这和上面的目录是一一对应的。
1.3配置本地源
  • 配置Centos 7官方镜像源

    因为我们是离线安装,没有任何联网手段,故需要配置Centos 7官方镜像源。

cd /etc/yum.repos.d/
##将所有的repo文件移动到任意一个非现在位置的地方。然后创建a.repo
vim a.repo
##之后输入:
[base]
name=LocalRepo
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
baseurl=file:///media
gpgcheck=0
enabled=1
#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

上面代码我们看到,我们指定的url在file:///media,所以我们需要将Centos 7的everything的iso包挂载到/media下。

mount CentOS-7-x86_64-Everything-1708.iso /media/
lsblk

image_1cbe90od2rqfucu15431gtvvnc13.png-12.5kB

这样表明已经挂着成功

yum makecache
  • 配置HDP相关本地源

    上面我们已经看到网页`http://192.168.0.201:8000下有很多目录。OK,我们开始配置ambari.repo

vim /etc/yum.repos.d/ambari.repo
##输入一下内容
#VERSION_NUMBER=2.4.2.0-136

[Updates-ambari-2.4.2.0]
name=ambari-2.4.2.0 - Updates
baseurl=http://192.168.0.201:8000/ambari/centos7/
gpgcheck=0
#gpgkey=http://public-repo-1.hortonworks.com/ambari/centos7/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

##注意以上的baseurl是网页上能访问到的那么目录,如下图:

image_1cbed6inmtjmmhi13gilnq1ok11g.png-34.1kB

##同样的道理
vim /etc/yum.repos.d/hdp.repo
##输入一下内容
#VERSION_NUMBER=2.6.0.0-1245
[HDP-2.6.0.0]
name=HDP Version - HDP-2.6.0.0
baseurl=http://192.168.0.201:8000/HDP/centos7/
gpgcheck=0
#gpgkey=http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.5.0.0/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

[HDP-UTILS-1.1.0.21]
name=HDP-UTILS Version - HDP-UTILS-1.1.0.21
baseurl=http://192.168.0.201:8000/HDP-UTILS/
gpgcheck=0
#gpgkey=http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.5.0.0/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

##然后
yum makecache

如果没有报错,那么恭喜你,所有本地源配置完成!
image_1cbedejhl3rh1c9a1plo1qhq1mj1t.png-35.4kB

  • 为了部落,也为了一次成功还需要配置的有
    : *需要关闭python的sll认证

         vim /etc/python/cert-verification.cfg
    

    微信图片_20180419154810.png-8.5kB
    注意该操作需要在所有节点执行

: *需要在mysql中创建ambari数据库。

2、开始安装

1、安装ambari

以上配置全部配置完成之后,重启所有节点。重启之后不要忘记开启web服务。

yum -y install ambari-server
ambari-server setup
Customize user account for ambari-server daemon [y/n] (n)? [y]
Enter user account for ambari-server daemon (root):[直接回车]
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]
Path to JAVA_HOME: [/opt/jdk]
Configuring database...
Enter advanced database configuration [y/n] (n)? [y]
==============================================================================
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):[直接回车]
Port (3306): [直接回车]
Database name (ambari): [直接回车]
Username (ambari):[root]
Enter Database Password (bigdata):[root]
WARNING: Before starting Ambari Server, you must copy the MySQL JDBC driver JAR file to /usr/share/java and set property "server.jdbc.driver.path=[path/to/custom_jdbc_driver]" in ambari.properties.
Press <enter> to continue.

注意:做到此步骤时,需要将mysql的jdbc jar包复制到/usr/share/java,并且在/etc/ambari-server/conf/ambari.properties中添加,如下:

server.jdbc.driver.path=/usr/share/java/mysql-connector-java-5.1.23.jar

然后继续

WARNING: Before starting Ambari Server, you must run the following DDL against the database to create the schema: /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
Proceed with configuring remote database connection properties [y/n] (y)? 

##/var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
##这说明我们需要去mysql中使用该文件创建表。
mysql -uroot -p

mysql> use ambari;
Database changed
mysql> source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql;
##导入完成之后,返回继续安装
##输入[y]
Adjusting ambari-server permissions and ownership...
Ambari Server 'setup' completed successfully.
##出现以上,表示设置成功。
##启动ambari
ambari-server start
Ambari Server 'start' completed successfully.[出现后表示成功启动]

OK,我们返回浏览器,访问:
http://192.168.0.201:8080
分别输入用户:admin 密码:admin
微信截图_20180419165527.png-27.2kB
微信截图_20180419165636.png-71.5kB

2、开始安装集群

上面我们已经安装好的ambari,所以我们现在开始安装HDP
image_1cbg8ch22aq916p81rc51ni25129.png-65.5kB

点击Launch Install Wizard按钮。进入如下界面:
image_1cbg8ho2siuk1khg1iv91l2vsnbm.png-52.1kB

Name your cluster中输入你想要的集群名称,然后点击Next进入下一步;
image_1cbg8r7ko1oue17n48oiabjiog13.png-76.7kB

这里必须选择Use Local Repository使用本地源,而我们选择使用HDP2.6来安装集群。
image_1cbg93b4ucsii9f186f3c211gp1g.png-50.9kB

而,我们到了这一步,需要特别注意,要正确书写源地址,如果没有正确书写会发生错误。如果一切都书写完毕,点击Next按钮进入下一步:
image_1cbg9ig81hce1njd1ej5e854be2a.png-81.8kB
在该步骤中,我们需要明确书写要安装的节点HostName也就是我在图中花框的地方hdp[01-03],还有一个框,id_rsa来源自节点hdp01生成的ssh密钥。所有都书写完毕后,点击Register and Confirm进入下一步。
image_1cbg9mfvp5dd17o11p6i1qfp92v2n.png-63.9kB
很顺利的所有节点安装成功,点击Next进入下一步:
image_1cbg9o2ae1ngrf8ej8v1bgt6gr34.png-49.4kB
该步主要是选择需要安装的服务。我这里安装了:
HDFSYARN + MapReduce2 Tez Hive HBase Pig…太多了,不写了。选择完成之后,点击Next按钮进入下一步。
下一步和下下一步的操作就不多介绍了,直接进入配置篇:
image_1cbgajj5317ed1uh11sg4187m1c283h.png-58.2kB
在配置这步骤中,会有很多需要我们手动配置的地方。这里着重说一下Hive那里,Hive我们都知道是需要配置元数据库的,所以我们这里这样选择:
image_1cbgaomk81ejdgo212h51km31ub3u.png-55.6kB
选择Existing MySQL / MariaDB Database表示使用已经存在的Mysql或者MariaDB。之后输入hive数据库名,这里我们需要创建hive数据库,书写用户名密码。在shell中这样操作:

##登陆数据库
mysql> create database hive;
##退出数据库
ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java-5.1.23.jar

然后修改Database URL链接为hdp01,点击Test Connection按钮,看是否能链接成功。
image_1cbgb0jorggp15npjcr1p121bj34b.png-4.6kB

链接成功后,将其他需要设置的点都设置完成,点击Next按钮,开始安装服务。
image_1cbgbqu7h7gd17jl74aan41jeh4o.png-58.3kB

image_1cbgbrrcgc7m1d1n11oqmlv18ta55.png-41kB

等待安装完成!(这是一个漫长的等待过程~~~~)
image_1cbgemire23614101tjsfqs19an72.png-43.1kB
我们看到,开启服务失败,不要担心,只是服务没有启动而已。我们点击Complete按钮,完成安装。
image_1cbgeojksesdhjheng1k18d57f.png-125.8kB

我们发现了好多警告,没关系,点击Actions->Start All按钮,开启所有服务,稍等片刻,即可看到服务启动成功。
image_1cbgi95cc140qhbb110cnlf1bc67s.png-136.7kB

OK!平台安装完毕~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值