Hadoop搭建集群
前言
Hadoop集群部署是为了实现分布式存储和计算,提高大数据处理的效率和性能。1.确定集群规模和硬件资源,选择合适的操作系统和Hadoop版本,进行网络配置,确保集群内各节点之间可以互相通信。2.设置各节点的环境变量,安装和配置Java环境以及其他必要的软件和工具。3.配置Hadoop的核心组件(如HDFS和YARN)和各节点角色(如NameNode、DataNode、ResourceManager、NodeManager等),完成集群的部署。
本篇博客基本完全按照尚硅谷的b站课程搭建的hadoop集群,中间出现的部分问题也都解决,如果觉得观看视频太慢可以看看如下内容,先熟悉搭建流程对后续学习也会更有帮助,若遇到其他问题欢迎留言讨论。
一、环境配置
把hadoop和jdk压缩包上传到/opt/software
将这两个文件解压到/opt/module
tar -zxvf jdk-8u333-linux-x64.tar.gz -C /opt/module/
tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/
1.配置JDK
在/etc/profile.d下新建my_env.sh文件,用来配置环境
vim /etc/profile.d/my_env.sh
在里面配置JAVA_HOME
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_333
export PATH=$PATH:$JAVA_HOME/bin
保存好后刷新一下环境的修改,便可以查看到JDK环境已经配置好了
source /etc/profile
java -version
2.配置Hadoop环境
配置hadoop环境和java的一样
还是编辑/etc/profile.d/my_env.sh
vim /etc/profile.d/my_env.sh
在里面加入hadoop环境,如下
#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
保存好后source一下
source /etc/profile
输入hadoop回车,便可查看相关信息
二、Hadoop本地运行
进入到hadoop-3.1.3目录下
cd /opt/module/hadoop-3.1.3/
创建一个文件夹wcinput,并进入
mkdir wcinput
在wcinput下新建word.txt文件
vim wcinput/word.txt
在里面随便写几个单词,后面用hadoop可以统计各单词数
hello world
hello world
hello hi
hi world
hi world
保存好后就可以开始执行hadoop程序了
# 启动指令 启动java的jar包程序 分词统计 输入文件夹 输出文件夹
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount wcinput/ ./wcoutput
解释:运行Hadoop中的WordCount示例程序的命令。它使用hadoop-mapreduce-examples-3.1.3.jar作为程序的jar包,并且指定输入文件夹为wcinput/,输出文件夹为wcoutput。WordCount是一个常用的示例程序,它统计输入文件中每个单词出现的次数,并将结果输出到指定的输出文件夹中
运行结束后会发现目录下多出一个文件
wcoutput中有两个文件,其中part-r-00000中便是统计次数结果
ll wcoutput/
cat wcoutput/part-r-00000
三、Hadoop集群部署
1.准备三台服务器
主机名 | IP地址 | 节点类型 |
---|---|---|
hadoop101 | 192.168.10.101 | master |
hadoop102 | 192.168.10.102 | master |
hadoop103 | 192.168.10.103 | master |
2.节点规划
hadoop101 | hadoop102 | hadoop103 | |
---|---|---|---|
HDFS | NameNode DataNode |
DataNode | SecondaryNameNode DataNode |
YARN | NodeManager | ResourceManager NodeManager |
NodeManager |
3.环境配置
前面单机部署已经在hadoop101配置了Java和Hadoop环境,接下来将其对应文件拷贝到hadoop102、hadoop103即可
先进入/opt/module/
cd /opt/module/
再用scp将hadoop101中的jdk、hadoop拷贝到hadoop102、hadoop103
scp -r