Hadoop使用(一)

hadoop框架

Hadoop使用主/从(Master/Slave)架构,主要角色有NameNode,DataNode,secondary NameNode,JobTracker,TaskTracker组成。

其中NameNode,secondary NameNode,JobTracker运行在Master节点上,DataNode和TaskTracker运行在Slave节点上。

1,NameNode

NameNode是HDFS的守护程序,负责记录文件是如何分割成数据块的,以及这些数据块被存储到哪些数据节点上。它的功能是对内存及I/O进行集中管理。

2,DataNode

集群中每个从服务器都运行一个DataNode后台程序,后台程序负责把HDFS数据块读写到本地文件系统。需要读写数据时,由NameNode告诉客户端去哪个DataNode进行具体的读写操作。

3,Secondary NameNode

Secondary NameNode是一个用来监控HDFS状态的辅助后台程序,如果NameNode发生问题,可以使用Secondary NameNode作为备用的NameNode。

4,JobTracker

JobTracker后台程序用来连接应用程序与Hadoop,用户应用提交到集群后,由JobTracker决定哪个文件处理哪个task执行,一旦某个task失败,JobTracker会自动开启这个task。

4,TaskTracker

TaskTracker负责存储数据的DataNode相结合,位于从节点,负责各自的task。

hadoop的安装

1)安装SSH

sudo apt-get install ssh

2)安装java

3)安装hadoop

下载并解压缩

tar -zxvf hadoop-0.21.0.tar.gz

4)改变配置

指定java安装路径

使用vi

vi conf/hadoop-env.sh

添加

export JAVA_HOME = /usr/java/jdk1.7.0_01

可以使用三种模式安装,测试阶段可以使用单机模式。

在启动的时候可能会遇到很多问题,比如 22 connection refused

可以安装openssh,使用apt-get

sudo apt-get install openssh-client

sudo apt-get install openssh-server

sudo apt-get install chkconfig

使用chkconfig --list | grep sshd查看服务是否启动

使用ssh localhost

出现如下提示

输入密码后

出现欢迎页面,配置成功

免密码登录

ssh-keygen -t rsa

进入.ssh目录

执行

cp id_rsa.pub authorized_keys

重新ssh localhost,可以不输入密码

单机伪分布式:

进入目录/hadoop/conf

编辑 ~/hadoop/conf/core-site.xml

<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:9000</value>
  </property>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/tmp/hadoop/hadoop-${user.name}</value>
  </property>
</configuration>
编辑  ~/hadoop/conf/hdfs-site.xml
<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
</configuration>
编辑 ~/hadoop/conf/mapred-site.xml
<configuration>
  <property>
    <name>mapred.job.tracker</name>
    <value>localhost:9001</value>
  </property>
</configuration>

然后进入hadoop/bin目录

执行 ./hadoop namenode -format

执行start-all.sh

启动完成

打开浏览器,输入http://localhost:50030

就可以看到如下界面

运行示例 bin/hadoop jar hadoop-mapred-examples-0.21.0.jar wordcount in out

得到输出结果,配置成功!

安装eclipse插件

插件的路径在0.21下有所更改,路径如下

将插件拷到eclipse pluglin目录下

重启eclipse

启动后多出一个目录

就可以使用eclipse进行编程了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏YG小书屋

Yarn与Mesos

Yarn是Hadoop2的产物。提到这个问题就不得不说下Hadoop1与Hadoop2的差别。详细的内容可参考博客:https://blog.csdn.net/...

13930
来自专栏开源项目

码云推荐 | 基于 Hadoop 的 Kafka On Yarn

该项目用于把 Kafka 运行在 Yarn 的辅助项目,项目依赖: kafka, kafka-offset-console. 见 kafka-yarn.prop...

480120
来自专栏王小雷

Spark学习之在集群上运行Spark(6)

Spark学习之在集群上运行Spark(6) 1. Spark的一个优点在于可以通过增加机器数量并使用集群模式运行,来扩展程序的计算能力。 2. Spark既能...

217100
来自专栏个人分享

Hadoop on Yarn 各组件详细原理

  运行在独立的节点上的ResourceManager和NodeManager一起组成了yarn的核心,构建了整个平台。ApplicationMaster和相应...

15810
来自专栏闵开慧

job监控与hadoop权限管理

监测Hadoop控制中心及作业运行状况 MapReduce框架由一个单独的Master JobTracker和集群节点上的Slave TaskTracker共...

414120
来自专栏行者悟空

让Spark运行在YARN上(Spark on YARN)

1.4K40
来自专栏Hadoop实操

如何降级Cloudera Manager和CDH

在前面的文章中,Fayson介绍过《如何升级Cloudera Manager和CDH》,在实际使用过程中,我们往往会碰到将集群升级到一个较新的版本后,会出现一些...

1.3K50
来自专栏牛肉圆粉不加葱

【容错篇】Spark Streaming的还原药水——Checkpoint

一个 Streaming Application 往往需要7*24不间断的跑,所以需要有抵御意外的能力(比如机器或者系统挂掉,JVM crash等)。为了让这成...

8420
来自专栏张浩的专栏

Spark本地调试的使用Hive配置文件

在本地调试的时候发现把Hive的hive-site.xml放到项目的resources目录下,就可以让Spark读取hive-site.xml中的Hive的配置...

42610
来自专栏我是攻城师

Spark入门之WordCount

29550

扫码关注云+社区

领取腾讯云代金券