HADOOP伪分布式安装

来源:互联网 发布:makeblock 淘宝 编辑:程序博客网 时间:2024/04/29 07:17

一、环境搭建

1)安装JDK
hadoop是java编写的,首先自然是要安装jdk了,在ubuntu和debian上可以直接用apt-get install sun-java6-jdk安装即可。

2)安装SSH
可以安装open-ssh-server。

3)在namenode上面实现无密码登录
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 
输入上面的命令回车,完成后会在 ~/.ssh/ 生成两个文件: id_dsa 和 id_dsa.pub 。这两个是成对出现,类似钥匙和锁。 再把 id_dsa.pub 追加到授权 key 里面 ( 当前并没有 authorized_keys文件 ) : 
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 
完成后可以实现无密码录本机:ssh localhost 。若此时连接不上,检查sshd服务是否打开。可以用命令:service sshd start开启服务。
4)下载hadoop
这次我下载的是hadoop的1.2.1版本,应该是最新的稳定版。地址:http://www.apache.org/dyn/closer.cgi/hadoop/common/。

二、hadoop配置

解压下载的hadoop.tar.gz文件,配置文件全部位于conf目录中。主要配置下面四个配置文件,具体配置参数的含义参见:http://www.cnblogs.com/ggjucheng/archive/2012/04/17/2454590.html。
1)配置hadoop-env.xml
export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.26/export HADOOP_SSH_OPTS="-p 1220"
其中只需要配置java路径,如果ssh端口默认不是22,请设置HADOOP_SSH_OPTS。
2)配置masters和slaves文件,默认都是localhost。我的这个hadoop只用了一台机器,所以不修改。
如果是多台机器,则在masters中配置master,slaves中配置其他节点ip。
3)配置core-site.xml
<configuration>    <property>        <name>hadoop.tmp.dir</name>        <value>/home/hadoop/tmp</value>    </property>    <property>        <name>fs.default.name</name>        <value>hdfs://localhost:6990</value>    </property></configuration>
4)配置hdfs-site.xml
<configuration>    <property>        <name>dfs.replication</name>        <value>1</value>    </property>    <property>        <name>dfs.name.dir</name>        <value>/home/hadoop/name</value>        <description>  </description>    </property>    <property>        <name>dfs.data.dir</name>        <value>/home/hadoop/data</value>        <description> </description>    </property></configuration>
5)配置mapred-site.xml
<configuration>    <property>        <name>mapred.job.tracker</name>        <value>localhost:6991</value>    </property></configuration>


三、运行hadoop

1) 格式化文件系统
bin/hadoop namenode -format
2)启动hadoop
bin/start-all.sh
3)启动完成用命令jps查看,如果有如下几个进程,代表hadoop启动成功了。
3733 SecondaryNameNode12592 Jps3829 JobTracker3501 NameNode3942 TaskTracker3616 DataNode
4)启动成功后,可以通过命令和WEB查看hadoop运行状态。
查看集群状态: $ hadoop dfsadmin -report Hadoop 的 web 方式查看: http://localhost:50070 

四、示例程序

hadoop最经典的示例当然是wordcount程序了,类似于其他语言中的helloworld。运行方法如下:
1)先在本地磁盘建立两个输入文件file01和file02:
$echo“hello world bye world”>file01
$echo“hello hadoop goodbye hadoop”>file02
2)在hdfs中建立一个input目录:$hadoop fs –mkdir input
3)将file01和file02拷贝到hdfs中:
bin/hadoop fs –copyFromLocal /home/hadoop/file0*  input

4)执行wordcount:

bin/hadoop jar hadoop-examples-1.2.1.jar wordcount input output
5)完成之后,查看结果:
gzshishujuan@onlinegame-11-219:~/hadoop$ bin/hadoop fs -cat output/part-r-00000bye1goodbye1hadoop2hello2world2









原创粉丝点击