【Hadoop】hadoop3.3.1完全分布式配置

目录

1 主机映射

2 免密

ssh-keygen

ssh-copy-id master

ssh-copy-id worker1

ssh-copy-id worker2

3 防火墙

systemctl stop firewalld

systemctl disable firewalld

setenforce 0

4 安装jdk和hadoop

解压缩

修改环境变量

vim /etc/profile

复制代码
#JAVA HOME
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_152/
export PATH=$PATH:$JAVA_HOME/bin

#Hadoop
export HADOOP_HOME=/usr/local/hadoop/
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

让环境变量生效与验证

source /etc/profile

java -version

hadoop version

5 配置集群环境

hadoop-env.sh

复制代码
vim /usr/local/hadoop/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_152/
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

core-site.xml

复制代码
cd /usr/local/hadoop/etc/hadoop/
vim core-site.xm
<configuration>
<property>
        <name>fs.defaultFS</name>
    <value>hdfs://master:9000</value>
</property>
<!-- 临时文件存放位置 -->
<property>
        <name>hadoop.tmp.dir</name>
    <value>/usr/local/hadoop/tmp</value>
</property>
</configuration>

hdfs-site.xml

复制代码
vim hdfs-site.xml
<property>
        <name>dfs.replication</name>
    <value>2</value>
</property>
<!-- namenode存放的位置,老版本是用dfs.name.dir -->
<property>
        <name>dfs.namenode.name.dir</name>
    <value>/usr/local/hadoop/name</value>
</property>
<!-- datanode存放的位置,老版本是dfs.data.dir -->
<property>
        <name>dfs.datanode.data.dir</name>
    <value>/usr/local/hadoop/data</value>
</property>
<!-- 关闭文件上传权限检查 -->

yarn-site.xml

复制代码
vim yarn-site.xml
<property>
        <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
</property>
<!-- nodemanager获取数据的方式 -->
<property>
        <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>
<!-- 关闭虚拟内存检查 -->
<property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
    <value>false</value>
</property>

mapred-site.xml

复制代码
vim mapred-site.xml
<property>
        <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>
<!-- 配了上面这个下面这个也得配, 不然跑mapreduce会找不到主类。MR应用程序的CLASSPATH-->
<property>
        <name>mapreduce.application.classpath</name>
    <value>/usr/local/hadoop/share/hadoop/mapreduce/*:/usr/local/hadoop/share/hadoop/mapreduce/lib/*</value>
</property>

workers

复制代码
vim workers
worker1
worker2

scp至其他节点

格式化

复制代码
hdfs namenode -format

启动服务(在第一台)

复制代码
start-all.sh

访问ip:9870

相关推荐
Volunteer Technology10 分钟前
Flink编程模型与API(四)
大数据·flink
叶修_A20 分钟前
【COZE-08】Prompt工程进阶 - 结构化输出与思维链
大数据·人工智能·prompt
OCR_1337162127524 分钟前
技术实测|2026三款主流OCR横向对比:SDK15、PaddleOCR、GLM-OCR选型指南
大数据·人工智能
Java 码思客25 分钟前
【Redis分布式缓存实战】第3章 Redis核心机制深度解析
redis·分布式·缓存
码不停蹄的玄黓32 分钟前
生产可用的 Redis 分布式锁完整实现
数据库·redis·分布式
chushiyunen32 分钟前
elasticsearch内置接口笔记
大数据·笔记·elasticsearch
Elastic 中国社区官方博客33 分钟前
Hacknight Beijing:基于阿里云与 Elastic 构建 AI Agents
大数据·运维·人工智能·elasticsearch·搜索引擎·阿里云·云计算
柏舟飞流34 分钟前
大数据与 AI 融合:高阶架构与实践
大数据·人工智能·架构
TDengine (老段)44 分钟前
TDengine 数据保留与 TTL — 多级存储、过期删除与分层迁移
大数据·数据库·物联网·时序数据库·tdengine·涛思数据