当前位置: 首页 > article >正文

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
#检查新装的jdkjava -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目录下的命令,而无需输入完整路径。

http://www.lryc.cn/news/2420505.html

相关文章:

  • 网络爬虫:爬取网页数据
  • 一文全面讲清操作系统,附各类操作系统(windows、macOS 、ChromeOS等应知应会)
  • xcode 升级到4.5 version file compare功能无法使用的问题
  • 三级网络技术应付式速成考试笔记(汇总)
  • 很高兴大家下载rapid-framework
  • Ubuntu 安装Sougou Pinyin输入法
  • InoReader—— 轻便快捷的在线 RSS 阅读器
  • Web开发设计:DisplayTag应用指南
  • 硬币面值组合(C++)(枚举)
  • 帝国CMS二次开发入门教程
  • 回发或回调参数无效。 问题的解决和思考
  • dreamweaver4.0--9.0序列码全(学习参考)(仅供记忆用)
  • 创建视图簇SE54并SE93赋予事务代码
  • 哔哩下载姬(downkyi)v1.4.0 B站视频下载工具 哔哩哔哩视频解析
  • 对Gamma校正的理解
  • use sentences perfectly
  • 爬虫登陆实战 --- QQ音乐扫码登陆!真不难!
  • 逻辑非运算“!”,双重非运算
  • [技巧攻略] Zombie Cafe攻略 僵尸咖啡厅图文详解+刷级攻略
  • Node.js可以做什么
  • 理解P值
  • 09、Swift中的class
  • 淘宝宝贝详情页设计指南:从构思到实现,打造高转化率的页面
  • 详解箭头函数和普通函数的区别以及箭头函数的注意事项、不适用场景
  • PL/SQL 例外(异常) exception
  • windows下钩子的使用
  • 设计测试用例(蘑菇街web的登录页面)
  • Windows中DLL文件基本原理及修改方法
  • MySQL Cluster 集群部署
  • navicat for mysql cannot create file