HDFS集群环境配置

HDFS集群环境配置

环境如下三台服务器:

  • 192.168.32.101 node1
  • 192.168.32.102 node2
  • 192.168.32.103 node3

一、Hadoop安装包下载​​​​​​​

点此官网下载​​​​​​​

二、Hadoop HDFS的角色包含:

  • NameNode,主节点管理者
  • DataNode,从节点工作者
  • SecondaryNameNode,主节点辅助

三、配置HDFS集群,我们主要涉及到如下文件的修改:

  • workers: 配置从节点(DataNode)有哪些
  • hadoop-env.sh: 配置Hadoop的相关环境变量
  • core-site.xml: Hadoop核心配置文件
  • hdfs-site.xml: HDFS核心配置文件

这些文件均存在与$HADOOP_HOME/etc/hadoop文件夹中。

1、workers文件修改

bash 复制代码
# 进入配置文件目录
cd etc/hadoop
# 编辑workers文件
vim workers
# 填入如下内容
node1
node2
node3

2、配置hadoop-env.sh文件

bash 复制代码
# 填入如下内容
export JAVA_HOME=/export/jdk
export HADOOP_HOME=/export/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_LOG_DIR=$HADOOP_HOME/logs

3、配置core-site.xml文件

bash 复制代码
#在文件内部填入如下内容
<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://node1:8020</value>
  </property>

  <property>
    <name>io.file.buffer.size</name>
    <value>131072</value>
  </property>
</configuration>

参数说明:

  • key:fs.defaultFS

  • 含义:HDFS文件系统的网络通讯路径

  • 值:hdfs://node1:8020

    1. 协议为hdfs://
    2. namenode为node1
    3. namenode通讯端口为8020
    • key:io.file.buffer.size
    • 含义:io操作文件缓冲区大小
    • 值:131072 bit

4、配置hdfs-site.xml文件

bash 复制代码
# 在文件内部填入如下内容
<configuration>
  <property>
    <name>dfs.datanode.data.dir.perm</name>
    <value>700</value>
  </property>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>/data/nn</value>
  </property>
  <property>
    <name>dfs.namenode.hosts</name>
    <value>node1,node2,node3</value>
  </property>
  <property>
    <name>dfs.blocksize</name>
    <value>268435456</value>
  </property>
  <property>
    <name>dfs.namenode.handler.count</name>
    <value>100</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>/data/dn</value>
  </property>
</configuration>

参数说明:

  • key:dfs.datanode.data.dir.perm
  • 含义:hdfs文件系统,默认创建的文件权限设置
  • 值:700,即:rwx------
  • key:dfs.namenode.name.dir
  • 含义:NameNode元数据的存储位置
  • 值:/data/nn,在node1节点的/data/nn目录下
  • key:dfs.namenode.hosts
  • 含义:NameNode允许哪几个节点的DataNode连接(即允许加入集群)
  • 值:node1、node2、node3,这三台服务器被授权
  • key:dfs.blocksize
  • 含义:hdfs默认块大小
  • 值:268435456(256MB)
  • key:dfs.namenode.handler.count
  • 含义:namenode处理的并发线程数
  • 值:100,以100个并行度处理文件系统的管理任务
  • key:dfs.datanode.data.dir
  • 含义:从节点DataNode的数据存储目录
  • 值:/data/dn,即数据存放在node1、node2、node3,三台机器的/data/dn内

5、另外两台配置相同,scp分发即可,命令如下

bash 复制代码
# 在node1执行如下命令
cd /export
scp -r hadoop-3.3.4 node2:`pwd`/
scp -r hadoop-3.3.4 node3:`pwd`/

6、配置环境变量(三台服务器均配置)

bash 复制代码
vim /etc/profile
# 在/etc/profile文件底部追加如下内容
export HADOOP_HOME=/export/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

7、创建hadoop用户并授权文件夹权限(三台服务器均执行)

bash 复制代码
#创建hadoop用户
useradd hadoop
#给用户hadoop设置密码
passwd hadoop
# 以root身份,在三台服务器上均执行
chown -R hadoop:hadoop /data
chown -R hadoop:hadoop /export

8、前期准备全部完成,现在对整个文件系统执行初始化

bash 复制代码
# 确保以hadoop用户执行
su - hadoop
# 格式化namenode
hadoop namenode -format

# 一键启动hdfs集群
start-dfs.sh
# 一键关闭hdfs集群
stop-dfs.sh

# 如果遇到命令未找到的错误,表明环境变量未配置好,可以以绝对路径执行
/export/hadoop/sbin/start-dfs.sh
/export/hadoop/sbin/stop-dfs.sh

9、启动完成后,可以在浏览器打开: http://node1:9870,即可查看到hdfs文件系统的管理网页

相关推荐
sheji341620 分钟前
【开题答辩全过程】以 基于hadoop的空气质量数据分析及可视化系统为例,包含答辩的问题和答案
大数据·hadoop·数据分析
TTBIGDATA4 小时前
【Ranger】Ambari开启Kerberos 后 ,Ranger 中 Hive 策略里,Resource lookup fail 线程池超时优化
大数据·数据仓库·hive·hadoop·ambari·hdp·ranger
TTBIGDATA4 小时前
【KNOX 】服务启动后,日志中出现与 Ranger 插件资源文件相关的告警 policymgr-ssl 启动告警
大数据·网络·hdfs·ui·ambari·hdp·bigtop
那就学有所成吧(˵¯͒¯͒˵)16 小时前
大数据项目(一):Hadoop 云网盘管理系统开发实践
大数据·hadoop·分布式
BYSJMG1 天前
计算机毕业设计选题推荐:基于Hadoop的城市交通数据可视化系统
大数据·vue.js·hadoop·分布式·后端·信息可视化·课程设计
沃达德软件1 天前
智慧警务技战法
大数据·数据仓库·hadoop·深度学习·机器学习·数据挖掘
TTBIGDATA1 天前
【Hue】Ambari 页面启动 Hue 失败 user ‘hadoop‘ does not exist
java·hadoop·ambari
尘世壹俗人2 天前
Zookeeper、Hadoop、Hive配置Kerberos
hadoop
B站计算机毕业设计超人2 天前
计算机毕业设计hadoop+spark+hive在线教育可视化 课程推荐系统 大数据毕业设计(源码+LW文档+PPT+讲解)
大数据·人工智能·hive·hadoop·scrapy·spark·课程设计
普通网友2 天前
Hive ACID 事务表实战:插入 / 更新 / 删除操作的配置与使用限制
数据仓库·hive·hadoop