当前位置:   article > 正文

Ubuntu下Hadoop的安装教程_ubuntu安装hadoop教程

ubuntu安装hadoop教程

Ubuntu下Hadoop的安装教程,Hadoop的单机配置和伪分布式安装

教程

本教程采用的是Ubuntu18.04.4+hadoop2.7.7+jdk1.8

创建Hadoop用户

打开命令行终端(ctrl+alt+t),输入如下命令创建hadoop用户:sudo useradd -m hadoop -s /bin/bash
为hadoop用户设置密码:sudo passwd hadoop(连续输入两次)
hadoop用户增加管理员权限:sudo adduser hadoop sudo

apt工具更新

sudo apt-get update
  • 1

若出现如下错误:在这里插入图片描述
可以使用以下语句进行解决sudo rm /var/lib/apt/lists/lock(亲测有效,可以用)

SSH的安装

检查ssh是否已经安装启动,有sshd说明已经启动。

sudo ps -ef | grep ssh
  • 1

Ubuntu 默认已安装了 SSH client,此外还需要安装 SSH server:

sudo apt-get install openssh-server
  • 1

登录ssh(首次登录会有提示,按提示输入yes):

ssh localhost
  • 1

紧接着退出登录,设置无密码登录,使用ssh-keygen 生成密钥,并将密钥加入到授权中:

exit                           
cd ~/.ssh/                     
ssh-keygen -t rsa              # 会有提示,都按回车就可以
cat ./id_rsa.pub >> ./authorized_keys  
  • 1
  • 2
  • 3
  • 4

之后便可直接利用ssh localhost进行无密码登录。

Java环境的搭建

JDK的安装我采用的是手动安装,将压缩的jdk安装包jdk-8u261-linux-x64.tar.gz先进行下载,假设保存在“/home/zheng/Downloads/”目录下,之后执行如下代码:

cd /usr/lib
sudo mkdir jvm #用来存放jdk文件夹,如果已有该文件夹,则跳过此步骤
cd ~ #进入主目录
cd Downloads  
sudo tar -zxvf ./jdk-8u262-linux-x64.tar.gz -C /usr/lib/jvm  #解压jdk文件
mv jdk1.8.0_262 java #修改jdk文件名为java,如果出错,请先用“ls”查看该路径是否有该文件夹
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

紧接着为jdk设置环境变量:

cd ~
vi ~/.bashrc  
  • 1
  • 2

在编辑器中添加以下几行代码:

export JAVA_HOME=/usr/lib/jvm/java
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
  • 1
  • 2
  • 3
  • 4

保存.bashrc文件并退出编辑器,使用source ~/.bashrc让文件配置生效。
使用java -version检查安装是否完成,如果显示版本信息,则安装已经完成。

安装Hadoop

通过Hadoop镜像进行下载,选择tar.gz格式的文件,本教程采用hadoop-2.7.7.tar.gz版本进行安装。
将安装包下载并安装在/usr/local下:

sudo tar -zxvf /usr/local/hadoop-2.7.7.tar.gz -C /usr/local    
cd /usr/local/
sudo mv ./hadoop-2.7.7/ ./hadoop            #将文件夹名改为hadoop
sudo chown -R hadoop ./hadoop 				#修改文件夹权限
  • 1
  • 2
  • 3
  • 4

解压完使用以下代码验证是否可用,如果出现版本信息则表示已成功:

cd /usr/local/hadoop
./bin/hadoop version
  • 1
  • 2

Hadoop单机配置

使用Hadoop自带例子进行调试,创建input文件夹,将输出数据存放在output文件夹下。

cd /usr/local/hadoop
mkdir ./input
cp ./etc/hadoop/*.xml ./input   # 将配置文件作为输入文件拷贝到input文件夹下
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'
cat ./output/*          # 查看output文件夹下运行结果
  • 1
  • 2
  • 3
  • 4
  • 5

若出现以下结果,则代表执行成功。

在这里插入图片描述
再次运行上面例子会出错,需要先将output文件夹删除。rm -r ./output

Hadoop伪分布式配置

伪分布式需要修改 /usr/local/hadoop/etc/hadoop/ 下的core-site.xml 和 hdfs-site.xml 文件。
修改配置文件 core-site.xml:vi ./etc/hadoop/core-site.xml
在这里插入图片描述
为xml中的configuration 标签添加如下内容:

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

同样的,修改配置文件 hdfs-site.xml:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/data</value>
    </property>
</configuration>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

配置完成后,即可进行NameNode 的格式化:

cd /usr/local/hadoop
./bin/hdfs namenode -format
  • 1
  • 2

如果倒数第五行有“Exitting with status 0” 的提示,即表示成功。
然后开启 NameNode 和 DataNode 守护进程。

cd /usr/local/hadoop
./sbin/start-dfs.sh 
  • 1
  • 2

此处会有ssh提示,按照提示输入yes即可。

在这里插入图片描述

若出现如图错误,找到"/usr/local/hadoop/etc/hadoop/hadoop-env.sh”该文件,在里面找到“export JAVA_HOME= J A V A H O M E ” 这 行 , 将 其 中 的 “ {JAVA_HOME}”这行,将其中的“ JAVAHOME”这行,将其中的“{JAVA_HOME}”改为具体地址,比如,“export JAVA_HOME=/usr/lib/jvm/java”,然后,再次启动Hadoop即可。
启动完成后,可以通过命令 jps来判断是否成功启动。若成功,则会出现下图类似结果。
在这里插入图片描述
成功启动后,可以访问 Web 界面 http://localhost:50070 查看 NameNode 和 Datanode 信息,还可以在线查看 HDFS 中的文件。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/459608
推荐阅读
相关标签
  

闽ICP备14008679号