AI大数据 爬虫Python AI Sql玩转大数据

大数据(Hadoop)完全分布式集群安装(全)

2021-06-13  本文已影响0人  顾子豪

一、大数据概述

大数据概念

大数据(Big Data):指的是传统数据处理应用软件不足以处理(存储和计算)它们的大而复杂的数据集。

主要解决,海量数据的存储和海量数据的运算问题。

大数据特征

1、容量(Volume):数据的大小决定所考虑的数据的价值和潜在的信息

新浪微博,3 亿用户,每天上亿条微博

朋友圈,8 亿用户,每天亿级别朋友圈

2、种类(Variety):数据类型的多样性,包括文本,图片,视频,音频

结构化数据:可以用二维数据库表来抽象,抽取数据规律

半结构化数据:介于结构化和非结构化之间,主要指 XML,HTML 等,也可称非结构化

非结构化数据:不可用二维表抽象,比如图片,图像,音频,视频等

3、速度(Velocity):指获得数据的速度以及处理数据的速度

数据的产生呈指数式爆炸式增长

处理数据要求的延时越来越低

4、价值(Value):合理运用大数据,以低成本创造高价值

综合价值大,隐含价值大

单条数据记录无价值,无用数据多

二、Hadoop及大数据生态圈

Hadoop产生背景

1、Hadoop 最早起源于Nutch。Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题 ——如何解决数十亿网页的

存储和索引问题

2、2003 -2004年谷歌发表的三篇论文为该问题提供了可行的解决方案

3、Nutch的开发人员完成了相应的开源实现HDFS 和 MapReduce,并从Nutch中剥离成为独立项目

Hadoop,到 2008 年 1 月,Hadoop 成为Apache 顶级项目,迎来了它的快速发展期。

什么是Hadoop?

1、Hadoop 是 Apache 旗下的一套开源软件平台

2、Hadoop 提供的功能:利用服务器集群,根据用户的自定义业务逻辑,对海量数据进行分布式处理存储+运算

3、Hadoop 的核心组件有:

4、广义上来说,Hadoop 通常是指一个更广泛的概念--Hadoop 生态圈

Hadoop发行版本

Hadoop 三大发行版本: Apache、Cloudera、Hortonworks

Apache版本最原始(最基础)的版本,对于入门学习最好。

Cloudera公司:Cloudera产品主要为CDH,Cloudera Manager。兼容性,安全性,稳定性上较强。

Hortonworks公司:Hortonworks Data Platform(HDP),可以使用安装和管理系统Ambari进行统一安装和管理监控。

三、分布式集群的安装与部署

VMware12软件的安装

再检查“网络连接” 再检查“网络连接” ,会给我们多生成两种连接方式

这都是必须的正常。

至此,我们的虚拟机安装成功

VMware虚拟机安装CentOS 7系统

Linux 安装可能会出现的问题:

安装 vmware的时候,可能会提示 Intel VT-x没开启

图片.png

1、想办法进入主机的 BIOS ,不同厂商的计算机在启动时按不同的按键 ,F2,F10 ,Del 键等

2、首先在 BIOS 中看到 main(概要)选择进入 Advanced 高级 —— CPU Configuration处理器设置;

2、找到 Intel Virtualization Technology英特尔虚拟化技术选项, 设置为 Enabled 开启 ,再 F10保存退出即可。

最佳实践 :根据自己的电脑型号 ,去搜索怎么进入 BIOS ,怎么开启主板上的虚拟技术开关。

具体安装步骤

1、打开 vmware 虚拟机软件

图片.png

2、在菜单栏找到“文件”, 点开,下拉框中点击“新建虚拟机”,进入如下对话界面。两种 方式, 如果选择“典型”,相对自定义”选项来说,会有很多配置虚拟机的参数的,这是推荐方式,如果不想使用默认的 “典型” 则选择“自定义”,那么直接点击下一步即可。 在此我选择 “自定义 ”的原因就是为了让大家熟悉 vmware在配置虚拟机过程中到底做了些 什么操作。

图片.png

3、该步骤没什么可 操作性,直接点击“下一步“即可

图片.png

4、在该步骤中,注意指定 iso镜像文件。 请选择第三项,稍后安装。然后点击“下一步” 。

图片.png

5、然后在出现的 “命名虚拟机”框中,填写虚拟机的名称以及存放位置。如无特殊要 求,按照我的填写即可。如果放在 C盘,那么 C盘的空间至少要有 20G 左右的富余 ,否 则不要放 C盘。 点击“下一步” 进入下一步

图片.png

6、如无特殊要求,直接点击“下一步”,不用进行任何更改

图片.png

7、这里用来配置给虚拟机多少内存。默认是 1G,也够用了 。但是如果你的机器比较富足,则可以给 2G。点击 “下一步”

图片.png

8、网络类型,选择第二项 :NAT 模式类型 。点击 “下一步”

图片.png

9、直接 点击 “下一步”

图片.png

10、直接 点击 “下一步”

图片.png

11、直接点击“下一步”,使用创建新虚拟磁盘”选项

图片.png

12、这里用来配置给虚拟机分多少磁盘空间。默认是 20G ,一般够用 。但是如果一台虚拟 机要使用一年 或者多年 ,那么最好给多一点 。只要不勾选“立即分配所有磁盘空间”,它是不会立即占用掉 50G 磁盘空间的。这个50G表示虚拟机最多占用多少磁盘空间 。

图片.png

13、在上面的步骤中,点击“下一步 ”进入到如下界面,不用做任何更改,直接点击“下一步 ”即可。

图片.png

点击编辑虚拟机设置

图片.png

设置虚拟机的镜像文件,点击确定

图片.png

15、点击开启此虚拟机,首先会进入自动安装的 60s 倒计时界面 ,倒计时结束之后 ,自动进入安装步骤 自动进入安装步骤 自动进入安装步骤 ,等待倒 计时结束即可 。

图片.png

这是自动安装的界面,你不用进行任何操作。

图片.png

16、然后进入到 UI界面 ,开始进行 centos7操作系统的一些配置。

这一个界面 ,用来配置当前 centos7操作系统选择哪种语言作为系统语言。我们使用默认即 可,也就是 United States 的 English 。然后点击 “continue ”

图片.png

17、然后进入到这个界面:

点击 DATE&TIME来设置时区和时间

点击 NETWORK&HOSTNAME设置主机名称和网络相关

后续有详细步骤 。

图片.png

18、选择 :DATE&TIME 来设置时区和时间 。时区选择Asia Shanghai

日期时间 ,按需更改即可 。

然后点击左上角 “Done ”完成设置

图片.png

19、选择 INSTALLATION DESTINATION 选定磁盘 ,可以直接点击DONE 返回来

图片.png 图片.png

20、选择 NETWORK&HOSTNAME设置该虚拟机的主名称 hostname:我设置的为mycentos7, 点击右边的 configure来设置 IP地址相关

图片.png

21、在点击 configure之后 ,进入到该界面 ,现在“ method”选项中选择“ Manual ”,然后 选择 IPv4 Settings 选项卡 。填入如图所示的 address IP 地址 ,netmask子网掩码 ,gateway网 关地址。还有 DNS Servers设置 DNS服务器 IP地址 。然后点击 “Save”完成设置。

图片.png

22、在上面的步骤点击 “save”之后,会进入到如下 的画面。当然记得把右上角为 ON状态 ,意味着该 ens3网卡启用 。开启之后 ,会显示当前你设置的相关信息 ,可 检查是否正确。然后点击右上角的“ Done ”

图片.png

23、点击上图步骤中的“ Done ”之后,就回到这个设置页面。然后点击“ Begin Installation” 即可开启安装。

图片.png

24、然后进入到 Ins tallation界面 。图中有关于 user settings的选项 ,点击 ROOT PASSWORD设置超级管理员 root用户的密码 ,点击 USER CREATION设置普通用户名和密码。 此先不创建,后续使用命令来创建。

图片.png

25、设置 root用户的密码 ,点击右上角的 “Done ”完成设置 。

图片.png

26、然后回到该界面。中下位置的 进度条可以显示当前instalation一直在持续进行。等待 完成即可。

图片.png

27、当进度条 100 %之后 ,会有 Completee的显示,右下角有 reboot按钮 ,点击一下 ,即重 启系统 。此时 ,centos7操作系统进行重启 ,如果鼠标不见了,请按组合键:ctrl + alt 。事实 上,到此为止,配置和安装 centos7操作系统结束了。

图片.png

28、重启结束之后进入如下的界面,根据提示可以看出,输入用户名和密码,即登录操作系统。由于我们现在只有一个root用 户,所以使用 root用户登录即可。

图片.png

29、登录成功之后的界面。


图片.png

30 、输入 “ip addr ”命令,可以 查看 IP地址 ,如下图所示:

图片.png

至此 ,linux操作系统安装成功 。

Vmware克隆 虚拟机CentOS7

1、选中 您需要克隆的虚拟机,先关机。 然后 ,右键选择 “管理 ”,再选择 “克隆 ”

图片.png

2、进入 到克隆虚拟机引导界面。直接 下一步

图片.png

3、在克隆 源中,选择 “当前 状态 ”,当然 ,如果 您需要 从某个快照中进行克隆。这 也是 可以 的。 然后 点击 “下一步 ”

图片.png

4、克隆类型 ,选择 完整 克隆。 直接 “下一步 ”

图片.png

5、新虚拟机 名称 ,记得更改名称 和 指定 该虚拟机 存放位置 。然后 点击 “完成 ”。

图片.png

6、在上一步中,点击 “完成 ”,等待克隆成功即可

图片.png

7、当上一步执行完毕之后,也就意味着 成功 克隆出一台虚拟机,和 克隆 源虚拟机当然也是 一模 一样的。但是 必然 需要有些信息是 需要修改的,比如 IP 地址 ,比如 MAC地址 等。所以 , 先按照如下步骤,进行 MAC地址 的修改。

图片.png

8、修改 IP 地址 。在上一步修改了 MAC地址 之后,先开机然后正常 使用 root用户登录 , 然后 进行 IP 地址 的修改。命令 为:

Vi /etc/sysconfig/network -scripts/ifcfg-ens33
图片.png

9、进入 到如下界面。 更改 IP 地址 即可。其他 的应该都不用更改。


BOOTTYPE= ”static ”

ONBOOT=”yes ”

IPADDR=”192.168.123.152”
图片.png

10 、更改 完 IP 地址 之后,如果有必要,也需修改主机名称。完了 之后 重启既完成虚拟机 的克隆任务了。

安装SecureCRT

安装过程很简单,这里不再上图啦。

这里讲一下SecureCRT的配置

点击选项-编辑默认会话

1.SSH2的配置

点击SSH2下面的“您要使用这些配置吗”

图片.png

本地目录:从centos7上传下载数据的时候,本地·的交互目录

远程目录:centos7系统的home目录

2.终端的配置

终端-仿真 根据自己的喜好调整

图片.png

终端-映射键-其它映射的两个勾,勾上

图片.png

3.外观的配置

字符编码:改为UTF8

图片.png

4.修改完后,点击确定,点击“只变更默认会话”

图片.png

5.点击闪电,设置主机名:您安装虚拟机的主机名,设置用户名,端口号:22,点击连接

图片.png 图片.png

点击接受并保存

图片.png

输入密码

图片.png

可能在你填主机名的时候,显示主机名未知,此时需要你配置一下主机映射

找到C盘-Windows-drivers-etc-hosts(如果没有hosts文件新建一个)

在文件中写入以下信息:

192.168.123.152 bigdata02(这两个以你配置虚拟机为准)

关于CentOS7的一些必备配置

1.安装一些必备的软件


yum -y install net-tools

yum -y install ntpdate

yum -y install wget

yum -y install perl

yum -y install vim*

2.修改主机名(这一步不是必须的,根据需要进行修改)

在root账号下用命令:

vi /etc/hostname

或者如果配置了bigdata的sudoer 权限,则在bigdata登录情况下使用命令:

sudo vi /etc/hostname

指定好内容之后保存退出即可:

bigdata02

或者不使用编辑配置文件的方式,使用命令也可以进行永久更改:

hostnamectl set-hostname bigdata02

3.设置系统默认启动级别(这一步不是必须的)

这一步不是必须的,但是考虑到咱们用的是虚拟机,使用了桌面系统会占用相当多内存,而且在企业生产环境中,也都不会开启桌面系统,都是通过远程连接工具去链接使用。所以咱们最好还是要改一改。

但是好在我们现在使用的是centos7,我们安装的如果是centos7的minimal系统的话,可以不用做任何更改的。centos7的minimal系统的默认级别就是multi-user.target,和centos6的level 3 是一样的意思。

如果需要更改:

systemctl set-default multi-user.target
  1. 配置bigdata用户 sudoer权限

创建bigdata用户,并且在bigdata的用户家目录中,创建如下文件夹备用:

[root@bigdata02 ~]# su bigdata

[bigdata@bigdata02 root]$ ll

ls: cannot open directory .: Permission denied

[bigdata@bigdata02 root]$ cd

[bigdata@bigdata02 ~]$ mkdir ~/apps

[bigdata@bigdata02 ~]$ mkdir ~/bins

[bigdata@bigdata02 ~]$ mkdir ~/data

[bigdata@bigdata02 ~]$ mkdir ~/soft

[bigdata@bigdata02 ~]$ mkdir ~/logs

给用户bigdata02赋予root权限

[bigdata@bigdata02 ~]$ su root

Password:

[root@bigdata02 bigdata]# vi /etc/sudoers

找到

root ALL=(ALL) ALL

这一行,然后在他下面添加一行:内容如下

root ALL=(ALL) ALL

bigdata ALL=(ALL) ALL

该操作表示,把bigdata用户也配置成和root用户一样具有root权限。当然这个操作,只有root用户才能操作。

图片.png

5.配置IP(如果已经配好,此步骤略过)

第一步:进入到ip配置文件目录中:

cd  /etc/sysconfig/network-scripts

第二步:编辑IP配置文件

Vi ifcfg-ens33

按需修改或者增加如下内容:

BOOTPROTO="static"

ONBOOT="yes"

IPADDR="192.168.123.151"

GATEWAY="192.168.123.2"

DNS1="192.168.123.2"

第三步:重启网络服务

systemctl restart network

6.关闭防火墙/关闭Selinux

防火墙操作相关

查看防火墙状态:如果看到avtive(running)就意味着防火墙开启

systemctl status firewalld

关闭防火墙: 如果看到inactive(dead)就意味着防火墙关闭了

systemctl stop firewalld

开启防火墙:

systemctl start firewalld

以上的开启和关闭,都是临时性的。如果重启,则又恢复原样。默认是开启了防火墙的

查询firewall服务是否开机启动的:

systemctl list-unit-files | grep firewalld

如果为disabled那么就是开机不启动。

如果想永久开启或者关闭(跟重启无关)防火墙,则:

永久关闭防火墙:

systemctl disable firewalld

永久开启防火墙:

systemctl enable firewalld

当然如果作为专业的运维人员。其实也可以配置防火墙细则,例如一台机器只作为web服务器的话,就只需要开放80端口即可。

关闭Selinux

具体做法是修改/etc/selinux/config配置文件中的SELINUX=disabled

vi /etc/selinux/config

修改如下配置项:

SELINUX=disabled

保存退出。

图片.png

7.同步服务器时间

对于一个Hadoop集群来说,每个节点的系统时间,应该要都是一样的。进行时间同步,可以有两种简单的方式,一是手动同步,而是搭建时间服务器进行同步或者从网络定时同步系统时间。推荐最后一种:从网络定时同步时间。

(1)使用date命令手动简单同步一下

date -s "2016-10-23 11:11:11"

修改时间后,需要写入硬件bios才能在重启之后依然生效

hwclock -w

(2)配置 crontab 服务,用ntpdate 定时同步时间(推荐方式)

*/10 * * * * ntpdate ntp.sjtu.edu.cn

请先测试一下ntpdate命令是否可以使用,如果不可以,使用命令安装一下(下面3个有一个能用即可):

[root@mycentos7 ~]# ntpdate time.nist.gov

[root@mycentos7 ~]# ntpdate 202.120.2.101

[root@mycentos7 ~]# ntpdate ntp.sjtu.edu.cn

进入配置文件

[root@bigdata02 bigdata]# crontab -e

往文件中写入*/10 * * * * /usr/sbin/ntpdate ntp.sjtu.edu.cn 保存退出

注:如果类似202.120.2.101这种网络时间服务器无法访问,那么请自行搭建时间服务器

当然还有一个非常重要的点:不要忘记更改时区,然后再同步时间

CentOS中时区是以文件形式存在,当前正在使用的时区文件位于/etc/localtime,其他时区文件则位于

/usr/share/zoneinfo

其中中国时区使用

/usr/share/zoneinfo/Asia/Shanghai

则,更改时区的话,直接使用如下命令就OK

cp /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime

如果没有Asia/Shanghai时区文件,请执行tzselect命令按照引导去生成时区文件,生成好的时区文件就在/usr/share/zoneinfo目录下。

8.配置YUM源

配置本地yum源

配置国内远程yum源

yum -y install wget

wget [http://mirrors.aliyun.com/repo/Centos-7.repo](http://mirrors.aliyun.com/repo/Centos-7.repo)

mv /root/Centos-7.repo /root/Centos-7-aliyun.repo

cp /root/Centos-7-aliyun.repo /etc/yum.repos.d/

yum repolist

9.安装JDK1.8

切换到SecureCRT,按快捷键Alt+P,进行SFTP的上传,把JDK1.8安装包拖拽到上传界面,上传到centos7中

或者使用命令:

put -r "F:\JDK\jdk-8u73-linux-x64.tar.gz"

此时安装包文件在centos7家目录中

创建java安装目录:

[root@bigdata02 ~]# mkdir /usr/local/java

[root@bigdata02 ~]# tar  -zxvf  jdk-8u73-linux-x64.tar.gz -C  /usr/local/java/

[root@bigdata02 ~]# vi /etc/profile

文件追加以下内容·:

export JAVA_HOME=/usr/local/java/jdk1.8.0_73

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:/usr/local/java/jdk1.8.0_73/lib/dt.jar:/usr/local/java/jdk1.8.0_73/lib/tools.jar

使命令生效:

[root@bigdata02 ~]# source /etc/profile

查看java是否安装成功

[root@bigdata02 scala-2.11.8]# java -version     

java version "1.8.0_73"

Java(TM) SE Runtime Environment (build 1.8.0_73-b02)

Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)

10.安装Scale

[root@bigdata02 ~]# mkdir /usr/local/scala

[root@bigdata02 ~]# tar -zxvf scala-2.11.8.tgz -C /usr/local/scala

[root@bigdata02 ~]# vi /etc/profile

文件追加以下内容·:

export SCALA_HOME=/usr/local/scala/scala-2.11.8

export PATH=$PATH:$SCALA_HOME/bin

使命令生效:

[root@bigdata02 ~]# source /etc/profile

查看scala是否安装成功

[root@bigdata02 scala-2.11.8]# scala -version    

Scala code runner version 2.11.8 -- Copyright 2002-2016, LAMP/EPFL

11.添加主机域名ip映射

修改配置文件:

vi /etc/hosts

增加对应的内容:

192.168.123.151 bigdata01

192.168.123.152 bigdata02

192.168.123.153 bigdata03

192.168.123.154 bigdata04

192.168.123.155 bigdata05

192.168.123.156 bigdata06

192.168.123.157 bigdata07

192.168.123.158 bigdata08

192.168.123.159 bigdata09

修改好之后,保存退出即可。

克隆虚拟机

1.先拍摄快照:(选中 您需要克隆的虚拟机-快照-拍摄快照)

图片.png

选中 您需要克隆的虚拟机,先关机。 然后 ,右键选择 ,选择 “管理 ”,再选择 “克隆 ”。

2.选择现有快照,点击下一步

图片.png

3.选择完整克隆!!!,点击下一步

图片.png

4.设置虚拟机的名称,存放位置;点击完成

图片.png

此时虚拟机克隆成功

需要改动三个地方:

(1)mac地址

(2)IP地址

(3)主机名称

改mac地址:

找到“编辑虚拟机设置”

图片.png

找到网络适配器-高级-mac地址生成-确定

图片.png

改主机名和IP地址

开启虚拟机,进去命令行:

Vi /etc/hostname

修改主机名:bigdata03

Vi /etc/sysconfig/network-scripts/ifcfg-ens33

把UUID整行删掉

ipaddr设置为:192.168.123.153

设置完后:重启虚拟机

同样的步骤克隆第三台虚拟机

配置SSH免密登录

对于一个集群来说,节点间的互信是必不可少的。所以一定要给集群的所有节点之间配置免密SSH访

问。切记,你使用哪个用户搭建Hadoop集群,就给哪个用户配置SSH免密访问。另外需要注意的:所

有节点的安装Hadoop的用户都一样该一样。我使用的就是bigdata用户。

1.先把所有节点的.ssh文件删掉

[bigdata@bigdata02 ~]$ rm -rf ~/.ssh

[bigdata@bigdata03 ~]$ rm -rf ~/.ssh

[bigdata@bigdata04 ~]$ rm -rf ~/.ssh

2.执行命令生成公钥私钥对(一直回车)

[bigdata@bigdata02 ~]$ ssh-keygen -t rsa

[bigdata@bigdata03 ~]$ ssh-keygen -t rsa

[bigdata@bigdata04 ~]$ ssh-keygen -t rsa

之后你会发现,在.ssh目录下生成了公钥文件

图片.png
[bigdata@bigdata02 ~]$ ssh-copy-id bigdata02

[bigdata@bigdata03 ~]$ ssh-copy-id bigdata02

[bigdata@bigdata04 ~]$ ssh-copy-id bigdata02

[bigdata@bigdata02 ~]$ ssh-copy-id bigdata03

[bigdata@bigdata03 ~]$ ssh-copy-id bigdata03

[bigdata@bigdata04 ~]$ ssh-copy-id bigdata03

[bigdata@bigdata02 ~]$ ssh-copy-id bigdata04

[bigdata@bigdata03 ~]$ ssh-copy-id bigdata04

[bigdata@bigdata04 ~]$ ssh-copy-id bigdata04

搭建完全分布式集群环境

1.集群规划

由于我电脑是内存8G的,所以我选用3个节点来搭建

总共有3个datanode节点,设置副本数为1

图片.png

整体描述一下Hadoop集群的安装:

1、准备好3个服务器

2、在第一个节点中安装Hadoop

  • 解压缩安装
  • 配置Hadoop_env.sh
  • 配置core-sitem.xml
  • 配置hdfs-site.xml
  • 配置mapred-site.xml
  • 配置yarn-site.xml
  • 配置slaves

3、分发安装包到每个节点

4、所有节点配置环境变量

5、初始化Hadoop

6、启动集群

7、验证安装,启动是否成功

第一步:上传安装包(使用我自行编译hadoop安装包),并解压到相关目录

sftp> cd soft/

sftp> put  "hadoop-2.7.7-centos7.tar.gz"

[bigdata@bigdata02 ~]$ tar -zxvf soft/hadoop-2.7.7-centos7.tar.gz -C apps/

第二步:修改hadoop-env.sh配置文件,添加jdk安装目录配置

[bigdata@bigdata02 ~]$ cd apps/hadoop-2.7.7/etc/hadoop/

[bigdata@bigdata02 hadoop]$ vi hadoop-env.sh

配置如下内容:

export JAVA_HOME=/usr/local/jdk1.8.0_151

第三步:修改core-site.xml配置文件

[bigdata@bigdata02 hadoop]$ vi core-site.xml
<property>

<name>fs.defaultFS</name>

<value>hdfs://bigdata02:9000</value>

<description>HDFS集群的url</description>

</property>

<property>

<name>hadoop.tmp.dir</name>

<value>/home/bigdata/data/hadoopdata</value>

<description>HDFS集群的相关数据存储目录</description>

</property>

第四步:修改hdfs-site.xml配置文件

[bigdata@bigdata02 hadoop]$ vi hdfs-site.xml

在标签中添加如下内容:

<property>

<name>dfs.namenode.name.dir</name>

<value>/home/bigdata/data/hadoopdata/name</value>

<description>为了保证元数据的安全一般配置多个不同目录</description>

</property>

<property>

<name>dfs.datanode.data.dir</name>

<value>/home/bigdata/data/hadoopdata/data</value>

<description>datanode的数据存储目录</description>

</property>

<property>

<name>dfs.replication</name>

<value>1</value>

<description>HDFS的数据块的副本存储个数</description>

</property>

<property>

<name>dfs.secondary.http.address</name>

<value>bigdata03:50090</value>

<description>secondarynamenode运行节点的信息,和namenode不同节点</description>

</property>

第五步:修改mapred-site.xml配置文件

你会发现:集群只有 mapred-site.xml.template,可以从这个文件进行复制,或者直接改名也可

[bigdata@bigdata02 hadoop]$ cp mapred-site.xml.template mapred-site.xml

[bigdata@bigdata02 hadoop]$ vi mapred-site.xml
<configuration>

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

<description>表示所使用得到资源调度是yarn</description>

</property>

</configuration>

第六步:配置yarn-site.xml配置文件

[bigdata@bigdata02 hadoop]$ vi yarn-site.xml

在 标签中添加如下内容:

<property>

<name>yarn.resourcemanager.hostname</name>

<value>bigdata04</value>

<description>YARN集群主节点所在节点</description>

</property>

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

<description>YARN集群为MapReduce程序提供的shuffle服务</description>

</property>

第七步:配置slaves配置文件

[bigdata@bigdata02 hadoop]$ vi slaves
bigdata02

bigdata03

bigdata04

第八步:分发安装到其他节点

如果刚才我是在 bigdata02 执行安装的话, 那么我现在要把 hadoop 安装包分发到 bigdata03,

bigdata04 的相同目录下。

[bigdata@bigdata02 hadoop]$ cd ..

[bigdata@bigdata02 etc]$ cd ..

[bigdata@bigdata02 hadoop-2.7.7]$ cd ..

[bigdata@bigdata02 apps]$ scp -r hadoop-2.7.7/ bigdata03:~/apps/

[bigdata@bigdata02 apps]$ scp -r hadoop-2.7.7/ bigdata04:~/apps/

第九步:配置环境

由于我们安装Hadoop 集群使用的是 bigdata 用户,那么我们配置用户变量即可。

[bigdata@bigdata02 apps]$ cd

[bigdata@bigdata02 ~]$ vim .bashrc 
export HADOOP_HOME=/home/bigdata/apps/hadoop-2.7.7

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source .bashrc

需要注意的是:需要每个节点都配置环境变量

第十步:执行HDFS集群的初始化

[bigdata@bigdata02 ~]$ hadoop namenode -format
图片.png

出现如上提示,则说明初始化成功。

切记:关于初始化操作,是第一次安装Hadoop集群的时候初始化一次就可以了,而不是后面每次使用

的都需要初始化一次。切记。很多小伙伴在此翻车了。所以做重点提醒。如果你想要把一个旧HDFS集

群的数据都给删掉,当做一个新集群来使用。那么你可以重新初始化,但是你还是要记得把对应的每个

节点数据存储目录先行删掉。然后再初始化。这样你就又得到了一个新HDFS集群。

第十一步:启动HDFS集群

[bigdata@bigdata02 ~]$ start-dfs.sh

不论在那个节点执行这个命令,都可以启动HDFS集群。

启动成功的话,会在对应的节点上启动好对应的守护进程,就如前面的集群规划表中所列举一般。

当然也可能出现部分节点上的对应进程没有启动成功,这个时候,你首先需要排查原因。如果是能正常

启动的话。那么使用如下命令:

hadoop-daemon.sh start namenode # 启动

hadoop-daemon.sh stop namenode # 停止

hadoop-daemon.sh restart namenode # 重启

这里列举的是 namenode 进程,当然,datanode 进程,resourcemanager 等进程,也都是同样的道理。只是需要注意的一点就是:那个节点的什么进程没有启动,那就在对应的节点上执行启动命令单独启动。

在实际企业环境中,stop-dfs.sh 之类的命令不会轻易执行的。所以一般出现了哪个节点宕机,或者服务下线了,都是单独启动。

第十二步:启动YARN集群

在 YARN 主节点启动 YARN,要求在YARN主节点进行启动,否则 ResourceManager 主进程会启动不成功,需要额外手动启动

[bigdata@bigdata04 ~]$ start-yarn.sh

第十三步:检查安装是否成功

因为 Hadoop 集群,事实上,包含了 HDFS 和 YARN 两个集群,所以两个集群都分别做一次测试

第十四步:检测web ui启动是否成功

HDFS集群的web ui地址:

http://bigdata02:50070

YARN集群的web ui地址:

http://bigdata04:8088

第十五步:查看集群的状态

hadoop dfsadmin -report

hdfs dfsadmin -report(推荐用这个)

至此大功告成。

附:

分布式集群的开启与关闭:

停机:

[bigdata@bigdata02 ~]$ stop-dfs.sh

[bigdata@bigdata05 ~]$ stop-yarn.sh

开机:

[bigdata@bigdata02 ~]$ start-dfs.sh

[bigdata@bigdata05 ~]$ start-yarn.sh
上一篇下一篇

猜你喜欢

热点阅读