马士兵hadoop第一课:虚拟机搭建和安装hadoop及启动

马士兵hadoop第二课:hdfs集群集中管理和hadoop文件操作

马士兵hadoop第三课:java开发hdfs

马士兵hadoop第四课:Yarn和Map/Reduce配置启动和原理讲解

马士兵hadoop第五课:java开发Map/Reduce

前三节课主要讲了hdfs,hdfs就是一个分鱼展的大硬盘

分:分块

鱼:冗余

展:动态扩展

接下来讲云计算,也可以理解为分布式计算,其设计原则:

移动计算,而不是移动数据

前面说过,hadoop由hdfs,yarn,map/reduce组成,

而yarn(Yet Another Resource Negotiator)是资源调度系统,yarn调配的是内存和cpu,不参入计算。

map/reduce是计算引擎。

(1)配置yarn

yarn由一台resourceManager和n台dataManager组成,resourceManager管理着n台dataManager,

resourceManager原则上应该和namenode分开,单独在一个节点上,现在是在做实验,为了演示方便,

才放在一起的,而dataManager可以和datanode放在一起,这样dataManager和数据离的近一点,

当然也可以不放在一起。

要启动yarn系统,需要先配置一些参数:

a)配置yarn-size.xml

resourceManager和dataManager每一个节点都需要配置yarn-size.xml,配置如下:

<?xml version="1.0"?>
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property> <property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property> <property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
</configuration>

b) 配置mapred-site.xml

只需要在master的/usr/local/hadoop/etc/hadoop目录下,

复制mapred-site.xml.template,即执行命令

[root@master hadoop]# cp mapred-site.xml.template mapred-site.xml

编辑mapred-site.xml,vim mapred-site.xml:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

这是配置map/reduce在哪个系统上运行,这里配置的yarn,也可以配置其他的。

(2)启动yarn

[root@master hadoop]# start-yarn.sh

使用jps查看启动情况

启动成功后,可在浏览器上查看web界面

(3)运行一个map/reduce示例程序

要先把hdfs也启动起来:

[root@master hadoop]# start-dfs.sh

上传一个文件到hdfs的/input目录上

#在namenode的根目录上创建input目录
[root@master hadoop]# hadoop fs -mkdir /input
#上传一个测试文件到hadoop的/input目录上
[root@master hadoop]# hadoop fs -put /root/input.txt /input

input.txt的内容如下:

find /usr/local/hadoop -name *example*.jar 查找示例程序文件

通过hadoop jar xxx.jar wordcount /input /output来运行示例程序

执行结果为:

最新文章

  1. 测试EF6.1.3和OrmLite性能
  2. 解决Spark读取Hive分区表出现Input path does not exist的问题
  3. 解决MySQL数据库不允许从远程访问的方法
  4. js判断访问的当前设备是手机还是电脑
  5. HTTPS与强制门户
  6. C#读取Excel显示到repeater中
  7. HP-UX查看版本
  8. hdu 1700 Points on Cycle 水几何
  9. Spring+SpringMVC+MyBatis+easyUI整合进阶篇(十一)redis密码设置、安全设置
  10. 如何使用 window api 转换字符集?
  11. BZOJ_3427_Poi2013 Bytecomputer_DP
  12. Spring Boot(四):Thymeleaf 使用详解
  13. python+selenium测试
  14. HDU/HDOJ 1867 A + B for you again
  15. Linux内核设计第十七章笔记
  16. SQL Server (MSSQLSERVER) 服务因 2148081668 服务性错误而停止。
  17. PROC UNIVARIATE 简单示例
  18. MySQL常见错误代码及代码说明
  19. mysql 导出sql结果成csv文件
  20. Microsoft Visual Studio International Pack

热门文章

  1. Markdown 详细语法
  2. python 基础 元组()
  3. CSS 编码中超级有用的工具集合
  4. JSBinding+Bridge.NET:Inspector拖变量支持
  5. size属性
  6. Burp-Suit之Interder
  7. python之celery使用详解(二)
  8. tar压缩文件排除文件夹【原创】
  9. 使用maven命令终端构建一个web项目及发布该项目
  10. IDEA配置文件的配置文件配置