hadoop的搭建

本文详细介绍Hadoop在分布式模式下的配置步骤,包括环境变量设置、核心配置文件修改、节点间免密钥登录的实现,以及如何格式化文件系统和启动HDFS。适用于初学者理解和实践Hadoop的分布式部署。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、为分布式模式

配置:

1、配置env结尾的配置文件的java,因为远程启动不会加载本地的配置的java_home

hadoop-env.sh、mapred-env.sh、yarn-env.sh

export JAVA_HOME=/usr/java/jdk1.8.0_181-amd64

 

2、配置 etc/hadoop/core-site.xml:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://node01:9000</value>
    </property>  
 <!--hadoop.tmp.dir默认放到 /tmp/hadoop-${user.name}里面,当内存不够时候会自动删除tmp里面的数据,需要改为var,
  dfs.namenode.name.dir、dfs.datanode.data.dir、dfs.namenode.checkpoint.dir等值都是依赖与该文件的,会造成数据丢失-->  
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/var/hadoop/local</value>
    </property>
</configuration>

hadoop.tmp.dir目录下存放block块数据,因为datanode的存储位置依赖于hadoop.tmp.dir,

dfs.datanode.data.dir=file://${hadoop.tmp.dir}/dfs/data

dfs.namenode.name.dir=file://${hadoop.tmp.dir}/dfs/name

dfs.namenode.checkpoint.dir=file://${hadoop.tmp.dir}/dfs/namesecondary 

查看文件的每个block存放的节点,存到下面的地址(/var/hadoop/local 是hadoop.tmp.dir的值):

/var/hadoop/full/dfs/data/current/BP-376231456-192.168.230.221-1548113761944/current/finalized/subdir0/subdir0

 

3、配置etc/hadoop/hdfs-site.xml:

<configuration>
    <property>
        <name>dfs.replication</name>
        <!--单机模式副本数必须是1,而默认是3,如果是不配置,默认为3则会报错,因为副本不能放到同一个节点-->
        <value>1</value>
    </property>
    <property> 
        <name>dfs.namenode.secondary.http-address</name>
         <value>node01:50090</value>
     </property>
</configuration>

4、配置datanode节点etc/hadoop/slaves:

node01

5、执行命令

      5.1、格式化文件系统

           $ bin/hdfs namenode -format

             格式化成功后,则hadoop.tmp.dir配置的目录下/var/hadoop/local/dfs/name/current可以看到clusterID=CID-781c4db9-8e00-47ca-a54a-63504ce553d5,后面namenode和datanode就是通过该clusterID进行通信的。

          

 

 5.2、开始nameNode和datanode

           $ sbin/start-dfs.sh

  5.3、通过web查看

          

二、完全分布式模式

         节点分布:

     1、四个节点免密钥登陆

     2、之后和单机模式模式一样,不同的地方

             etc/hadoop/core-site.xml:的hadoop.tmp.dir的值为/var/hadoop/full

            etc/hadoop/hdfs-site.xml:的dfs.namenode.secondary.http-address的值为:node02:50090

            etc/hadoop/slaves  的值改为:node02,node03,node04

     3、参考单节点格式化文件系统

      4、参考单节点启动hdfs

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值