提示:在Linux下进行文件操作,有亮点需要特别留意。其一是权限问题,Linux比Windows的权限管理更为严格,因此对于一些需要root权限的操作,可以使用sudo nautilus打开文件管理或在终端中通过sudo+命令完成。其二是Linux的目录管理。Windows是以盘符->目录->文件的树型组织,Linux则直接以目录方式呈现,在进行文件操作时需要注意。
操作在Ubuntu 15.04进行,JDK版本1.8 Update 60,Hadoop版本2.6.0
1、JDK的安装
下载最新版本JDK。应注意Linux对应的体系结构。在Windows的64位版本中可以同时安装JDK的x86和x64版本,但Linux中只需安装对应的体系结构版本。
解压得到的下载包。sudo tar zxvf jdk-8u60-linux-x64.tar.gz -C /usr/lib/jvm
配置环境变量。sudo gedit /etc/profile
在文件编辑器中加入如下语句
# set java environment
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_60
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
编辑环境变量
设置默认JDK版本
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.8.0_60/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.8.0_60/bin/javac 300
执行代码:
sudo update-alternatives --config java
测试环境配置是否成功 java -version
配置成功,JDK版本8.0u60
2、Hadoop安装
若Linux缺少必要包,在安装前需先安装必要包。
sudo apt-get install ssh
sudo apt-get install rsync
解压Hadoop安装包。此处安装到/usr/hadoop目录下。sudo tar -zxvf hadoop-2.6.0.tar.gz。
为避免权限问题,便于查看目录文件,可修改权限。sudo chown -hR cheng /usr/hadoop (绿色部分为安装的当前用户的用户名)。
设置SSH为免密码登录。
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
(ssh-keygen 代表生成密钥; -t 表示指定生成的密钥 类型; dsa 是 dsa 密钥认证的意思; -P 用于提供密语(接着后面是两个单引号, 不要打错); -f 表示指定生成密钥文件)
这条命令完成后,会在当前文件夹下面的 .ssh 文件夹下创建 id_dsa 和 id_dsa.pub 两个文件,这是 SSH 的一对私钥和公钥,把 id_dsa.pub (公钥)追加到授权的 key 中去,输入如下命令:
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
至此,免密码登录本机已经配置完毕。
说明:一般来说,安装SSH时会自动在当前用户下创建.ssh这个隐藏文件夹,一般不会直接看到,除非安装好了以后,在命令行使用命令ls才会看到。
输入ssh localhost ,显示登录成功信息。
3、配置Hadoop伪分布式模式
hadoop可以通过三种模式启动:单机模式,伪分布式模式和完全分布模式。
单机模式即以非分布式模式配置一个独立的Java进程。对调试很有帮助。
伪分布式模式即每一个Hadoop守护进程都以一个独立的Java进程进行,这种模式可以模拟分布式情况。
完全分布式模式即真实情况下的分布式配置。
配置hadoop环境文件hadoop-env.sh(此文件在hadoop安装目录/etc/hadoop下)
打开文件,找到某行有 ”# export JAVA_HOME = ...” 字样的地方,去掉 “#” ,然后在等号后面填写JDK 路径。export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_60
配置 Hadoop 的核心文件 core-site.xml (此文件在hadoop安装目录/etc/hadoop下)
打开文件,会发现标签 中是空的,在空的地方添加如下配置
fs.default.name
hdfs://localhost:9000
dfs.replication
1
hadoop.tmp.dir
/home/cheng/tmp
(cheng部分为当前用户名)
配置 Hadoop 中 MapReduce 的配置文件 mapred-site.xml (此文件在hadoop安装目录/etc/hadoop下)
打开文件,会发现标签 中是空的,在空的地方添加如下配置
mapred.job.tracker
localhost:9001
格式化一个新的分布式文件系统:
bin/hadoop namenode -format
启动Hadoop守护进程:
sbin/start-all.sh
Hadoop守护进程的日志写入到 ${HADOOP_LOG_DIR} 目录 (默认是 ${HADOOP_HOME}/logs).
若出现形如下图所示即启动成功
hadoop启动成功
输入sbin/stop-all.sh关闭hadoop。
hadoop2.7.1在Ubuntu 32位上安装单机版伪分布环境:http://www.linuxdiyf.com/linux/14286.html
CentOS配置Hadoop环境变量:http://www.linuxdiyf.com/linux/12579.html
ubuntu15.04安裝hadoop2.6.0及eclipse开发环境配置:http://www.linuxdiyf.com/linux/12474.html
Ubuntu下配置Hadoop环境:http://www.linuxdiyf.com/linux/10191.html
Ubuntu15中安装hadoop2.7单机模式:http://www.linuxdiyf.com/linux/13027.html