hadoop集群搭建(一)(超详细)

hadoop集群搭建(超详细)

一.部署SSH工具

1.下载SHH工具

官网地址: http://www.hostbuf.com/

下载SSH工具

选择Windows版本

2.安装FinalShell工具

双击打开安装包,进行傻瓜式安装
在这里插入图片描述
接受协议
接受协议
选择FinalShell组件
选择FinalShell组件
自行选择安装路径
在这里插入图片描述
安装完成,点击 “关闭”
在这里插入图片描述

3.连接虚拟机设备

双击打开FinalShell
在这里插入图片描述

在这里插入图片描述
新建SSH连接
新建连接
连接hadoop01虚拟机
在这里插入图片描述

双击连接
在这里插入图片描述

连接成功
连接成功

二.修改配置文件和免密配置

1.修改配置文件

配置hosts文件

vim /etc/hosts

在这里插入图片描述

拷贝host文件

scp /etc/hosts root@hadoop02:/etc/hosts
scp /etc/hosts root@hadoop03:/etc/hosts

拷贝成功
在hadoop02和hadoop03进行检查hosts是否拷贝成功(由于作者隐私问题在这里对ip进行大码,大家做的时候要保证ip和虚拟机保持一致)
在这里插入图片描述

在这里插入图片描述

2.生成密匙

 ssh-keygen -t rsa

在这里插入图片描述
生成密匙
生成密匙### 3.拷贝密匙文件到子节点
拷贝文件

ssh-copy-id root@hadoop01
ssh-copy-id root@hadoop02
ssh-copy-id root@hadoop03

在这里插入图片描述
按照方法分别将密匙拷贝到hadoop02和hadoop03

测试免密
免密测试,查看免密是否成功

三.jdk安装和配置

1.新建文件夹存放文件

在根目录opt下分别创建local和soft文件夹,local用来存放上传的压缩包,soft用来存放解压之后的文件

mkdir /opt/local
mkdir /opt/soft
cd opt
ll

在这里插入图片描述

2.下载jdk压缩包

https://www.oracle.com/java/technologies/downloads/

在这里插入图片描述

3.查看系统自带的jdk并删除

查看系统自带

java -version

在这里插入图片描述

rpm -qa | grep java

在这里插入图片描述
删除jdk

# 挨个删除每一个包,(删除所有.noarch 文件)
rpm -e --nodeps 包名
 
# 一次性删除
yum remove *openjdk*

在这里插入图片描述

删除成功
在这里插入图片描述

4.上传并解压jdk压缩包

进入opt下的local文件夹

cd /opt/local

在这里插入图片描述
上传jdk压缩包

rz

在这里插入图片描述
查看上传的压缩包
在这里插入图片描述
将文件解压到 opt下的soft(解压过程中不能做其他的事情,容易解压出错!!!)

 tar -zxvf jdk-8u144-linux-x64.tar.gz -C /opt/soft

在这里插入图片描述
进入soft查看是否解压成功

cd /opt/soft
ll

在这里插入图片描述
创建软连接

 ln -s  jdk1.8.0_144/ jdk

在这里插入图片描述

5.配置jdk环境

编辑配置文件

vi /etc/profile

按“i”进入编辑模式
编辑好配置文件后“Esc”退出编辑模式
“:wq”保存退出
在这里插入图片描述

6.刷新jdk配置文件,并检查新安装的jdk

#刷新配置文件
source /etc/profile
#检查新装的jdk
 java -version
 

在这里插入图片描述

四.Hadoop安装和配置

1.下载Hadoop

官网下载hadoop

下载官网  https://hadoop.apache.org/releases.html

在这里插入图片描述
在这里插入图片描述

2.上传并解压jdk压缩包

rz

上传hadoop压缩包

ll

上传成功
解压hadoop

 tar -zxvf hadoop-3.2.4\ \(1\).tar.gz -C /opt/soft/

解压成功
创建软连接

ln -s hadoop-3.2.4/ hadoop

创建成功

3.配置Hadoop环境

vim /etc/profile
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin

按“i”进入编辑模式
编辑好配置文件后“Esc”退出编辑模式
“:wq”保存退出
配置hadoop环境变量

hadoop-env.sh
mapred-env.sh
yarn-env.sh

中分别添加JAVA_HOME环境

export JAVA_HOME=/opt/soft/jdk1.8.0_144

刷新hadoop配置文件,使配置文件生效

source /etc/profile

4.查看Hadoop版本

hadoop version

在这里插入图片描述

五.修改Hadoop配置文件

进入hadoop文件夹

cd /opt/soft/hadoop/etc/hadoop

1.修改配置文件 core-site.xml,插入

<configuration>
    <!-- 指定NameNode的地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://192.168.74.11:8020</value>
    </property>
    <!-- 指定hadoop数据的存储目录 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/local/soft/hadoop/data</value>
    </property>
    <!-- 配置HDFS网页登录使用的静态用户为 root -->
    <property>
        <name>hadoop.http.staticuser.user</name>
        <value>root</value>
    </property>
    <property>
	    <name>fs.trash.interval</name>
		<value>1</value>
    </property>
</configuration>

在这里插入图片描述

2.修改配置文件 hdfs-site.xml,插入

<configuration>
<!-- nn web端访问地址-->
        <property>
        <name>dfs.namenode.http-address</name>
        <value>192.168.74.11:9870</value>
    </property>
        <!-- 2nn web端访问地址-->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>192.168.74.12:9868</value>
    </property>
    </configuration>

在这里插入图片描述

3.配置mapred-site.xml,插入

<configuration>
<!-- 指定MapReduce程序运行在Yarn上 -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <!-- 历史服务器端地址 -->
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>192.168.126.192:10020</value>
    </property>
    <!-- 历史服务器web端地址 -->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>192.168.126.192:19888</value>
    </property>
    <!-- 每个MR最多申请的内存 -->
    <property>
        <name>mapreduce.map.memory.mb</name>
        <value>2048</value>
    </property>
</configuration>

在这里插入图片描述

4.配置yarn-site.xml,插入

<configuration>
 <!-- 指定MR走shuffle -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <!-- 指定ResourceManager的地址-->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>192.168.74.11</value>
    </property>
    <!-- 环境变量的继承 -->
    <property>
        <name>yarn.nodemanager.env-whitelist</name>                    
        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP _HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,
        HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
    </property>
    <!-- 开启日志聚集功能 -->
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
    <!-- 设置日志聚集服务器地址 -->
    <property>
        <name>yarn.log.server.url</name>
        <value>http://192.168.74,11:19888/jobhistory/logs</value>
    </property>
    <!-- 设置日志保留时间为7天 -->
    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>604800</value>
    </property>
    <property>
        <name>yarn.nodemanager.vmem-pmem-ratio</name>
        <value>3</value>
    </property>
</configuration>

在这里插入图片描述

5.配置workers

直接插入更改

hadoop01
hadoop02
hadoop03

在这里插入图片描述

六.向其它节点分发配置文件

scp -r /opt/soft/hadoop-3.2.4 root@hadoop02:/opt/soft
scp -r /opt/soft/hadoop-3.2.4 root@hadoop03:/opt/soft

拷贝过程

七.集群格式化

hadoop namenode -format

格式化成功

八.集群重启

进入 /opt/soft/hadoop/sbin/

cd /opt/soft/hadoop/sbin/

sbin下的文件

1.文件权限不够启动失败

在这里插入图片描述
问题:文件没有权限,无法执行
解决:
(1)在文件 start-dfs.sh 和stop-dfs.sh中添加以下代码

HDFS_DATANODE_USER=root
HADOOP_DATANODE_SECURE_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

在这里插入图片描述
(2) 在文件 start-yarn.sh 和stop-yarn.sh中添加以下代码

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root

在这里插入图片描述

2.启动Hadoop ( ./ 在这里是执行的意思)

 ./start-dfs.sh 

在这里插入图片描述

3.启动yarn

 ./start-yarn.sh 

在这里插入图片描述

九.查看进程

1.查看进程

jps

hadoop01的进程
hadoop01
hadoop02的进程
hadoop02
hadoop03的进程
hadoop03
进入hadoop的web网站访问
在这里插入图片描述

2.停止hadoop

./stop-dfs.sh

停止hadoop

3.停止yarn

./stop-yarn.sh

停止yarn

十.小技巧

在这里插入图片描述
描述:因为我们的启动和停止文件在 /opt/soft/hadoop/sbin/ 目录下,每次启动进程都需要打开目录,很麻烦
解决:
在 /etc/profile 配置文件中添加

#打开文件
vim /etc/profile
添加配置
:$HADOOP_HOME/sbin

在这里插入图片描述
完成配置后就不用再进到目录里启动进程了
在这里插入图片描述
在Linux系统中,/sbin是一个特殊的目录,用于存放系统管理员和基本系统维护命令。该目录下的可执行文件通常需要具有特殊的权限以运行,因为它们对系统的操作具有潜在的风险和影响。

配置/sbin系统变量的意义在于将该目录添加到系统的环境变量中,使得系统中的任何位置都可以直接执行位于/sbin目录下的命令,而无需指定完整的路径。这样,系统管理员就可以更加方便地使用和调用这些系统管理和维护命令,提高工作效率。

通过将/sbin添加到系统的PATH环境变量中,系统命令解析器(如bash)将会在搜索可执行文件时自动包含该目录,从而使得系统中的任何用户都可以直接运行/sbin目录下的命令,而无需输入完整路径。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值