【hadoop入门实战】Mac上安装hadoop,并运行程序(1)

安装Hadoop

参考:

http://blog.csdn.net/xbwer/article/details/35614679

系统版本:


————————————————————————————————————————————————————————————————————————————

1.安装Java——之后会运行jar包,肯定需要java的运行环境

查看java版本:
[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. java -version  



————————————————————————————————————————————————————————————————————————————
2.下载hadoop
地址:http://hadoop.apache.org/releases.html

然后看到


我没有选版本太高的,因为不会用,下载的是2.7.3版本的,对我来说够用了,入门也不会特别难吧。


存放的路径可以看到:/Users/hadoop


配置mac os 自身环境
这个主要是配置ssh环境。先在terminal里面输入
[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <span style="white-space:pre">    </span>ssh localhost  
会有错误提示信息,表示当前用户没有权限。这个多半是系统为安全考虑,默认设置的。更改设置如下:进入system preference --> sharing --> 勾选remote login,并设置 allow access for all users。再次输入“ssh localhost",再输入密码并确认之后,可以看到ssh成功。
不过这里面还有一个麻烦,就是每次都会要求输入用户密码。《Hadoop实战》提供了一种免登陆的方法。首先,输入
[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <span style="white-space:pre">    </span>ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa  
ssh-keygen表示生成秘钥;-t表示秘钥类型;-P用于提供密语;-f指定生成的秘钥文件。这个命令在”~/.ssh/“文件夹下创建两个文件id_dsa和id_dsa.pub,是ssh的一对儿私钥和公钥。接下来,将公钥追加到授权的key中去,输入:
[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <span style="white-space:pre">    </span>cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys  
————————————————————————————————————————————————————————————————————————————
3设置环境变量

在实际启动Hadoop之前,有三个文件需要进行配置。

但在这之前,我们需要设置一下几个类似Windows的环境变量,方便以后在命令行敲命令。

export HADOOP_HOME=/Users/sherry/hadoop-2.7.3-src (根据你自己的目录进行设定)

export PATH=$PATH:$HADOOP_HOME/bin

注明:export设置只对当前的bash登录session有效。这是存在内存里面的。如果你嫌麻烦,就直接写入etc中的profile文件里面就好。
————————————————————————————————————————————————————————————————————————————
4.配置hadoop-env.sh
在Hadoop->conf目录下,找到hadoop-env.sh,打开编辑进行如下设置:

export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home(去掉注释)

export HADOOP_HEAPSIZE=2000(去掉注释)

export HADOOP_OPTS="-Djava.security.krb5.realm=OX.AC.UK -Djava.security.krb5.kdc=kdc0.ox.ac.uk:kdc1.ox.ac.uk"(去掉注释)

注意第三个配置在OS X上最好进行配置,否则会报“Unable to load realm info from SCDynamicStore”。
————————————————————————————————————————————————————————————————————————————
5.配置core-site.xml——指定了NameNode的主机名与端口
[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0"?>  
  2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  
  3.   
  4. <!-- Put site-specific property overrides in this file. -->  
  5.   
  6. <configuration>  
  7.     <property>  
  8.         <name>hadoop.tmp.dir</name>  
  9.         <value>hdfs://localhost:9000</value>  
  10.         <description>A base for other temporary directories.</description>  
  11.     </property>  
  12.     <property>  
  13.         <name>fs.default.name</name>  
  14.         <value>hdfs://localhost:8020</value>  
  15.     </property>  
  16. </configuration>   
————————————————————————————————————————————————————————————————————————————
6.配置hdfs-site.xml——指定了HDFS的默认参数副本数,因为仅运行在一个节点上,所以这里的副本数为1
[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0"?>  
  2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  
  3.   
  4. <!-- Put site-specific property overrides in this file. -->  
  5.   
  6. <configuration>  
  7.     <property>  
  8.         <name>dfs.replication</name>  
  9.         <value>1</value>  
  10.     </property>  
  11. </configuration>   
————————————————————————————————————————————————————————————————————————————
7.配置mapred-site.xml——指定了JobTracker的主机名与端口
[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0"?>  
  2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  
  3.   
  4. <!-- Put site-specific property overrides in this file. -->  
  5.   
  6. <configuration>  
  7.     <property>  
  8.         <name>mapred.job.tracker</name>  
  9.         <value>hdfs://localhost:9001/value>  
  10.     </property>  
  11.     <property>  
  12.         <name>mapred.tasktracker.map.tasks.maximum</name>  
  13.         <value>2</value>  
  14.     </property>  
  15.     <property>  
  16.         <name>mapred.tasktracker.reduce.tasks.maximum</name>  
  17.         <value>2</value>  
  18.     </property>  
  19. </configuration>  
————————————————————————————————————————————————————————————————————————————
8.安装HDFS
经过以上的配置,就可以进行HDFS的安装了。
[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. $HADOOP_HOME/bin/hadoop namenode -format  

如果出现以下结果:


就说明你的HDFS已经安装成功了。

————————————————————————————————————————————————————————————————————————————
9.启动Hadoop
很简单,一条命令搞定。
[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. $HADOOP_HOME/bin/start-all.sh  




到这里,hadoop单机伪分布式的环境就算搭建好了。
下一篇,用最简单的程序来看下效果。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值