hadoop伪分布式集群搭建

news/2025/2/21 7:11:38/

基于hadoop 3.1.4

一、准备好需要的文件

1、hadoop-3.1.4编译完成的包
链接: https://pan.baidu.com/s/1tKLDTRcwSnAptjhKZiwAKg 提取码: ekvc
2、需要jdk环境
链接: https://pan.baidu.com/s/18JtAWbVcamd2J_oIeSVzKw 提取码: bmny
3、vmware安装包
链接: https://pan.baidu.com/s/1YxDntBWSCEnN9mTYlH0FUA 提取码: uhsj
4、vmware许可证
链接: https://pan.baidu.com/s/10CsLc-nJXnH5V9IMP-KZeg 提取码: r5y5
5、linux下载
镜像下载地址

二、准备工作

1、安装虚拟机
自行搜索!!!
2、配置静态ip

cd /etc/sysconfig/network-scripts/

在这里插入图片描述
在这里插入图片描述
机器的ip,网关,子网掩码根据自己机器自行查看
在这里插入图片描述

###静态ip配置
IPADDR=192.168.109.103 ##我们需要指定的ip
NETMASK=255.255.255.0
GATEWAY=192.168.109.2
DNS1=8.8.8.8

3、linux安装jdk
卸载linux自带openjdk

rpm -qa|grep jdk.noarch后缀的不要删除
rpm -e --nodeps XXX
tar -zxvf  xxx.jarvim /etc/profileexport JAVA_HOME=/usr/local/jdk1.8.0_361
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarsource /etc/profile	  

4、关闭防火墙

systemctl  stop firewalld.service
systemctl  diabled firewalld.service

规划
hadoop0 namenode datanode resourcemanager nodemanager
hadoop1 secondarynamenode datanode nodemanager
hadoop2 datanode nodemanager

5、配置hostname以及hosts文件

hostnamectl set-hostname hadoop0
vim /etc/hosts
192.168.109.101 hadoop0
192.168.109.102 hadoop1
192.168.109.103 hadoop2

三台机器都要配置全量的hosts!!!不然后续启动secondarynamenode会失败

6、免密登陆

cd /root/.ssh
如果没有.ssh 则执行 mkdir -p /root/.ssh生成密码
ssh-keygen -t dsa
cd /root/.ssh
cat id_dsa.pub >> authorized_keys

解释一下,先是生成密钥,将密钥放在机器的授权密钥中,其他两台机器重复上面步骤,将hadoop1,hadoop2的id_dsa.pub拷贝至hadoop0的authorized_keys中,这时候hadoop0到hadoop0,hadoop1,hadoop2就能免密登陆

ssh hadoop1

7、统一工作目录

mkdir -p /export/server/
mkdir -p /export/data/
mkdir -p /export/software/

8、hadoop环境变量

vim /etc/profileexport HADOOP_HOME=/export/server/hadoop-3.1.4
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbinsource /etc/profile

9、hadoop配置文件(都在hadoop0上操作,后续会全量拷贝至其他机器)

vim  etc/hadoop/hadoop-env.shexport JAVA_HOME=/usr/local/jdk1.8.0_361export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
vim  etc/hadoop/core-site.xml<property><name>fs.defaultFS</name><value>hdfs://hadoop0:8020</value>
</property>
<property><name>hadoop.tmp.dir</name><value>/export/data/hadoop-3.1.4</value>
</property>
<property><name>hadoop.http.staticuser.user</name><value>root</value>
</property>
vim etc/hadoop/hdfs-site.xml<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop1:9868</value>
</property>
vim etc/hadoop/mapred-site.xml<property><name>mapreduce.framework.name</name><value>yarn</value>
</property>
<property><name>yarn.app.mapreduce.am.env</name><value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property><property><name>mapreduce.map.env</name><value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
<property><name>mapreduce.reduce.env</name><value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>

vim etc/hadoop/workershadoop0
hadoop1
hadoop2
vim etc/hadoop/yarn-site.xml<property><name>yarn.resourcemanager.hostname</name><value>hadoop0</value>
</property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value>
</property><property><name>yarn.scheduler.minimum-allocation-mb</name><value>512</value>
</property><property><name>yarn.scheduler.maximum-allocation-mb</name><value>2048</value>
</property><property><name>yarn.nodemanager.vmem-pmem-radio</name><value>4</value>
</property>

10、hdfs 初始化(切记不可多次初始化)

hdfs namenode -format
2023-03-26 00:12:47,011 INFO common.Storage: Storage directory /export/data/hadoop-3.1.4/dfs/name has been successfully formatted.total 16
-rw-r--r-- 1 root root 391 Mar 26 00:12 fsimage_0000000000000000000
-rw-r--r-- 1 root root  62 Mar 26 00:12 fsimage_0000000000000000000.md5
-rw-r--r-- 1 root root   2 Mar 26 00:12 seen_txid
-rw-r--r-- 1 root root 220 Mar 26 00:12 VERSION

出现如上文件代表ok!

11、集群启动
根据我们自己规划的机器,分别启动对应进程

hadoop0  namenode datanode resourcemanager nodemanager
hadoop1  secondarynamenode datanode nodemanager
hadoop2  datanode nodemanagerhdfs --daemon start  namenode|datanode|secondarynamenode
hdfs --daemon stop   namenode|datanode|secondarynamenodeyarn --daemon start  resourcemanager|nodemanager
yarn --daemon stop   resourcemanager|nodemanager

http://www.ppmy.cn/news/36987.html

相关文章

go下载gin框架

1、开启Go Modules功能&#xff08;已开启可忽略此步骤&#xff09; go module是go官方自带的go依赖管理功能&#xff0c;从Go 1.13版本正式推荐使用&#xff0c;它可以将项目下的所有依赖集中到 go.mod 文件&#xff0c;进行集中管理。使用go module管理依赖将会在项目根目录…

【学习笔记】计算机视觉与深度学习(5.经典网络分析)

学习视频&#xff1a; 鲁鹏-计算机视觉与深度学习 同系列往期笔记&#xff1a; 【学习笔记】计算机视觉与深度学习(1.线性分类器) 【学习笔记】计算机视觉与深度学习(2.全连接神经网络) 【学习笔记】计算机视觉与深度学习(3.卷积与图像去噪/边缘提取/纹理表示) 【学习笔记】计…

mysql binlog 的配置与使用

1. 查看 binlog 是否开启 show global variables like log_bin;sql_log_bin : 当前会话 是否要记录 binlog 2. mysql 添加如下配置 修改 my.cnf 文件&#xff0c;一般来说都位于 /etc/my.cnf 这边。 在 [mysqld] 下写入如下内容&#xff1a; ## binlog d的日志模式 binlog-…

LCHub:ChatGPT4和低代码来临,程序员面临下岗?

一个网友吐槽道: “ 建站出来了,你们说程序员会失业。 低代码出来了,你们说程序员会失业。 Copilot出来了,你们说程序员会失业。 Chatgpt出来了,你们说程序员会失业 虽然这只是网友的吐槽,但却引起了小编的好奇。为何程序员那么容易被新技术取代?今天小编打算跟大家…

一文总结经典卷积神经网络CNN模型

一般的DNN直接将全部信息拉成一维进行全连接&#xff0c;会丢失图像的位置等信息。 CNN&#xff08;卷积神经网络&#xff09;更适合计算机视觉领域。下面总结从1998年至今的优秀CNN模型&#xff0c;包括LeNet、AlexNet、ZFNet、VGG、GoogLeNet、ResNet、DenseNet、SENet、Sque…

大数据分析工具Power BI(十四):制作相关性分析图表

制作相关性分析图表 相关性分析可以分析两个指标之间的关系,验证指标之间是否存在某种关系。可以使用散点图、气泡图来进行相关性分析。 一、散点图 需求:使用散点图展示"2022年点播订单表"每月订单量和营收金额相关性。 新建页面并命名为散点图,

Three.js + AI:WebGL的探险之旅

Three.js可以创建交互式 3D 网站、游戏、引人注目的产品展示&#xff0c;或任何你能想象到的东西&#xff0c;我试着用它来创建我的个人作品网站。 推荐&#xff1a;用 NSDT场景设计器 快速搭建3D场景。 1、为什么我使用 Three.js 我一直觉得three.js很有趣&#xff0c;想自己…

工作8年了,从“功能测试”到了现在的“测试开发”,年薪50W+,分享下我的心得

向上的路很难走&#xff0c;但一旦踏上去&#xff0c;每一步都算数&#xff01; 为什么转型为测试开发&#xff1f; 不懂开发的手工测试是新时代“文盲” 在移动互联网和大数据时代&#xff0c;为满足市场和业务需求&#xff0c;互联网应用既要实现产品功能快速迭代&#xf…