首页主机资讯hdfs配置在centos的步骤

hdfs配置在centos的步骤

时间2025-11-04 15:10:04发布访客分类主机资讯浏览283
导读:一、准备工作 安装Java环境 Hadoop依赖Java运行环境,需安装JDK 8(推荐OpenJDK)。执行以下命令: sudo yum update -y sudo yum install -y java-1.8.0-openjdk...

一、准备工作

  1. 安装Java环境
    Hadoop依赖Java运行环境,需安装JDK 8(推荐OpenJDK)。执行以下命令:

    sudo yum update -y
    sudo yum install -y java-1.8.0-openjdk-devel
    

    验证安装:java -version(需显示Java 1.8.0版本信息)。

  2. 下载并解压Hadoop
    从Apache Hadoop官网下载稳定版本(如3.3.4),解压至指定目录(如/usr/local):

    wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz
    tar -xzvf hadoop-3.3.4.tar.gz -C /usr/local/
    sudo mv /usr/local/hadoop-3.3.4 /usr/local/hadoop
    

    (可选)创建软链接简化命令:sudo ln -s /usr/local/hadoop /usr/local/hadoop

  3. 配置Hadoop环境变量
    编辑/etc/profile文件,添加以下内容(替换/usr/local/hadoop为实际路径):

    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk  # 根据java -version输出调整
    export HADOOP_HOME=/usr/local/hadoop
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    

    使配置生效:source /etc/profile

二、网络与SSH配置

  1. 配置主机名与IP映射
    编辑/etc/hosts文件,添加NameNode和DataNode的IP与主机名映射(每行一个节点):

    192.168.1.100 namenode
    192.168.1.101 datanode1
    192.168.1.102 datanode2
    

    确保所有节点的/etc/hostname文件中主机名与/etc/hosts一致。

  2. 配置静态IP
    编辑网络配置文件(如/etc/sysconfig/network-scripts/ifcfg-ens33),设置静态IP:

    BOOTPROTO=static
    ONBOOT=yes
    IPADDR=192.168.1.100  # 替换为实际IP
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.1
    DNS1=8.8.8.8
    

    重启网络:sudo systemctl restart network

  3. 配置SSH免密登录
    在NameNode上生成SSH密钥对:ssh-keygen -t rsa -P ""(直接回车)。
    将公钥复制到所有节点(包括自身):

    ssh-copy-id root@namenode
    ssh-copy-id root@datanode1
    ssh-copy-id root@datanode2
    

    测试免密登录:ssh namenode(无需输入密码)。

三、HDFS核心配置文件修改

进入Hadoop配置目录:cd $HADOOP_HOME/etc/hadoop,修改以下文件:

  1. core-site.xml
    配置HDFS默认文件系统和NameNode地址:

    <
        configuration>
        
        <
        property>
        
            <
        name>
        fs.defaultFS<
        /name>
        
            <
        value>
        hdfs://namenode:9000<
        /value>
          <
        !-- 替换为NameNode主机名 -->
        
        <
        /property>
        
        <
        property>
        
            <
        name>
        hadoop.tmp.dir<
        /name>
        
            <
        value>
        /tmp/hadoop<
        /value>
          <
        !-- 临时目录,可自定义 -->
        
        <
        /property>
        
    <
        /configuration>
        
    
  2. hdfs-site.xml
    配置NameNode/Datanode数据目录、副本数及Web界面端口:

    <
        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>
        
        <
        property>
        
            <
        name>
        dfs.namenode.http-address<
        /name>
        
            <
        value>
        namenode:50070<
        /value>
          <
        !-- Web界面地址 -->
        
        <
        /property>
        
        <
        property>
        
            <
        name>
        dfs.webhdfs.enabled<
        /name>
        
            <
        value>
        true<
        /value>
          <
        !-- 启用WebHDFS -->
        
        <
        /property>
        
    <
        /configuration>
        
    
  3. slaves文件(可选,集群部署需配置)
    在NameNode上编辑slaves文件,添加DataNode主机名(每行一个):

    datanode1
    datanode2
    

    (单节点部署可跳过此步)。

四、格式化NameNode

在NameNode节点上执行格式化命令(首次启动前必须执行):

hdfs namenode -format

此命令会初始化NameNode的元数据存储目录(如dfs.namenode.name.dir指定的路径)。

五、启动HDFS服务

  1. 启动集群
    在NameNode上执行:

    $HADOOP_HOME/sbin/start-dfs.sh
    

    此命令会自动启动NameNode和所有DataNode(若配置了slaves文件)。

  2. 验证进程
    使用jps命令检查NameNode和DataNode是否运行:

    • NameNode节点:应显示NameNode进程。
    • DataNode节点:应显示DataNode进程。

六、验证配置

  1. 访问Web界面
    在浏览器中输入http://namenode-ip:50070(如http://192.168.1.100:50070),查看HDFS集群状态(包括存储容量、DataNode列表等)。

  2. 测试文件操作
    执行以下命令上传文件到HDFS:

    hdfs dfs -put /path/local/file.txt /user/root/  # 上传本地文件到HDFS根目录下的user/root路径
    hdfs dfs -ls /user/root/  # 查看HDFS中的文件
    

七、可选配置

  1. 关闭防火墙(测试环境)
    临时关闭防火墙:sudo systemctl stop firewalld
    禁止开机启动:sudo systemctl disable firewalld
    (生产环境建议配置防火墙规则,允许HDFS端口:9000、50010、50020、50070等)。

  2. 配置NTP时间同步
    安装NTP服务:sudo yum install -y ntp
    启动NTP并设置开机启动:sudo systemctl start ntpd & & sudo systemctl enable ntpd
    同步时间:sudo ntpdate ntp.aliyun.com(替换为可用NTP服务器)。

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


若转载请注明出处: hdfs配置在centos的步骤
本文地址: https://pptw.com/jishu/741936.html
CentOS HDFS如何恢复 centos中如何设置hdfs

游客 回复需填写必要信息