参考:Hadoop安装官方文档:
http://hadoop.apache.org/common/docs/current/single_node_setup.html安转Hadoop所需要的软件:
Java, SSH
我的版本Java:version "1.6.0_26";SSH:OpenSSH_5.3p1 Debian-3ubuntu6, OpenSSL 0.9.8k 25 Mar 2009
1. 下载hadoop安装包,下载地址http://hadoop.apache.org/common/releases.html 我下载的安装包:hadoop-0.20.203.0rc1.tar.gz
2. 解压hadoop安装包,并在${HADOOP_HOME}/conf/hadoop-env.sh中添加JAVA_HOME 测试命令${HADOOP_HOME}/bin/hadoop,正常的话会显示hadoop命令的帮助
注:将HADOOP_HOME添加到/etc/profile中,重启时生效
3. 配置HDFS系统 有两种模式:Standalone模式和Rseudo-Distributed模式
在这里我配置的是Rseudo-Distributed模式,理解为伪分布式模式,hadoop有自己的一套命令进行文件的管理:hadoop fs -[option](如何找到这些文件实际存储在本地位置?)
3.1 按照官方文档修改${HADOOP_HOME}/conf/core-site.xml ${HADOOP_HOME}/conf/hdfs-site.xml ${HADOOP_HOME}/conf/mapred-site.xml
3.2 实现无密码自访问
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
3.3 初次使用时,对HDFS系统进行格式化:bin/hadoop namenode -format
3.4 开启守护进程(Hadoop Daemons): bin/start-all.sh
终端显示信息:
localhost: starting datanode, logging to /home/lumin/Software/hadoop-0.20.203.0/bin/../logs/hadoop-lumin-datanode-luminous.out
localhost: starting secondarynamenode, logging to /home/lumin/Software/hadoop-0.20.203.0/bin/../logs/hadoop-lumin-secondarynamenode-luminous.out
starting jobtracker, logging to /home/lumin/Software/hadoop-0.20.203.0/bin/../logs/hadoop-lumin-jobtracker-luminous.out
localhost: starting tasktracker, logging to /home/lumin/Software/hadoop-0.20.203.0/bin/../logs/hadoop-lumin-tasktracker-luminous.out
可以通过网络接口查看
* NameNode - http://localhost:50070/
* JobTracker - http://localhost:50030/
3.5 测试一个WordCount程序
MapReduce tutorial中给出具体步骤
http://hadoop.apache.org/common/docs/current/mapred_tutorial.html 值得说明的是,在伪分布式模式下,工作环境是HDFS,因此文件路径应该是在HDFS下的。例如,执行WordCount程序,我的指令就是:
/home/lumin/Software/hadoop-0.20.203.0/bin/hadoop jar wordcount.jar org.myorg.WordCount /user/lumin/inputdata /user/lumin/inputdata/output
其中inputdata是HDFS下的输入路径,output将要作为输出路径(在执行前不需要创建,如果是一个已有的路径,hadoop会提示错误,这样做是为了防止某次误操作覆盖了原有的结果)
3.6 退出守护进程:bin/stop-all.sh
心得:对于linux下软件的安装,始终是处于一种知其然而不知其所以然的情况,每一次安装都是一个一个地去查,知识虽能在实践的过程中丰富起来,印象也比较深刻,但还是需要系统地找一本书来看一下,大家有没有关于linux系统的学习心得?或者想要推荐的材料呢?
https://blog.sciencenet.cn/blog-655085-527477.html
上一篇:
[Debug]fwrite和fprintf下一篇:
Hadoop集群安装笔记