首页主机资讯hdfs在centos怎样配置

hdfs在centos怎样配置

时间2025-11-04 15:24:04发布访客分类主机资讯浏览319
导读:HDFS在CentOS上的配置步骤 1. 准备工作 1.1 安装Java环境 Hadoop依赖Java运行环境,需安装JDK 8或更高版本。使用CentOS默认仓库安装OpenJDK: sudo yum update -y sudo yum...

HDFS在CentOS上的配置步骤

1. 准备工作

1.1 安装Java环境

Hadoop依赖Java运行环境,需安装JDK 8或更高版本。使用CentOS默认仓库安装OpenJDK:

sudo yum update -y
sudo yum install java-1.8.0-openjdk-devel -y
# 验证安装
java -version

需确保JAVA_HOME环境变量已配置(后续环境变量设置中会包含)。

1.2 下载并解压Hadoop

从Apache Hadoop官方网站下载稳定版本(如3.3.1),解压至指定目录:

wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz
tar -xzvf hadoop-3.3.1.tar.gz -C /usr/local/
sudo mv /usr/local/hadoop-3.3.1 /usr/local/hadoop
# 修改目录权限(假设Hadoop用户为hadoop)
sudo chown -R hadoop:hadoop /usr/local/hadoop

1.3 配置Hadoop环境变量

编辑/etc/profile.d/hadoop.sh(若不存在则新建),添加以下内容:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk  # 根据实际Java路径调整
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

使配置生效:

source /etc/profile.d/hadoop.sh
# 验证Hadoop命令
hadoop version

1.4 配置SSH免密登录

Hadoop节点间需通过SSH无密码通信,生成密钥对并将公钥复制到本地节点:

ssh-keygen -t rsa -P ""  # 一路回车生成密钥
cat ~/.ssh/id_rsa.pub >
    >
     ~/.ssh/authorized_keys  # 将公钥加入授权文件
chmod 600 ~/.ssh/authorized_keys  # 设置权限
# 测试免密登录
ssh localhost

若需多节点通信,将公钥复制到其他节点:ssh-copy-id hadoop@node2(替换为实际节点IP/主机名)。

2. 配置HDFS核心文件

HDFS的主要配置文件位于$HADOOP_HOME/etc/hadoop目录下,需修改以下文件:

2.1 配置core-site.xml

设置HDFS的默认文件系统和临时目录:

<
    configuration>
    
    <
    property>
    
        <
    name>
    fs.defaultFS<
    /name>
    
        <
    value>
    hdfs://namenode:9000<
    /value>
      <
    !-- 替换为NameNode的主机名或IP -->
    
    <
    /property>
    
    <
    property>
    
        <
    name>
    hadoop.tmp.dir<
    /name>
    
        <
    value>
    /usr/local/hadoop/tmp<
    /value>
      <
    !-- 临时目录,需提前创建 -->
    
    <
    /property>
    
<
    /configuration>
    

2.2 配置hdfs-site.xml

设置HDFS副本数、NameNode和DataNode的数据存储路径:

<
    configuration>
    
    <
    property>
    
        <
    name>
    dfs.replication<
    /name>
    
        <
    value>
    1<
    /value>
      <
    !-- 单节点集群设为1,生产环境建议3 -->
    
    <
    /property>
    
    <
    property>
    
        <
    name>
    dfs.namenode.name.dir<
    /name>
    
        <
    value>
    /usr/local/hadoop/data/namenode<
    /value>
      <
    !-- NameNode元数据存储路径 -->
    
    <
    /property>
    
    <
    property>
    
        <
    name>
    dfs.datanode.data.dir<
    /name>
    
        <
    value>
    /usr/local/hadoop/data/datanode<
    /value>
      <
    !-- DataNode数据存储路径 -->
    
    <
    /property>
    
<
    /configuration>
    

注意:需提前创建数据目录并修改权限:

sudo mkdir -p /usr/local/hadoop/data/namenode /usr/local/hadoop/data/datanode
sudo chown -R hadoop:hadoop /usr/local/hadoop/data

2.3 (可选)配置mapred-site.xml

若需使用MapReduce框架,需配置其运行在YARN上:

cp $HADOOP_HOME/etc/hadoop/mapred-site.xml.template $HADOOP_HOME/etc/hadoop/mapred-site.xml
vi $HADOOP_HOME/etc/hadoop/mapred-site.xml

添加以下内容:

<
    configuration>
    
    <
    property>
    
        <
    name>
    mapreduce.framework.name<
    /name>
    
        <
    value>
    yarn<
    /value>
    
    <
    /property>
    
<
    /configuration>
    

3. 格式化NameNode

首次启动HDFS前,必须格式化NameNode以初始化元数据:

hdfs namenode -format

警告:格式化会清除NameNode的所有数据,仅首次启动时执行一次。

4. 启动HDFS

在NameNode节点上执行以下命令启动HDFS集群:

start-dfs.sh

启动后,可使用以下命令检查进程状态:

jps

正常应看到NameNodeDataNode(若为DataNode节点则显示)等进程。

5. 验证配置

5.1 通过命令行验证

创建HDFS目录并上传文件,测试读写功能:

hdfs dfs -mkdir -p /user/hadoop  # 创建用户目录
hdfs dfs -put /etc/hosts /user/hadoop/  # 上传本地文件到HDFS
hdfs dfs -ls /user/hadoop  # 查看HDFS中的文件

5.2 通过Web界面验证

打开浏览器,访问http://< NameNode_IP> :50070(Hadoop 3.x版本为http://< NameNode_IP> :9870),查看HDFS集群状态、存储容量、节点列表等信息。

6. 可选配置

6.1 配置防火墙

若系统启用了防火墙,需开放HDFS相关端口(默认9000、50070、50010等):

sudo firewall-cmd --permanent --zone=public --add-port=9000/tcp  # NameNode RPC端口
sudo firewall-cmd --permanent --zone=public --add-port=50070/tcp  # Web UI端口(Hadoop 2.x)
sudo firewall-cmd --permanent --zone=public --add-port=9870/tcp  # Web UI端口(Hadoop 3.x)
sudo firewall-cmd --reload

6.2 配置时间同步

Hadoop集群节点间时间需同步,安装NTP服务并同步时间:

sudo yum install ntp -y
sudo systemctl start ntpd
sudo systemctl enable ntpd
# 手动同步时间
sudo ntpdate ntp.aliyun.com

以上步骤完成后,即可在CentOS上成功配置并运行HDFS。根据实际需求(如集群规模、性能优化),可进一步调整配置参数(如dfs.replicationdfs.blocksize等)。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: hdfs在centos怎样配置
本文地址: https://pptw.com/jishu/741950.html
CentOS系统如何支持PyTorch centos里hdfs如何配置好

游客 回复需填写必要信息