网上和很多书上都有不少的hadoop在linux系统下的安装教程,但是尝试过的读者会发现,就算是按照这些教程一步步的操作,还是会在某个地方出错,主要原因是版本问题。尤其是书上的版本一般都较老,所以并不建议对着书上的教程来操作,但是可以作为参考。下面给出我自己亲身实践的安装过程,尽量把我知道的原理也写出来,这样就算有些步骤出现问题,知道了原因也是很容易解决的,就怕出现问题了,还不知道问题出在哪?

下面的代码都是在ubuntu的命令窗口(terminal)中输入:

1.工具准备:

1.1 更新apt-get:在命令行窗口中使用apt-get安装软件很方便;

sudo apt-get update

1.2 安装vim:配置文件。

sudo apt-get install vim

根据输出结果,需要输入“Y”来继续。

2.创建hadoop用户:

2.1增加hadoop用户:创建 hadoop 用户,并使用 /bin/bash 作为 shell

sudo useradd -m hadoop -s /bin/bash

2.2设置密码,按提示输入两次密码:

sudo passwd hadoop

2.3为 hadoop 用户增加管理员权限:

sudo adduser hadoop sudo

3.安装SSH、配置SSH无密码登陆

集群、单节点模式都需要用到 SSH 登陆(类似于远程登陆,你可以登录某台 Linux 主机,并且在上面运行命令),Ubuntu 默认已安装了 SSH client,此外还需要安装 SSH server:

sudo apt-get install openssh-server

安装后,可以使用如下命令登陆本机:

ssh localhost

4.安装java环境

4.1安装jdk:

sudo apt-get install openjdk-8-jre openjdk-8-jdk

4.2配置JAVA_HOME

dpkg -L openjdk-8-jdk | grep '/bin/javac'

该命令会输出一个路径,除去路径末尾的 “/bin/javac”,剩下的就是正确的路径了。如输出路径为 /usr/lib/jvm/java-8-openjdk/bin/javac,则我们需要的路径为 /usr/lib/jvm/java-8-openjdk。

如果这里输出错误,那我们怎么知道JAVA_HOME的地址呢?很简单,输入:

java -verbose

输出:usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar

则前面的usr/lib/jvm/java-8-openjdk就是JAVA_HOME的地址。

然后,使用命令 sudo gedit /etc/profile 打开 /etc/profile 文件:

sudo gedit /etc/profile

然后在文件末尾添加如下三行:

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

然后ctrl+s保存。然后执行如下代码,使更改生效:

$source ~/.bashrc

如果JAVA_HOME还是没有更改过来,可能是文件没有生效,运行

$source /etc/profile

再查看JAVA_HOME,可以发现是我们在文件中设置的路径。

如果上面设置正确的话,$JAVA_HOME/bin/java -version 会输出 java 的版本信息,且和 java -version 的输出结果一样,如下图所示,则配置成功:

5.安装Hadoop

5.1hadoop程序下载:http://mirror.bit.edu.cn/apache/hadoop/common/

建议选择下载 “stable” 下的 hadoop-2.x.y.tar.gz 。

5.2 hadoop安装

输入命令:

sudo tar -zxf ~/Downloads/hadoop-2.7.2.tar.gz -C /usr/local  
cd /usr/local/
sudo mv ./hadoop-2.7.2/ ./hadoop      
sudo chown -R hadoop ./hadoop

Hadoop 解压后即可使用。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:

cd /usr/local/hadoop
./bin/hadoop version

5.3 hadoop单击配置

Hadoop 默认模式为非分布式模式,无需进行其他配置即可运行。非分布式即单 Java 进程,方便进行调试。

配置尚未完成,由于近期较忙,过两天闲下来了再配置。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。