Ubuntu 20.04.3下Hadoop2.10.1伪分布式的安装与配置

一、配置账户

创建hadoop用户

sudo useradd -m hadoop -s /bin/bash

设置hadoop用户的密码

sudo passwd hadoop

给hadoop用户分配管理员权限

sudo adduser hadoop sudo

切换至hadoop用户

sudo su - hadoop

更新apt

sudo apt-get update

二、安装ssh-server及配置免密登录

安装ssh-server

sudo apt-get install openssh-server

安装完成之后进入ssh

cd ~/.ssh

如果显示没有这个文件,那么先执行一次

ssh localhost

再进入ssh就行了
接着生成本机密钥

ssh-keygen -t rsa

接着一直按回车即可
将公钥追加到authorized_keys文件中

cat ./id_rsa.pub >> ./authorized_keys

然后赋予authorized_keys文件权限

chmod 600 ./authorized_keys

输入命令查看ssh是否配置成功

ssh localhost

三、远程登录虚拟机与Java安装

在Windows下运行cmd,登录虚拟机,虚拟机ip可输入ifconfig查询

ssh 虚拟机ip -l hadoop

查看Java版本,此时显示未安装Java

javac -version

安装openjdk8

sudo apt install openjdk-8-jdk-headless

安装好后,切换到安装目录下,将目录改一名为java,方便配置环境

cd /usr/lib/jvm
sudo mv java-8-openjdk-amd64 java

配置Java环境变量

vim ~/.bashrc

注:进入文件后按i进入编辑模式,方向键移动光标,编辑完后先按esc退出编辑模式,接着输入:wq保存修改并退出,输入:q为直接退出不保存修改。
在文件中添加如下几行:

# java environment
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

接着使配置立刻生效

source ~/.bashrc

此时查看Java版本

java -version
javac -version

四、安装与配置Hadoop

首先下载Hadoop

wget http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.10.1/hadoop-2.10.1.tar.gz

解压安装到/usr/local目录下

sudo tar -zxvf hadoop-2.10.1.tar.gz -C /usr/local

更换目录名为hadoop以简化配置文件

cd /usr/local
sudo mv hadoop-2.10.1 hadoop

切换用户权限

sudo chown -R hadoop ./hadoop

配置hadoop环境变量,还是在~/.bashrc文件中

vim ~/.bashrc

添加以下几行:

# hadoop environment
export HADOOP_HOME=/usr/local/hadoop
export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

再执行一下生效配置:

source ~/.bashrc

检查一下Hadoop版本

hadoop version

五、伪分布式配置

Hadoop的配置文件位于/usr/local/hadoop/etc/hadoop/中,
因此进入该文件夹

cd /usr/local/hadoop/etc/hadoop

伪分布式需要修改2个配置文件core-site.xmlhdfs-site.xml ,首先修改core-site.xml文件

vim core-site.xml

添加以下几行:

<configuration> 
	<!-- 指定namenode的通信地址 -->
	<property> 
		<name>fs.defaultFS</name> 
		<value>hdfs://localhost:9000</value> 
	</property> 
	<!-- 指定hadoop运行时产生文件的存储目录 -->
	<property> 
		<name>hadoop.tmp.dir</name> 
		<value>file:/usr/local/hadoop/tmp</value> 
	</property> 
</configuration>

接着修改hdfs-site.xml文件

vim hdfs-site.xml

添加以下几行:

<configuration>
	<property>
		<name>dfs.replication</name>
		<value>1</value>
	</property>
	<property>
		<name>dfs.permissions</name>
		<value>false</value>
	</property>
	<property>
		<name>dfs.name.dir</name>
		<value>file:/usr/local/hadoop/hdfs/name</value>
		<description>namenode上数据块的物理存储位置</description>
	</property>
	<property>
		<name>dfs.data.dir</name>
		<value>file:/usr/local/hadoop/hdfs/data</value>
		<description>datanode上数据块的物理存储位置</description>
	</property>
	<property>
		<name>dfs.http.address</name>
		<value>0.0.0.0:50070</value>
	</property>
</configuration>

配置完成后执行format命令,格式化名称节点,注意路径是在/usr/local/hadoop/bin

cd /usr/local/hadoop/bin
hdfs namenode -format

开启hdfs,注意路径是在/usr/local/hadoop/sbin,启动完成后,可以通过命令jps来判断是否成功启动,若成功启动则会列出如下进程: NameNodeDataNodeSecondaryNameNode

cd /usr/local/hadoop/sbin
start-dfs.sh
jps

成功启动后,在浏览器中输入localhost:50070会出现以下页面
Ubuntu 20.04.3下Hadoop2.10.1伪分布式的安装与配置
关闭hdfs:

stop-dfs.sh

六、配置yarn(非必须)

配置yarn-site.xml

cd /usr/local/hadoop/etc/hadoop
vim yarn-site.xml

添加一下几行:

<configuration> 
<!-- Site specific YARN configuration properties -->
	<property> 
		<name>yarn.nodemanager.aux-services</name> 
		<value>mapreduce_shuffle</value> 
	</property> 
	<property> 
		<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> 
		<value>org.apache.hadoop.mapred.ShuffleHandler</value> 
	</property> 
	<property> 
		<name>yarn.resourcemanager.address</name> 
		<value>127.0.0.1:8032</value> 
	</property> 
	<property> 
		<name>yarn.resourcemanager.scheduler.address</name> 
		<value>127.0.0.1:8030</value> 
	</property> 
	<property> 
		<name>yarn.resourcemanager.resource-tracker.address</name> 
		<value>127.0.0.1:8031</value> 
	</property> 
</configuration>

启动yarn,同样是在/usr/local/hadoop/bin路径下(注意要先启动hdfs:start-dfs.sh

start-yarn.sh

成功启动后,在浏览器中输入localhost:8088会出现以下页面
Ubuntu 20.04.3下Hadoop2.10.1伪分布式的安装与配置
关闭yarn:

stop-yarn.sh

注:可以同时启动与关闭

start-all.sh
stop-all.sh

至此伪分布安装配置成功!!!

上一篇:spark


下一篇:(五)ROS节点