Skip to content

linhuic99/BigData

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 

Repository files navigation

Hadoop小记

Eclipse Haddop插件安装

1.在Apache官网中搜索与服务器版本对应的Ecplise插件jar包(这里使用:hadoop-eclipse-plugin-2.7.2.jar)[下载地址:http://download.csdn.net/download/tondayong1981/9432425]
2.将下载好的hadoop-eclipse-plugin-2.7.2.jar放到Eclipse的plugins目录下
3.重启Ecplise
4.在Window->Show View中找到(MapReduce Tools)说明安装成功

Hadoop单机部署(Standalone mode)

注:这种模式,仅1个节点运行1个java进程,主要用于调式。
1.mkdir /home/hadoop/input(在Hadoop的安装目录下,创建input目录)
2.cp /home/hadoop/hadoop-2.7.3/etc/hadoop/*.xml /home/hadoop/input (拷贝input文件到input目录下)
3./home/hadoop/hadoop-2.7.3/bin/hadoop jar /home/hadoop/hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar grep /home/hadoop/input /home/hadoop/output 'dfs[a-z.]+'(执行Hadoop job)
4.上面的job是使用hadoop自带的样例,在input中统计含有dfs的字符串。
5.确认执行结果 cat /home/hadoop/out/*
   问题点:
   WARN io.ReadaheadPool: Failed readahead on ifile
   EBADF: Bad file descriptor
   如果出现上面的警告,是因为快速读取文件的时候,文件被关闭引起,也可能是其他bug导致,此处忽略。

Hadoop伪分布式部署(Pseudo-Distributed mode)

注:这种模式是,1个节点上运行,HDFS daemon的 NameNode 和 DataNode、YARN daemon的 ResourceManger 和 NodeManager,分别启动单独的java进程,主要用于调试。

1.修改如下设置文件
# vi etc/hadoop/core-site.xml

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>

# vi etc/hadoop/hdfs-site.xml

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

2.设置本机的无密码ssh登陆(命令如下)
# ssh-keygen -t rsa
# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

3.MapReduce V2叫做YARN,下面分别操作一下这两种job
4.执行MapReduce job
5.格式化文件系统(如下命令内容)
# hdfs namenode -format

6.启动namenode和datanode后台进程
# sbin/start-dfs.sh

7.确认启动情况
# jps

8.访问namenode的web界面
# curl http://localhost:50070/

9.创建HDFS # ./hdfs dfs -mkdir /user/
# ./hdfs dfs -mkdir /user/test

10.拷贝input文件到HDFS目录下
# ./hdfs dfs -put /home/hadoop/hadoop-2.7.3/etc/hadoop/ /user/test/input
# ./hadoop fs -ls /user/test/input

11.执行Hadoop job
# ./hadoop jar ../share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar grep /user/test/input output 'dfs[a-z.]+'

12.确认执行结果
# ./hadoop dfs -cat output/*

13.停止daemon
# sbin/stop-dfs.sh

Hadoop伪分布式部署(Pseudo-Distributed mode)--YARN

注:这种模式是,1个节点上运行,HDFS daemon的 NameNode 和 DataNode、YARN daemon的 ResourceManger 和 NodeManager,分别启动单独的java进程,主要用于调试。 MapReduce V2框架叫YARN

1.修改YARN 设定文件
# cp /home/hadoop/hadoop-2.7.3/etc/hadoop/mapred-site.xml.template /home/hadoop/hadoop-2.7.3/etc/hadoop/mapred-site.xml
# vi /home/hadoop/hadoop-2.7.3/etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

# vi /home/hadoop/hadoop-2.7.3/etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

2.启动ResourceManger和NodeManager后台进程 # sbin/start-yarn.sh

3.确认 # jps

4.访问ResourceManger的web界面 # curl http://localhost:8088/

5.创建HDFS # ./hdfs dfs -mkdir /user/
# ./hdfs dfs -mkdir /user/test

6.拷贝input文件到HDFS目录下
# ./hdfs dfs -put /home/hadoop/hadoop-2.7.3/etc/hadoop/ /user/test/input
# ./hadoop fs -ls /user/test/input

7.执行Hadoop job
# ./hadoop jar ../share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar grep /user/test/input output 'dfs[a-z.]+'

8.确认执行结果
# ./hadoop dfs -cat output/*

13.停止daemon
# sbin/stop-yarn.sh

Hadoop 常用命令

1../hadoop-daemon.sh --script hdfs start datanode(执行后只能启动当前节点)
2../hadoop-demand.sh --script hdfs stop datanode(执行后只能停止当前节点)
3../start-dfs.sh(启动hadoop)
4../stop-dfs.sh (停止hadoop)
5../start-yarn.sh(启动hadoop yarn)
6../stop-yarn.sh(停止hadoop yarn)
7../mr-jobhistory-daemon.sh start historyserver(启动job历史服务器)
8../mr-jobhistory-daemon.sh stop historyserver(停止job历史服务器)
9../hdfs dfs -mkdir /user(创建HDFS文件夹)
10../hdfs dfs -put /home/hadoop/hadoop2.7.3/etc/hadoop/ /user/test/input(拷贝input文件到HDFS目录下)
11../hadoop fs -ls /user/test/input(查看hadoop指定目录的文件信息)
12../hdfs dfs -get output output(从HDFS复制文件到本地) 13../hdfs dfs -cat output/*(查看指定目录的执行结果) 14../hadoop jar ../share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar grep input output 'dfs[a-z.]+'(执行Standalone mode 模式的Hadoop job<在input中统计含有dfs的字符串>)

Hadoop常用工具

1.当hadoop启动成功后可以进行访问(http://{ip}:50070)NameNode管理界面内容
2.当hadoop yarn启动成功后可以进行访问(http://{ip}:8088)ResourceManager管理界面内容
3.当jobhistory daemon启动成功后可以进行访问(http://{ip}:19888)Job History Server管理界面内容

常用配置

1.hdfs-site.xml 中的dfs.permissions(HDFS文件的权限是否开启[value=true or false])

About

Big Data处理笔记

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published