您的位置:首页 > 运维架构

hadoop - hadoop2.6 伪分布式 - 全局配置 和 启用 YARN 进行任务调度与资源管理

2016-01-21 21:09 821 查看

1.全局配置 

              上面的学习中,我们都是先进入到 /usr/local/hadoop 目录中,再执行 sbin/hadoop,实际上等同于运行/usr/local/hadoop/sbin/hadoop。我们可以将 Hadoop 命令的相关目录加入到 PATH 环境变量中,这样就可以直接通过 start-dfs.sh 开启 Hadoop,也可以直接通过 hdfs 访问 HDFS 的内容,方便平时的操作。

  就好比我们配置的 Java 运行环境一样,之间可以在 终端进行 javac的编译和 java运行命令!

 1.1 配置 ~/.bashrc

     有的配置的是 etc/profile 文件,也是可以的,但是有时会有出差错,还是配置在 bashrc 下吧。

yuan@LABELNET:/$ sudo gedit ~/.bashrc

配置path 如下:



1.2 保存退出使其生效

yuan@LABELNET:/$ source ~/.bashrc



1.3 测试查看 hdfs

yuan@LABELNET:/$ hdfs dfs -ls /user/hadoop/input



2.启用yarn

  2.1 什么是 yarn ?

        MapReduce V2,也称为 YARN,Yet Another Resource Negotiator ,  YARN 是从 MapReduce 中分离出来的,负责资源管理与任务调度。YARN 运行于 MapReduce 之上,提供了高可用性、高扩展性,YARN 的更多介绍在此不展开,有兴趣的可查阅相关资料。

       我们之前通过 start-dfs.sh 启动 Hadoop,仅仅是启动了 MapReduce 环境,我们可以启动 YARN ,让 YARN 来负责资源管理与任务调度。

  2.2 配置  mapred-site.xml

       (1) 重命名 mapred-site.xml

yuan@LABELNET:/usr/local/hadoop$ mv ./etc/hadoop/mapred-site.xml.template ./etc/hadoop/mapred-site.xml



          (2) 配置

yuan@LABELNET:/usr/local/hadoop$ sudo gedit ./etc/hadoop/mapred-site.xml

        配置如下 :
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

  2.3 yarn-site.xml
 yuan@LABELNET:/usr/local/hadoop$sudo gedit ./etc/hadoop/yarn-site.xml



 

  配置如下 :

<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

  2.4 启动

yuan@LABELNET:~$ start-yarn.sh


  2.5 开启历史服务器,才可以在浏览器中查看
   
yuan@LABELNET:~$ mr-jobhistory-daemon.sh start historyserver


  2.6 jps 查看 进程

       开启后通过 jps 查看,可以看到多了 NodeManager 和 ResourceManager 两个后台进程;



  2.7 查看任务调度情况
       启动 YARN 之后,运行实例的方法还是一样的,仅仅是资源管理方式、任务调度不同。观察日志信息可以发现,不启用 YARN 时,是 “mapred.LocalJobRunner” 在跑任务,启用 YARN 之后,是 “mapred.YARNRunner” 在跑任务。启动 YARN 有个好处是可以通过 Web 界面查看任务的运行情况:  http://localhost:8088/cluster

   界面如下 :



  2.8  说明 

           YARN 主要是为集群提供更好的资源管理与任务调度,然而这在单机上体现不出价值,反而会使程序跑得稍慢些。因此在单机上是否开启 YARN 就看实际情况了。

         伪分布式开不开启YARN ,都不会影响运行!

  2.9 不使用 YARN

          如果不想启动 YARN,务必把配置文件 mapred-site.xml 重命名,改成 mapred-site.xml.template,需要用时改回来就行。否则在该配置文件存在,而未开启 YARN 的情况下,运行程序会提示 “Retrying connect to server: 0.0.0.0/0.0.0.0:8032″ 的错误,这也是为何该配置文件初始文件名为
mapred-site.xml.template。

  2.10 停止 YARN  和 历史记录

  yuan@LABELNET:~$ stop-yarn.sh


<pre name="code" class="html">yuan@LABELNET:~$mr-jobhistory-daemon.sh stop historyserver


3.总结

  下篇将 上篇的 示例 在 eclipse 中进行演示 ;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: