1 、下载 hadoop-1.1.2.tar.gz jdk-7u25-linux-i586.tar.gz 将其分别解压到/usr/local下面,
并将jdk的解压目录改名jdk1.7
2 、配置java的环境变量 vim /etc/profile 在最后面加入下面的内容
JAVA_HOME=/usr/local/jdk1.7
CLASSPAHT=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export PATH JAVA_HOME
3、配置ssh的免密码登录
注意:ubuntu 默认安装openssh-client,但是木有安装server
通过 /etc/init.d/ssh -start 启动server进程,如果提示ssh不存在 那么就是没安装server
通过 sudo apt-get install openssh-server命令安装即可 。fedora linux没有这个问题
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
这时通过 ls -l ~/.ssh/可以看到在~/.ssh/下生成两个文件id_rsa,id_rsa.pub
执行命令 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys生成 authorized_keys.
如果配置成功,运行命令 ssh localhost 可以成功免密码登录
实际上,hadoop的安装过程中,是否免密码登录是无关要紧的,但是如果不配置密码登录,
每次启动hadoop都需要输入密码以登录到每台机器的DataNode上,考虑到一般的hadoop集群
动辄拥有数百或上千台机器,因此一般来说都会配置SSH的免密码登录。
4、配置hadoop
cd /usr/local/hadoop-1.1.2/conf 进入配置目录
1) 修改hadoop-env.sh
找到JAVA_HOME的配置选项,去掉前面的#号,
并修改JAVA_HOME=/usr/local/jdk1.7(按照实际情况修改)
2) 修改 core-site.xml (定义hdfs的入口)
在根目录下建立一个存放hdfs文件系统的目录,mkdir /hadoop_tmp,
然后,在<configuration></configuration>之间添加内容,添加后如下:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/hadoop_tmp</value>
<description>A base for other temporary directories.</description>
</property>
</configuration>
hdfs默认目录/tmp,而/tmp目录每次启动都会被清空,导致格式化信息丢失,namenode无法启动,
所以需要修改hadoop.tmp.dir
3) 修改hdfs-site.xml
在<configuration></configuration>之间添加内容,添加后如下:
<configuration><property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
4)修改mapred-site.xml(mapreduce job tracker入口)
在<configuration></configuration>之间添加内容,添加后如下:
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
配置完成
5、在hadoop 的bin目录下运行 ./hadoop namenode -format格式化hadoop配置
启动hadoop 命令: ./start-all.sh
运行jps查看是否成功启动,正常启动可以看到下面五个节点
JobTracker
DataNode
TaskTracker
NameNode
SecondaryNameNode
打开浏览器,输入localhost:50030可以看到mapreduce的界面
输入localhos:50070可以看到hdfs文件系统的管理界面
6、关闭hadoop 命令./stop-all.sh