安装环境:
系统:CentOS 6.4 64位
版本:Hadoop 2.6.0 (stable)
创建hadoop用户:
这条命令创建了可以登陆的 hadoop 用户,并使用 /bin/bash 作为shell。
useradd -m hadoop -G root -s /bin/bash
设置hadoop用户密码
passwd hadoop
可为 hadoop 用户增加管理员权限,方便部署,避免一些对新手来说比较棘手的权限问题,执行:
visudo
准备工作:
测试一下 SSH 是否可用:
ssh localhost
如果不可用,可用通过yum命令安装SSH服务
sudo yum install openssh-clients
sudo yum install openssh-server
安装Java环境:
使用root用户安装,输入su命令切换至root用户
su
使用yum命令安装jdk7,注意默认安装jdk目录位于/usr/lib/jvm/java-1.7.0-openjdk
sudo yum install java-1.7.0-openjdk java-1.7.0-openjdk-devel
配置环境变量:
vim /etc/profile
在文件末尾添加下面几句话,按ESC退出编辑模式,并输入wq保存
编译该文件使配置生效:
source /etc/profile
至此,jdk安装完成,输入java -version即可看到jdk版本信息。
安装 Hadoop 2.6稳定版
下载地址:http://mirrors.cnnic.cn/apache/hadoop/common/hadoop-2.6.0/
下载好tar文件后传输至/usr/local/目录下即可
解压tar并将解压出来的文件改名为
tar -zxvf hadooop-2.6.0.tar.gz
mv hadoop-2.6.0 hadoop
检查hadoop的版本,及是否正常运行:
Hadoop伪分布式配置
Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。
在设置 Hadoop 伪分布式配置前,我们还需要设置 HADOOP 环境变量,执行如下命令设置:
vim /etc/profile
同样在文件的结尾添加如下配置信息并保存
# Hadoop Environment Variables
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
保存后,不要忘记执行如下命令使配置生效:
source /etc/profile
输入hadoop version 检查配置是否生效:
Hadoop 的配置文件位于 hadoop/etc/hadoop/下,伪分布式需要修改2个配置文件core-site.xml和hdfs-site.xml。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。
首先修改配置文件core-site.xml,添加以下几个property:
同样配置hdfs-site.xml,添加一下几个配置:
配置完成后,执行 NameNode 的格式化:
hdsf namenode -format
接着开启NaneNode和DataNode守护进程:
start-dfs.sh
若出现如下 SSH 的提示 “Are you sure you want to continue connecting”,输入 yes 即可
启动时可能会有 WARN 提示 “WARN util.NativeCodeLoader…” 如前面提到的,这个提示不会影响正常使用。
如果启动碰到如下错误
可以编辑hadoop目录下etc/hadoop/hadoop-env.sh文件,找到export JAVA_HOME=${JAVA_HOME}这一项,并修改至你jdk的绝对路径如: export JAVA_HOME = /usr/lib/jvm/java-1.7-x86-64
我们还可有查看进程来检查,如下:
在浏览器处输入localhost:50070访问可有看到hadoop运行信息
至此,Hadoop单机部署完毕,下节会讲解Hadoop分布式文件系统的一些原理,后面章节会讲解如何部署配置Hadoop集群