启动 Hadoop,仅仅是启动了 MapReduce 环境,我们可以启动 YARN ,让 YARN 来负责资源管理与任务调度。
首先修改配置文件 mapred-site.xml,需要先进行重命名:
cd /usr/local/hadoop
mv ./etc/hadoop/mapred-site.xml.template ./etc/hadoop/mapred-site.xml
然后再进行编辑( gedit ./etc/hadoop/mapred-site.xml
):
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
接着修改配置文件 yarn-site.xml:
<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
然后就可以启动 YARN 了(需要先执行过 ./sbin/start-dfs.sh
):
./sbin/start-yarn.sh # 启动YARN
./sbin/mr-jobhistory-daemon.sh start historyserver # 开启历史服务器,才能在Web中查看任务运行情况
开启后通过 jps
查看,可以看到多了 NodeManager 和 ResourceManager 两个后台进程
启动 YARN 之后,运行实例的方法还是一样的,仅仅是资源管理方式、任务调度不同。但 YARN 主要是为集群提供更好的资源管理与任务调度,然而这在单机上体现不出价值,反而会使程序跑得稍慢些.
不启动 YARN 需重命名 mapred-site.xml:如果不想启动 YARN,务必把配置文件 mapred-site.xml 重命名,改成 mapred-site.xml.template,需要用时改回来就行。
关闭 YARN :
./sbin/stop-yarn.sh
./sbin/mr-jobhistory-daemon.sh stop historyserver