Ubuntu 大数据环境搭建(一):Hadoop搭建

这篇文章将详细介绍如何搭建大数据环境,从安装和配置Hadoop开始,逐步展开到HBase、HDFS、MongoDB以及Eclipse等组件的设置,大家有不懂的可以评论!

Ubuntu版本:Ubuntu 22.04或者Ubuntu 16.04等通用
Hadoop版本:hadoop-3.3.5
Java版本:jdk1.8.0_371

需要软件包的可以自取:大数据环境搭建软件包

创建Hadoop用户

1、创建Hadoop用户

sudo adduser hadoop         #设置Hadoop用户
sudo passwd hadoop          #设置用户密码
sudo usermod -aG sudo hadoop      #添加用户到sudo组
su - hadoop        #切换到Hadoop用户

2、更新APT以及安装vim编辑器

sudo apt-get update
sudo apt-get upgrade
sudo apt install vim

安装SSH

1. 安装SSH服务端

sudo apt-get install openssh-server

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

ssh localhost

执行该命令后会出现如图所示的提示信息(SSH首次登录提示),输入“yes”,然后按提示输入密码hadoop,就登录到本机了。
请添加图片描述

3. 配置免密协议

cd ~/.ssh/        # 若没有该目录,请先执行一次ssh localhost
ssh-keygen -t rsa    # 会有提示,都按回车即可
cat ./id_rsa.pub >> ./authorized_keys  # 加入授权

4. 测试免密协议:

ssh localhost     #测试免密是否成功
exit     #退出

安装Java环境

1. 创建“/usr/lib/jvm”目录用来存放JDK文件

cd /usr/lib
sudo mkdir jvm     #创建/usr/lib/jvm目录用来存放JDK文件

2. 解压jdk文件

cd ~          #进入hadoop用户的主目录
cd Downloads
sudo tar -zxvf ./jdk-8u371-linux-x64.tar.gz -C /usr/lib/jvm           #注意jdk版本要与你下载的版本一致  

3. 设置环境变量

sudo vim ~/.bashrc     

在末尾添加以下内容:(注意观察里面的jdk路径以及与你安装的版本是否一致)

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_371              #注意你下载的版本
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

使环境变量生效

source ~/.bashrc

检验Java环境是否配置成功

java -version

如果结果如下,则配置成功:
请添加图片描述

安装Hadoop

1. 确保当前用户为Hadoop用户

请添加图片描述
如果不是则运行以下代码:

su - hadoop        #切换到Hadoop用户

2. 下载以及安装Hadoop

2.1、将下载好的hadoop文件从本地拖到Ubuntu的Download文件夹下,解压Hadoop文件

sudo tar -zvxf ~/下载/hadoop-3.3.5.tar.gz -C /usr/local    # 解压到/usr/local中,注意Hadoop的版本是否与你的一致
cd /usr/local/
sudo mv ./hadoop-3.3.5/ ./hadoop      # 将文件夹名改为hadoop
sudo chown -R hadoop ./hadoop       # 修改文件权限

2.2、验证Hadoop是否安装成功(如果显示Hadoop版本则安装成功)

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

2.3、单机模式配置

cd /usr/local/hadoop
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.5.jar

2.4、选择运行grep例子:

cd /usr/local/hadoop
mkdir input
cp ./etc/hadoop/*.xml ./input   # 将配置文件复制到input目录下
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.5.jar grep ./input ./output 'dfs[a-z.]+'
cat ./output/*          # 查看运行结果

结果如下则成功:
请添加图片描述

3. 伪分布式模式配置

3.1、修改配置文件

3.1.1、修改hostname
sudo vim /etc/hostname
将里面的内容改成你的用户:
localhost

重启虚拟机:

sudo reboot

#进入Hadoop用户
3.1.2、修改core-site.xml文件:
cd /usr/local/hadoop/etc/hadoop/
sudo vim core-site.xml

添加以下内容:

<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>

添加效果如下:
请添加图片描述

3.1.3、修改 hdfs-site.xml文件
sudo vim 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>

添加效果如下:
请添加图片描述

3.1.4、修改hadoop-env.sh文件:
sudo vim usr/local/hadoop/etc/hadoop/Hadoop-env.sh
在文件里任何一个位置添加以下内容:
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_371           #注意这边的jdk版本要与你的一致   

4. 启动Hadoop

cd /usr/local/hadoop
./sbin/start-dfs.sh        #start-dfs.sh是个完整的可执行文件,中间没有空格

查看Hadoop是否启动成功

jps   

结果如下:

3282 SecondaryNameNode
3382 Jps
3097 DataNode
2941 NameNode

使用Web界面查看HDFS信息,在浏览器中输入地址localhost:9870
请添加图片描述

5. 运行Hadoop伪分布式实例

在HDFS中创建用户目录

cd /usr/local/hadoop
./bin/hdfs dfs -mkdir -p /user/hadoop

接着需要把本地文件系统的“/usr/local/hadoop/etc/hadoop”目录中的所有xml文件作为输入文件,复制到分布式文件系统HDFS中的“/user/hadoop/input”目录中,命令如下:

cd /usr/local/hadoop
./bin/hdfs dfs -mkdir input               #在HDFS中创建hadoop用户对应的input目录
./bin/hdfs dfs -put ./etc/hadoop/*.xml input            #把本地文件复制到HDFS中

运行Hadoop自带的grep程序,命令如下:

./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.5.jar grep input output 'dfs[a-z.]+'

查看HDFS中的output文件夹中的内容:

./bin/hdfs dfs -cat output/*

执行结果如图所示:
请添加图片描述

6. 关闭Hadoop

cd /usr/local/hadoop
./sbin/stop-dfs.sh

拓展:为了方便启动Hadoop,配置以下内容:

配置PATH变量

sudo vim ~/.bashrc

在最下面添加以下内容:

export PATH=$PATH:/usr/local/hadoop/sbin:/usr/local/hadoop/bin

应用环境变量:

source ~/.bashrc

配置以上属性后则可以在任何路径下输入以下代码启动以及关闭haoop:

start-dfs.sh          #启动Hadoop
stop-dfs.sh           #关闭Hadoop
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值