Hadoop3.1在虚拟机VMware上部署

 

Hadoop3.1在虚拟机VMware上部署

 


前言

本文主要是解决自己部署hadoop时遇到的问题以及如何解决

一、Hadoop用户的创建

sudo useradd -m hadoop -s /bin/bash

sudo useradd -m hadoop -s /bin/bash

sudo passwd hadoop

sudo adduser hadoop sudo
完成这些后,点击右上角的小此轮,切换用户为hadoop

二、更新apt,安装VIM

sudo apt-get update
sudo apt-get install vim

三、安装SSH、配置SSH无密码登陆

1.检查ssh安装与否,不知道什么意思就直接执行下面两句

rpm -qa | grep ssh 
yum -y install openssh openssh-server openssh-clients

 2.授予hadoop权限

useradd -m hadoop -G root  -s /bin/bash

 

 passwd

找到:root ALL=(ALL) ALL

在下面添加:hadoop  ALL=(ALL) ALL

记住中间的空格用Tab来

改完后就保存退出:Ctrl+O  然后Ctrl+X

3.无密登录

cd ~/.ssh/ 

# 若没有该目录,请先执行一次ssh localhost

ssh-keygen -t rsa

# 会有提示,都按回车就可以

cat ./id_rsa.pub >> ./authorized_keys

# 加入授权

ssh localhost

#此时看下还要输密码不

四、更新apt,安装VIM

这里需要改下Downloads的权限,如果没这个文件,需要创建下

sudo chmod 777  /Downloads

此时再往Downloads中传文件,看成功不

cd /usr/lib
sudo mkdir jvm #创建/usr/lib/jvm目录用来存放JDK文件
cd ~ #进入hadoop用户的主目录
cd Downloads  #注意区分大小写字母,刚才已经通过FTP软件把JDK安装包jdk-8u162-linux-x64.tar.gz上传到该目录下
sudo tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm  #把JDK文件解压到/usr/lib/jvm目录下
 
cd /usr/lib/jvm
cd ~
vim ~/.bashrc

在这个文件开头加上如下内容:

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

改好后,按下insert 然后按下esc,最后输入   :wq   回车即可

 

最后查看下安装java的版本号

java -version

 

五、安装 Hadoop3.1.3

将压缩包保存到Downloads中,用上面安装Java的命令解压

sudo tar -zxvf ./hadoop-3.1.3.tar.gz -C /usr/local    # 解压到/usr/local中
cd /usr/local/
sudo mv ./hadoop-3.1.3/ ./hadoop            # 将文件夹名改为hadoop
sudo chown -R hadoop ./hadoop       # 修改文件权限

查看安装好了没

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

1.单击配置

cd /usr/local/hadoop
mkdir ./input
cp ./etc/hadoop/*.xml ./input   # 将配置文件作为输入文件
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar grep ./input ./output 'dfs[a-z.]+'
cat ./output/*          # 查看运行结果
rm -r ./output

2.集群配置(一定注意切到该目录下,看有没有改文件)

 /usr/local/hadoop/etc/hadoop/ 

gedit ./core-site.xml

修改这个文件

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

同样的,修改配置文件 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>

开启守护进程 

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

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

运行实例 

./bin/hdfs dfs -mkdir -p /user/hadoop
./bin/hdfs dfs -mkdir input
./bin/hdfs dfs -put ./etc/hadoop/*.xml input
./bin/hdfs dfs -ls input
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar grep input output 'dfs[a-z.]+'
./bin/hdfs dfs -cat output/*
rm -r ./output    # 先删除本地的 output 文件夹(如果存在)
./bin/hdfs dfs -get output ./output     # 将 HDFS 上的 output 文件夹拷贝到本机
cat ./output/*
./bin/hdfs dfs -rm -r output    # 删除 output 文件夹
./sbin/stop-dfs.sh

参考:

Hadoop3.1.3安装教程_单机/伪分布式配置_Hadoop3.1.3/Ubuntu18.04(16.04)_厦大数据库实验室博客
http://dblab.xmu.edu.cn/blog/2441-2/

(1条消息) hadoop配置ssh无密码登录_qq_42493452的博客-CSDN博客
https://blog.csdn.net/qq_42493452/article/details/86214090

(1条消息) sudo visudo 退出保存_weiyi556的博客-CSDN博客
https://blog.csdn.net/weiyi556/article/details/78980139?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~first_rank_v2~rank_v25-1-78980139.nonecase&utm_term=visudo%E6%9B%B4%E6%94%B9%E5%90%8E%E6%80%8E%E4%B9%88%E9%80%80%E5%87%BA

(1条消息) ubuntu下使用filezilla上传文件权限问题(open for write: permission denied)_程序员欧阳思海-CSDN博客
https://blog.csdn.net/sihai12345/article/details/79370405

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值