使用WSL配置hadoop伪分布式环境

2,865 阅读2分钟

1.WSL准备

1.1 在microsoft store 中下载wsl

我这里下载的是Ubuntu 18.04 LTS

1.2 Ubuntu系统准备

首先下载完成后确保在启用或关闭windows功能Hyper-V适用于linux与windows子系统的选项是打开的

然后重启系统打开wsl,这时系统会需要你等待一会进行准备,准备完成后会提示你输入用户名并输入两次密码

完成后输入

sudo apt-get update

Ubuntu已经自带了SSH client,还需要安装SSH server

sudo apt-get install openssh-server

手动启动sshd

sudo service ssh restart

接下来进入ssh配置文件并修改一些设置

 sudo vi /etc/ssh/sshd_config

更改端口号(也可不改)并允许root用户以任何认证方式登录

执行

ssh localhost

1.3配置win10与wsl的文件传输

在win10的资源管理器内输入\\wsl$

右键映射为网络驱动器即可在此电脑中看到

2.JDK配置

2.1下载open-jdk-8

首先安装openjdk8并修复依赖项

sudo apt install openjdk-8-jdk
sudo apt -f install

执行以下两条语句查看是否成功安装

java -version
javac

2.2配置java环境变量

vi /etc/profile

加入以下内容

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

让环境变量生效

source /etc/profile

3.hadoop配置

3.1下载Hadoop

我这里是直接到Hadoop官网下载了hadoop-3.2.1.tar.gz拖拽到了

C:\Users\username\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs\usr\local

重启电脑后在wsl终端/user/local/下执行

sudo tar -xvf hadoop-3.2.1.tar.gz

查看Hadoop是否安装成功,在/usr/local/hadoop-3.2.1目录下执行

./bin/hadoop version

可以看到

给与读写权限

sudo chmod -R 777 /usr/local/hadoop-3.2.1

3.2配置伪分布式环境

配置Hadoop伪分布式环境需要修改/usr/local/hadoop-3.2.1/etc/hadoop/文件夹下的core-site.xmlhdfs-site.xml 文件

sudo vi  core-site.xml

core-site.xml文件改为

<configuration>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>/usr/local/hadoop-3.2.1/data/tmp</value>
        </property>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://localhost:9000</value>
        </property>
</configuration>
sudo vi  hdfs-site.xml

core-site.xml文件改为

<configuration>
        <property>
                 <name>dfs.replication</name>
                 <value>1</value>
        </property>
</configuration>

接下来我们还得配置此目录下的hadoop-env.sh

sudo vi  hadoop-env.sh

找到JAVA_HOME选项改为

JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

3.3启动集群

首先格式化NameNode

bin/hdfs namenode -format

先开启namenode

sbin/hadoop-daemon.sh start namenode

再开启datanode

sbin/hadoop-daemon.sh start datanode

最后输入查看正在运行的节点

jps