去年就开始研究hadoop了,但自己懒于写博客,不过曾经的笔记都还在,现在整理一下分享我的安装见解。
hadoop的安装网上有很多,我也是自己一点一点通过各种他人博客及教学视频安装成功的,虽然是成功了,但是对于自己手头上的各种资料(书,各种网络资源ppt等)发现,hadoop的安装还是有些不同的! 不过大致都类似。
先列举一些资料,供初学者使用,其中有很多分享经验的才智之士,在此向他们致敬!
秋水的博客:
http://blog.csdn.net/lizhe_dashuju
如果你闲麻烦,你可以下载他整理好的pdf
http://vdisk.weibo.com/s/zK1F9hyOXkXvO/1383551752
另外是一些很有价值的视频资料
里面东西很好,再次向这位人士致以崇高的敬意
在开始配置之前先准备一下配置环境:
一 .准备handoop
初学者可能对hadoop的版本搞晕,而不知道安装哪个好, 那么请去这里看看
截至到今天,2014年3月3日, Apache的官方hadoop的稳定版本分别是
hadoop-0.23.10/ hadoop-1.2.1/ hadoop-2.3.0/
如果要学习的话,因为网上的很多资料都是基于1.2.1, 因此我准备的环境是1.2.1的。 各个版本的安装不尽相同, 但大体还都是一样的。
二. 准备Linux(我的是Centos6.5,你喜欢什么版本就什么)
搭建伪分部式的环境
(学习环境有两种,一种是单机模式,一种是伪分部式模式,生成环境自然是分布式模式)
Linux 的安装请百度自行查找,这里不再多说,我认为对于要想学好hadoop 学会linux是必然的前提,请大家不要一看自己不会linux而放弃,我自己的linux水平也很菜的,借着学hadoop来使自己了解一些linux也是很好的。你也可以读秋水写的0基础学习hadoop。
三.准备JDK
我自己本机装的JDK是jdk-7u45,oracle 官方的现在是JDK-7u51
配置环境变量
用vi或gedit 进入 /etc/profile 命令 “ vi /etc/profile ” 或“gedit /etc/profile””
增加两条内容
export JAVA_HOME=你的jdk路径
export PATH=.:$JAVA_HOME/bin:$PATH
至于CLASSPATH 如果是安装JDK1.5以上,就不用配置了(有些老套的人配这个变量净扯淡,因为1.5以后的版本都能自动扫描当前目录及dt.jar和tools.jar,java8GA版再过17天就要与大家见面了,这年头还有人用1.5以下版本? )
保存退出profile文件
执行命令“source /etc/profile” 使之立即生效
用 java -version 验证
如果输出版等信息则证明安装成功。
(不要以为SSH 是三大框架,这里的SSH 是 Secure Shell ,是一种专为远程登录会话和其他网络服务提供安全性的协议,配置免密码登录是因为 在服务器集群中hadoop的各结点之间要相互通信,各节点可能在不同的服务器上,所以如果不配置面密码的话就要人工输入账号密码是相当繁琐的!)
请确认你的linux上安装了SSH,通常来说,社区版本及 Ubuntu都自带了吧,没带那就百度安装一个 OpenSSH!执行命令 “ tar -zxvf hadoop-1.2.1.tar.gz”
增加环境变量
“ vi /etc/profile”
增加 export HADOOP_HOME=/usr/local/hadoop-1.2.1
增加 :HADOOP_HOME/bin 到PATH变量中
命令 “Source /etc/profile ” 立即生效
修改hadoop的配置文件(搭建伪分布)
位于$HADOOP_HOME/conf目录下
要修改4个文件
hadoop-env.sh core-site.xml
hadfs-site.xml mapred-site.xml
修改1 hadoop-env.sh
第9行的 JAVA_HOME 令其指向自己安装的jdk的安装目录/usr/local/jvm/jdk1.7
修改2 core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://你的主机名:9000</value>
<description>change your own hostname</description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>
</configuration>
修改3 hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
修改4 mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>你的主机名:9001</value>
<description>change your own hostname</description>
</property>
</configuration>
5 对hadoop进行格式化 “hadoop namenode -format” ;
6启动
命令“start-all.sh” 想关闭时的关闭命令是 “stop-all.sh”
执行jps 可以看执行的java进程 (这个命令来自java)
启动hadoop后会出现5个进程
JobTracker
NameNode
SecondaryNameNode
DataNode
Jps
如果看到起动起5个进程 那么hadoop的安装就成功了