Hadoop yarn安装(单机版)

[b]1 网络环境
1.1 修改hosts文件[/b]
设置/etc/hosts文件(每台机器上都要设置),添加如下内容
192.168.1.101 testServer
namenode与datanode的/etc/hosts内容都必须是ip位址与host name的对应,不能使用127.0.0.1代替本机的ip地址,否则hadoop使用hostname找ip时,会以"127.0.0.1"作为ip位址。
[b]1.2 设置ssh无密码访问[/b]
master和所有的slave之间,需要实现双向ssh无密码访问(slave和slave之间可以不用实现)。
cd ~
ssh-keygen -t rsa,一路回车
cd .ssh/
cp id_rsa.pub authorized_keys // 本地机器也需要
ssh localhost //确保本地可以无密码登陆

// 拷贝authorized_keys到其他需要无密登陆的机器上
scp authorized_keys hadoop@otherHost:~/.ssh
….

如果不能无密登陆,关闭SELinux试试:
暂时关闭(重启后恢复) :
setenforce 0

永久关闭(需要重启):
vi /etc/selinux/config
SELINUX=disabled

[b]2 hadoop安装
2.1 安装文件[/b]
上传安装文件到目录:/export/home/tools/soft/hadoop-2.0.0-cdh4.2.1.tar.gz
cd ~
tar xvzf /export/home/tools/soft/hadoop-2.0.0-cdh4.2.1.tar.gz -C ./

[b]2.2 初始化[/b]
cd ~/hadoop-2.0.0-cdh4.2.1/bin
./config_hadoop.sh
. ~/.bash_profile

[b]2.3 设置环境变量[/b]
cd ~/hadoop-2.0.0-cdh4.2.1/etc/hadoop
修改export JAVA_HOME=/usr/java/jdk1.6.0_35 为jdk安装目录

[b]2.4 修改mapred-site.xml[/b]
在${HADOOP_HOME}/etc/hadoop/下,将mapred-site.xml.templat重命名成mapred-site.xml,并添加以下内容:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

[b]2.5 修改core-site.xml[/b]
vi $HADOOP_HOME/etc/hadoop下的配置文件core-site.xml,添加:
(注:红色字体为需考虑修改的部分)
<configuration>

<property>
<name>hadoop.tmp.dir</name>
<value>/export/home/hadoop/hadoop-tmp</value>
<description>A base for other temporary directories.</description>
</property>

<property>
<name>fs.defaultFS</name>
<value>hdfs://[color=red]yarn[/color]</value>
<final>true</final>
<description>缺省文件服务的协议和NS逻辑名称,和hdfs-site里的对应 .此配置替代了1.0里的fs.default.name</description>
</property>

<property>
<name>io.file.buffer.size</name>
<value>262144</value>
<description>Size of read/write buffer used in SequenceFiles.256k</description>
</property>

<property>
<name>io.native.lib.available</name>
<value>true</value>
</property>

</configuration>

[b]2.6 修改yarn-site.xml[/b]
在${HADOOP_HOME}/etc/hadoop/中,修改yarn-site.xml
增加
<configuration>

<!-- Site specific YARN configuration properties -->
<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>
</configuration>

[b]2.7 修改hdfs-site.xml[/b]
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
<description>replication number,set to 2</description>
</property>

<property>
<name>dfs.namenode.name.dir</name>
<value>/export/home/hadoop/data/namenode</value>
<final>true</final>
</property>

<property>
<name>dfs.datanode.data.dir</name>
<value>export/home/hadoop/data/hdfs/</value>
</property>

<property>
<name>dfs.permissions</name>
<value>false</value>
</property>

<property>
<name>dfs.block.size</name>
<value>134217728</value>
<description>HDFS blocksize of 128MB for large file-systems.used for on-line</description>
</property>

</configuration>

[b]2.8 修改slaves[/b]
修改$HADOOP_HOME/etc/hadoop下的配置文件slaves,添加
(注意:slaves必须是hostname,如果填IP,会出错)
testServer

[b]2.9 启动HDFS[/b]
可以使用以下命令分别启动NameNode和DataNode:
bin/hadoop namenode -format
sbin/hadoop-daemon.sh start namenode
sbin/hadoop-daemon.sh start datanode(如果有多个datanode,需使用hadoop-daemons.sh)
或者一次启动:sbin/ start-dfs.sh

[b]2.10 启动YARN[/b]
可以使用以下命令分别启动ResourceManager和NodeManager:
sbin/yarn-daemon.sh start resourcemanager
sbin/yarn-daemon.sh start nodemanager(如果有多个datanode,需使用yarn-daemons.sh)
或者一次启动过:sbin/start-yarn.sh

[b]2.11 运行程序[/b]
进入/export/home/hadoop/hadoop-2.0.0-cdh4.2.1/share/hadoop/mapreduce
hadoop jar hadoop-mapreduce-examples-2.0.0-cdh4.2.1.jar randomwriter out
[b]3 安装遇到的问题
3.1 执行bin/hadoop namenode –format 的时候报异常[/b]
2014-06-26 21:27:16,306 FATAL namenode.NameNode (NameNode.java:main(1209)) - Exception in namenode join
java.lang.IllegalArgumentException: URI has an authority component
at java.io.File.<init>(File.java:368)
at org.apache.hadoop.hdfs.server.namenode.NNStorage.getStorageDirectory(NNStorage.java:328)
at org.apache.hadoop.hdfs.server.namenode.FSEditLog.initJournals(FSEditLog.java:221)
at org.apache.hadoop.hdfs.server.namenode.FSEditLog.initJournalsForWrite(FSEditLog.java:193)
at org.apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.java:746)
at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1100)
at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1205)


问题原因:slaves文件中配置的是ip,改为hostname即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值