步骤一:上传hadoop-2.2.0.tar.gz 并解压到/home/hadoop/yarn目录,此时在yarn目录中解压出hadoop-2.2.0目录
sudo chown -R hadoop:hadoop hadoop-2.2.0
创建Hadoop数据目录:
mkdir -p /home/hadoop/yarn/yarn_data/hdfs/namenode
mkdir -p /home/hadoop/yarn/yarn_data/hdfs/datanode
配置文件之前先大体介绍一下hadoop-2.2.0目录中的各个文件夹,注意区分与Hadoop1中的改变。
外层的启动脚本在sbin目录
内层的被调用脚本在bin目录
Native的so文件都在lib/native目录
配置程序文件都放置在libexec
配置文件都在etc目录,对应以前版本的conf目录
所有的jar包都在share/hadoop目录下面
步骤二:配置环境变量
在这里我自己没有将环境全局化所以在hadoop-2.2.0中没有配置系统环境/etc/profile
如果配置,执行执行source /etc/profile,使之生效。
步骤三:core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml hadoop-env.sh配置
下来我们的具体配置就是/home/hadoop/yarn/hadoop-2.2.0/etc/hadoop目录中进行。
hadoop-env.sh里的export JAVA_HOME使用绝对路径,比如
core-site.xml配置
<configuration
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
<description>指定NameNode的IP地址和端口号</description>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
<description>备份数</description>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/hadoop/yarn/yarn_data/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/hadoop/yarn/yarn_data/hdfs/datanode</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>localhost:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>localhost:19888</value>
</property>
</configuration>
yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.address</name>
<value>localhost:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>localhost:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>localhost:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>localhost:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>localhost:8088</value>
</property>
<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>
步骤四:slaves配置
因为是伪分布式,所以我们只有localhost
步骤五:将配置好的hadoop-2.2.0分发同步到各个数据节点
因为是伪分布式,这步跳过。
步骤六:格式化NameNode
执行命令:
bin/hdfs namenode –format
或者
bin/hadoop namenode –format
步骤七:启动hdfs和yarn
启动hdfs:
sbin/start-dfs.sh
启动yarn:
sbin/start-yarn.sh
或者可以执行
sbin/start-all.sh
一起启动hdfs和yarn。
另外还要启动history服务,不然在面板中不能打开history链接。
sbin/mr-jobhistory-daemon.sh start historyserver
下面使用jps命令查看启动进程:
4504 ResourceManager
4066 DataNode
4761 NodeManager
5068 JobHistoryServer
4357 SecondaryNameNode
3833 NameNode
5127 Jps
步骤八:测试
hdfs测试:
在hdfs中创建文件:bin/hadoop fs -mkdir /wordcount
向hdfs中上传文件:hadoop fs –copyFromLocal localSrc dest
查看hdfs文件目录:hadoop fs –ls /wordcount
Yarn测试: 运行WordCount测试程序,
bin/hadoop jar hadoop-mapreduce-examples-2.2.0.jar的绝对路径 wordcount /wordcount /output2
具体查看结果:
bin/hadoop fs -cat /output2/*