博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hadoop备战:yarn框架的搭建(mapreduce2)
阅读量:4492 次
发布时间:2019-06-08

本文共 4126 字,大约阅读时间需要 13 分钟。

昨天没有写好了没有更新。今天一起更新,yarn框架也是刚搭建好的。

我这里把hadoop放在了我的个人用户hadoop下了。你也能够尝试把它放在/usr/local,考虑的问题就相对多点。

主要的软硬件配置:

x86台式机,window7  64位系统

wmware虚拟机(x86的台式机至少是4G内存,才干开2台虚机)

centos6.4操作系统

hadoop-2.2.0.tar.gz

jdk-6u24-linux-i586.bin

WinScp 远程文件传输工具,非常好用。能够用于windows和虚拟机Linux之间文件相互拷贝。

一、root下的配置

a) 
改动主机名:
vi /etc/sysconfig/network
Master, slave1,
b) 
解析
Ip: vi /etc/hosts 

由于採用的是Host-only连接网络,主机上Vmnet1ip:192.168.137.1

192.168.137.50 master

192.168.137.55 slave1

c) 
调试网络:
採用
自定的
vmnet1,默认是host-only这样的方式。
连接网络,配置网络。

改动后记得调用 
service network restart

确保三台虚拟机能够相互ping通。(非常好弄的,我如今的问题怎样让虚拟机连接外网,我会在近期的博客中。弄清楚,继续关注我的博客)

d) 
关闭防火墙
 查看:service  iptables  status
 关闭:service  iptables  stop
 查看防火墙有无自启动:
Chkconfig –-list | grep  iptables
关闭自启动:

Chkconfig  iptables  off

二、hadoop用户下的配置

a) 创建用户hadoop,设置password,进入用户

useradd hadoop

passwd hadoop

b) master创建公私秘钥

分别在两台虚拟机上生成:ssh-keygen –t rsa.

.ssh是一个隐藏的文件  #cd .ssh可进入

1)将id_rsa.pub复制给authorized_keys

Cp id_rsa.pub authorized_keys

2)将master中的authorized_keys复制给slave1的/home/hadoop/.ssh下

scp authorized_keys /hadoop/.ssh/

3)将master拷贝过来的authorized_keys拷贝到slave1本身所创的authorized_keys下

4)验证ssh的免password生效:

a)能够尝试发个小文件给对方机器。假设没有提示要求password。那么你的免password就生效了。

b)也能够直接ssh+对方机器名(hostname改过之后),能够进入对方用户环境则说明生效。

c) 将hadoop拷贝拷贝到相应的master机子中/home/hadoop/

配置hadoop用户的环境变量 vi  /etc/profile,加入例如以下内容:

#set java enviroment

export JAVA_HOME=/usr/local/jdk

export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin

# Hadoop

export HADOOP_PREFIX="/home/hadoop/hadoop"

export PATH=$PATH:$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin

export HADOOP_COMMON_HOME=${HADOOP_PREFIX}

export HADOOP_HDFS_HOME=${HADOOP_PREFIX}

export HADOOP_MAPRED_HOME=${HADOOP_PREFIX}

export HADOOP_YARN_HOME=${HADOOP_PREFIX}

注:su + username实现切换用户

d) 编辑/home/hadoop/etc/hadoop/hadoop-env.sh

export JAVA_HOME=/usr/local/jdk

e) 编辑/home/hadoop/etc/hadoop/yarn-env.sh

export JAVA_HOME=/usr/local/jdk

f) 编辑/home/hadoop/etc/hadoop/core-site.xml

<!-- 新变量f:s.defaultFS 取代旧的:fs.default.name --> 

<property> 

<name>fs.defaultFS</name> 

<value>value> 

</property> 

<property>  

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

<!-- 注意创建相关的文件夹结构。这里的tmp是自己创建的 --> 

<value>/home/hadoop/hadoop/tmp</value> 

</property> 

g) 编辑/home/hadoop/etc/hadoop/hdfs-site.xml

<property> 

<name>dfs.replication</name>

 <!-- 值须要与实际的DataNode节点数要一致,本文为3 --> 

<value>1</value> 

</property>

<property> 

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

<!-- 注意创建相关的文件夹结构 --> 

<value>file:/home/hadoop/hadoop/dfs/namenode</value> 

<final>true</final> 

</property> 

<property> 

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

<!-- 注意创建相关的文件夹结构 --> 

<value>file:/home/hadoop/hadoop/dfs/datanode</value> 

</property> 

h) 编辑/home/hadoop/hadoop/etc/hadoop/yarn-site.xml

<property> 

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

<value>mapreduce_shuffle</value> 

</property> 

<property> 

<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> 

 <value>org.apache.hadoop.mapred.ShuffleHandler</value> 

</property> 

<!--  resourcemanager hostnameip地址--> 

<property> 

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

<value>master</value> 

</property> 

h) 编辑/home/hadoop/hadoop/etc/hadoop/mapred-site.xml

注:默认没有mapred-site.xml文件,copy  mapred-site.xml.template 一份为 mapred-site.xml就可以 

<property> 

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

 <value>yarn</value> 

     <final>true</final> 

</property>  

、启动和測试

1、启动Hadoop

1.1、第一次启动须要在Master.Hadoop 运行format : hdfs namenode -format 

格式化成功,你能找到一句话:

1.2、在Master.Hadoop运行 start-dfs.sh 

Slave1验证启动进程例如以下: 

1.3、在Master运行 start-yarn.sh 

Slave1 验证启动进程例如以下:

四、演示案例:(单词计数)

1)先实现以下的生成文件夹命令:

2本地创建三个文件 micmiu-01.txtmicmiu-03.txtmicmiu-03.txt, 分别写入例如以下内容:

micmiu-01.txt 

Hi Michael welcome to Hadoop 

more see micmiu.com

micmiu-02.txt 

Hi Michael welcome to BigData

more see micmiu.com

micmiu-03.txt 

Hi Michael welcome to Spark 

more see micmiu.com

3然后cd 切换到Hadoopshare/hadoop/mapreduce下运行

[hadoop@master mapreduce]$ hadoop jar hadoop-mapreduce-examples-2.2.0.jar wordcount /user/micmiu/wordcount/in /user/micmiu/wordcount/out

ps: hdfs 中 /user/micmiu/wordcount/out 文件夹不能存在 否则运行报错。 

5)到此 wordcountjob已经运行完毕。运行例如以下命令能够查看刚才job的运行结果: 

hadoop的童鞋们,有问题加关注,评价中说明问题。

转载于:https://www.cnblogs.com/ldxsuanfa/p/10007888.html

你可能感兴趣的文章
像素与DPI之间的关系
查看>>
druid监控配置
查看>>
css颜色代码大全
查看>>
物理系统(二)
查看>>
css3中-moz、-ms、-webkit与盒子模型
查看>>
DataTable 整行为空时,去除空行,常用于Excel导入,转换为DataTable时出现
查看>>
网络相关面试题1
查看>>
一种让谷歌搜索引擎拒绝搜索的字符串
查看>>
实现毛玻璃效果
查看>>
[BZOJ4082][Wf2014]Surveillance[倍增]
查看>>
kill -9杀掉nginx主进程、reload失败解决办法
查看>>
objdump 用法
查看>>
前端js模糊搜索(模糊查询)
查看>>
Chrome的hack写法以及CSS的支持程度图示
查看>>
苹果端手机微信页面长按图片无法保存的解决方案
查看>>
SVN、GIT比较
查看>>
asp后台读id设置样式
查看>>
POJ 3744 Scout YYF I 概率DP+矩阵快速幂 好题
查看>>
Training Logisches Denken
查看>>
谁分配谁释放
查看>>