Hadoop集群搭建之完全分布式搭建

1. Hadoop集群搭建的三种模式

  • 本地运行模式
    无需运行任何守护进行,所有程序都在单个JVM上执行
  • 伪分布式运行模式
    Hadoop对应的Java进程都运行在一个物理机器上
  • 完全分布式运行模式
    Hadoop对应的Java进程都运行在多台物理机器上

2. 具体步骤及解释

1. 准备安装环境

# 将hadoop-3.1.2.tar.gz从官网上下载,上传到/opt目录,解压,删除
tar -zxvf hadoop-3.1.2.tar.gz
rm -rf hadoop-3.1.2.tar.gz

2. 修改集群环境

cd /opt/hadoop3.1.2/etc/hadoop
  • 配置文件之hadoop-env.sh
    作用:配置环境变量
export JAVA_HOME=/usr/local/java/jdk1.8.0_261
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE=root
export HDFS_SECONDARYNAMENODE_USER=root
  • 配置文件之coer-site.xml
    作用如下:
写到configuration标签中
<property>
<name>fs.defaultFS</name> # 如果hdfs-site.xml中不配置namenode和datanode存放文件的位置,默认就放在这个路径中
<value>hdfs://node001:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name> # hadoop文件系统依赖的基础配置,很多路径都依赖他
<value>/var/bdp/hadoop/full</value>
</property>
  • 配置文件之hdfs-site.xml
    作用如下:
<property>
<name>dfs.namenode.secondary.http-address</name> # 配置SNN的web地址
<value>node002:50090</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name> # 配置SNN的web地址
<value>node002:50091</value>
</property>
<property>
<name>dfs.replication</name> # 配置副本的数量,一般最小值为3,否则会影响到数据的可靠性
<value>2</value>
</property>
  • 配置文件之workers
node001
node002
node003
  • 拷贝分发软件
cd /opt/
scp -r hadoop-3.1.2 node002:/opt/
scp -r hadoop-3.1.2 node003:/opt/
  • 修改环境变量
vim /etc/profile
export HADOOP_HOME=/opt/hadoop-3.1.2
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
source /etc/profile
scp /etc/profile node002:/etc/
scp /etc/profile node003:/etc/
ssh root@node002 "source /etc/profile"
ssh root@node003 "source /etc/profile"

3. 关于SSH免密码登录

私钥:密钥留在本机
公钥:密钥留在本机
node001:
生成密钥:
ssh-keygen -t rsa(密钥存放位置:/root/.ssh , id_rsa私钥, id_rsa.pub公钥)
发送私钥(本机):
ssh-copy-id localhost(需要输入node001结点的密码)
发送公钥(其他计算机node002):
ssh-copy-id node002(需要输入node001结点的密码)
发送公钥(其他计算机node003):
ssh-copy-id node003(需要输入node003结点的密码)
测试免密钥登录;
ssh localhost
ssh node002
ssh node003

4. 格式化NameNode

hdfs namenode -format
start-dfs.sh

5. 测试集群

在浏览器中输入192.168.200.1 32:9870或192.168.200.135:50091

6. 关闭集群

stop-dfs.sh
posted @   jsqup  阅读(56)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示