大数据Hadoop集群环境搭建(六)之Hadoop伪分布式模式安装

Hadoop伪分布式模式安装

防止环境装错所以先进行环境备份(centeros 装了jdk 和hadoop)
1.问题:
克隆出没有IP问题
解决:
用开网脚本:
在克隆新机执行脚本获取IP
脚本放在被克隆的主机上

在已经有的虚拟机上新建脚本文件(在root目录下)

[root@hadoop ~]# vi reset_ip.sh

脚本

#!/bin/bash
name=$(cat /etc/udev/rules.d/70-persistent-net.rules |grep -oP '(?<=NAME=").*(?=")'|tail -1)
mac=$(cat /etc/udev/rules.d/70-persistent-net.rules |grep -oP '(?<=ATTR{address}==").*?(?=",)'|tail -1)
sed -i s/DEVICE.*/DEVICE=${name}/ /etc/sysconfig/network-scripts/ifcfg-eth0
sed -i s/HWADDR=.*/HWADDR=${mac}/ /etc/sysconfig/network-scripts/ifcfg-eth0
service network restart

一、克隆

---   关机命令 shutdown -h now

1.在VMware克隆---右键已有虚拟机---点击管理---点击克隆----下一步---选择虚拟机当前状态---克隆方法(选择创建完整克隆)----下一步----选择名字,选择地址---完成

2.获取IP

给脚本执行权限并执行

[root@hadoop ~]# chmod u+x reset_ip.sh

执行

[root@hadoop ~]#  ./reset_ip.sh
在这里插入图片描述
在这里插入图片描述

修改主机名

[root@hadoop ~]#  vi /etc/sysconfig/network

一、伪分布式Hadoop部署过程

1.找到hadoop(/opt/modules/hadoopstandalone)---复制到modules目录下

[root@hadoop hadoopstandalone]# cp hadoop-2.8.3 .tar.gz ../  

当前文件解压

[root@hadoop modules]# tar -zvxf  hadoop-2.8.3.tar.gz

改文件名

[root@hadoop modules]# mv hadoop-2.8.3.tar.gz hadoop

2.配置Hadoop环境变量

[root@hadoop modules]# vi /etc/profile

追加配置

export HADOOP_HOME="/opt/modules/hadoop"
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

*注意修改完一定要执行:source /etc/profile 使得配置生效

验证HADOOP_HOME参数:

[root@hadoop /]# echo $HAOOP_HOME
/opt/modules/hadoop

3. 配置 hadoop-env.sh、mapred-env.sh、yarn-env.sh文件的JAVA_HOME参数

[root@hadoop modules]# cd /hadoop/etc/hadoop
[root@hadoop modules]# pwd
/opt/modules/hadoop/etc/hadoop
修改JAVA_HOME参数为:export JAVA_HOME="/opt/modules/jdk1.8"
[root@hadoop hadoop]# vi hadoop-env.sh

在这里插入图片描述
在这里插入图片描述
[root@hadoop hadoop]# vi mapred-env.sh
在这里插入图片描述
在这里插入图片描述
[root@hadoop hadoop]# vi yarn-env.sh
在这里插入图片描述
在这里插入图片描述

4.配置core-site.xml

[root@hadoop hadoop]# vi core-site.xml

(1) fs.defaultFS参数配置的是HDFS的地址。

<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop01:8020</value>   //hadoop01--->主机名
</property>

hadoop.tmp.dir配置的是Hadoop临时目录,比如HDFS的NameNode数据默认都存放这个目录下,查看*-default.xml等默认配置文件,就可以看到很多依赖{hadoop.tmp.dir}的配置。 默认的hadoop.tmp.dir是/tmp/hadoop-{user.name},此时有个问题就是NameNode会将HDFS的元数据存储在这个/tmp目录下,如果操作系统重启了,系统会清空/tmp目录下的东西,导致NameNode元数据丢失,是个非常严重的问题,所有我们应该修改这个路径。

修改hadoop.tmp.dir

 <property>
   <name>hadoop.tmp.dir</name>
    <value>/opt/data/tmp</value>
  </property>
在这里插入图片描述
在这里插入图片描述

提示:exc ---》:wq保存
在配置完以上部分需要在data目录下创建tmp目录; tmp:NameNode,DataNode都会将数据存放到tmp目录中
[root@hadoop hadoop]# cd /opt/data
[root@hadoop data]# mkdir tmp
回到开始目录

[root@hadoop data]# cd /opt/modules/hadoop/etc/hadoop/ 

5.配置、格式化、启动HDFS

1、 配置hdfs-site.xml

在这里插入图片描述
在这里插入图片描述

[root@hadoop hadoop]# vi hdfs-site.xml

    <property>
       <name>dfs.replication</name>  //副本个数  保存的文件备份是几份
       <value>1</value>
    </property>
在这里插入图片描述
在这里插入图片描述

2、 格式化HDFS

[hadoop@hadoop ~]$ hdfs namenode -format

格式化是对HDFS这个分布式文件系统中的DataNode进行分块,统计所有分块后的初始元数据的存储在NameNode中。
格式化后,查看core-site.xml里hadoop.tmp.dir(本例是/opt/data/tmp目录)指定的目录下是否有了dfs目录,如果有,说明格式化成功。
注意:

 [hadoop@hadoop ~]$ ll /opt/data/tmp/dfs/name/current

*注意:格式化只能格式化一次不能在进行格式化

3、 启动NameNode(最重要的节点,管理DataNode)

[hadoop@hadoop ~]$ cd /opt/modules/hadoop/sbin/
[hadoop@hadoop sbin]#   ./hadoop-daemon.sh start namenode 
//执行命令的时候用 ./ 

查看是否成功

[hadoop@hadoop03 sbin]# jps
在这里插入图片描述
在这里插入图片描述

4、 启动DataNode

 [hadoop@hadoop sbin]#   ./hadoop-daemon.sh start namenode 

5、 启动SecondaryNameNode

[hadoop@hadoop sbin]#   ./hadoop-daemon.sh start SecondaryNameNode

6、 JPS命令查看是否已经启动成功,有结果就是启动成功了。

[hadoop@hadoop  sbin]# jps
3034 NameNode
3233 Jps
3193 SecondaryNameNode
3110 DataNode

7、 HDFS上测试创建目录、上传、下载文件
HDFS上创建目录

[hadoop@hadoop  sbin]# hdfs dfs -mkdir /demo1

上传本地文件到HDFS上

[hadoop@hadoop  sbin]# hdfs dfs -put 
${HADOOP_HOME}/etc/hadoop/core-site.xml /demo1

注意:在HDFS上传文件下载不下来的问题解决:

本地计算机---》C:/Windows/System32/drivers/etc/hosts
添加IP映射
在最后添加  IP地址 + 主机名
例如
192.168.253.128 hadoop01

集群中有几台就添加几台IP映射

上传文件保存在虚拟机位置

/opt/data/tmp/dfs/data/current/BP-100305941-192.168.253.128/current/finalized/subdir0/subdir0

6.配置、启动YARN

1、 配置mapred-site.xml
默认没有mapred-site.xml文件,但是有个mapred-site.xml.template配置模板文件。复制模板生成mapred-site.xml。

[hadoop@hadoop hadoop]# cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
添加配置如下:
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

指定mapreduce运行在yarn框架上。

2、 配置yarn-site.xml
添加配置如下:

<property>
  <name>yarn.nodemanager.aux-services</name>
  <value>mapreduce_shuffle</value>
</property>
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>hadoop01</value>
 </property>

yarn.nodemanager.aux-services配置了yarn的默认混洗方式,选择为mapreduce的默认混洗算法。

yarn.resourcemanager.hostname指定了Resourcemanager运行在哪个节点上。

3、 启动Resourcemanager

[hadoop@hadoop hadoop]# yarn-daemon.sh start resourcemanager

4、 启动nodemanager

 [hadoop@hadoop hadoop]# yarn-daemon.sh start nodemanager

5、 查看是否启动成功

[hadoop@hadoop hadoop]# jps
3034 NameNode
4439 NodeManager
4197 ResourceManager
4543 Jps
3193 SecondaryNameNode
3110 DataNode

可以看到ResourceManager、NodeManager已经启动成功了。

6、 YARN的Web页面

YARN的Web客户端端口号是8088,通过http://192.168.100.10:8088/可以查看。//自己的IP

在这里插入图片描述
在这里插入图片描述

7、运行MapReduce Job
在Hadoop的share目录里,自带了一些jar包,里面带有一些mapreduce实例小例子,位置在share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar,可以运行这些例子体验刚搭建好的Hadoop平台,我们这里来运行最经典的WordCount实例。
1、 创建测试用的Input文件

创建输入目录:

 [hadoop@hadoop hadoop]# cd /opt/data
 [hadoop@hadoop data]# hdfs dfs -mkdir /input
 [hadoop@hadoop data]# hdfs dfs -put  wc.input /input

2、 运行WordCount MapReduce Job

/opt/modules/hadoop/
[hadoop@hadoop hadoop]# yarn  jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.3.jar wordcount /input/wc.input /output  

output目录中有两个文件,_SUCCESS文件是空文件,有这个文件说明Job执行成功。
part-r-00000文件是结果文件,其中-r-说明这个文件是Reduce阶段产生的结果,mapreduce程序执行时,可以没有reduce阶段,但是肯定会有map阶段,如果没有reduce阶段这个地方有是-m-。
一个reduce会产生一个part-r-开头的文件。
查看输出文件内容。

8.开启历史服务

1.历史服务介绍
Hadoop开启历史服务可以在web页面上查看Yarn上执行job情况的详细信息。可以通过历史服务器查看已经运行完的Mapreduce作业记录,比如用了多少个Map、用了多少个Reduce、作业提交时间、作业启动时间、作业完成时间等信息。
2.开启历史服务

[hadoop@hadoop hadoop]# sbin/mr-jobhistory-daemon.sh start historyserver

开启后,可以通过Web页面查看历史服务器:
http://192.168.253.128:19888/
3.Web查看job执行历史
1、 运行一个mapreduce任务
[hadoop@hadoop hadoop]# bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-
2.5.0.jar wordcount /wordcountdemo/input /wordcountdemo/output1
2、 job执行中

在这里插入图片描述
在这里插入图片描述

3、 查看job历史
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

历史服务器的Web端口默认是19888,可以查看Web界面。

但是在上面所显示的某一个Job任务页面的最下面,Map和Reduce个数的链接上,点击进入Map的详细信息页面,再查看某一个Map或者Reduce的详细日志是看不到的,是因为没有开启日志聚集服务。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,324评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,356评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,328评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,147评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,160评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,115评论 1 296
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,025评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,867评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,307评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,528评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,688评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,409评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,001评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,657评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,811评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,685评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,573评论 2 353

推荐阅读更多精彩内容