HDFS集群环境配置

news/2024/5/20 4:09:33 标签: hdfs, hadoop

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文件修改

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

2、配置hadoop-env.sh文件

# 填入如下内容
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文件

#在文件内部填入如下内容
<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文件

# 在文件内部填入如下内容
<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分发即可,命令如下

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

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

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

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

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

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

# 确保以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文件系统的管理网页


http://www.niftyadmin.cn/n/5450288.html

相关文章

ssm005基于SSM框架的购物商城系统+jsp

购物商城系统的设计与实现 摘 要 网络技术和计算机技术发展至今&#xff0c;已经拥有了深厚的理论基础&#xff0c;并在现实中进行了充分运用&#xff0c;尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代&#xff0c;所以对于信息的宣传和管理就…

YOLOv5从入门到入土!(一)训练教程

一、下载 代码地址&#xff1a;https://github.com/ultralytics/yolov5 前往YOLOv5官方github&#xff0c;按照图中步骤下载代码及预训练权重。 二、训练 将下载的预训练权重路径填入train.py的weights参数中&#xff0c;并补全其余必要文件。 关于data.yaml看往期教程&#x…

http请求webservice接口

1.http请求webservice接口 package com.hidy.dangan.receiveEdoc;import java.io.InputStream; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.net.URL; import java.net.URLConnection;public class Http2Webservice {public static void ma…

箱线图汇总ggplot2(自备)

目录 ①简单箱线图 ②配对箱线图 ③多组箱线图 数据格式查看 进行数据重塑 进行P值计算 进行绘图 ④批量多组间箱线图 ⑤多组抖动散点图 Immunogenomic Landscape of Hematological Malignancies - PubMed (nih.gov)有多个图的数据及可视化代码&#xff1a;focuslyj/I…

图像变换(python)

前言 这个Python没学过&#xff0c;写的是真的不方便&#xff0c;有很多问题还没解决&#xff0c;暂时不想写了&#xff0c;感兴趣的同学可以完善一下。设计的思路就是摆几个控件然后将对应的函数实现&#xff0c;这个Python的坐标放置以及控件的大小我没弄懂&#xff0c;算出…

基于深度学习的图像分类方法

基于深度学习的图像分类方法已经成为计算机视觉领域的重要组成部分。这类方法通常涉及使用深度神经网络&#xff0c;特别是卷积神经网络&#xff08;CNNs&#xff09;来识别和分类图像中的对象。以下是基于深度学习的图像分类方法的一些关键要点&#xff1a; 卷积神经网络&…

力扣刷题之22.括号生成

仅做学习笔记之用。 题目&#xff1a; 数字 n 代表生成括号的对数&#xff0c;请你设计一个函数&#xff0c;用于能够生成所有可能的并且 有效的 括号组合。 示例 1&#xff1a; 输入&#xff1a;n 3 输出&#xff1a;["((()))","(()())","(())(…

应用日志集成到ElasticSearch

1、阿里云sls平台集成日志 阿里sls集成日志步骤 2、filebeat 收集到指定es 安装docker容器 Docker安装 拉取镜像&#xff1a; docker pull elastic/filebeat:7.5.1启动&#xff1a; docker run -d --namefilebeat elastic/filebeat:7.5.1拷贝容器中的数据文件到宿主机&a…