0
点赞
收藏
分享

微信扫一扫

Hadoop分布式的搭建

殇感故事 2022-05-03 阅读 137

Hadoop分布式的搭建

1. 搭建前提

  1. 多台计算机
  2. 计算机需要安装Java
  3. 网络防火墙关闭
  4. 计算机之间可以连通

1.1 多台计算机的准备

1.2 克隆步骤

  1. 装好一台计算机

  2. 修改配置文件

    1. /etc/sysconfig/network-scripts/ifcfg-eth0
      删除HWADDR
      删除UUID
    2. 修改主机名
      /etc/sysconfig/network
  3. 关机

  4. 在虚拟里创建快照

  5. 在虚拟机里克隆

  6. 开启克隆出来的机器

  7. 修改计算机名

  8. 删除文件
    rm -rf /etc/udev/rules.d/70-persistent-net.rules

  9. 重启

2. 伪分布式搭建

  1. 下载hadoop安装包

  2. 安装hadoop

    在我们这是解压tar -xf hadoop版本号

  3. 配置hadoop的安装路径
    PATH= $ PATH: $ hadoop/bin:$hadoop/sbin

  4. 配置hadoop 配置Java的路径
    文件路径在/hadoop-2.5.6/etc/hadoop/ (因为远程调用时,不会读取本机profile文件)

    (1)hadoop-env.sh
    (2)mapred-evn.sh
    (3)yarn-env.sh

  5. 配置hadoop 配置关于分布式的内容

    core-site.xml

       <!--配置namenode在哪-->
       <property>
           <name>fs.defaultFS</name>
           <value>hdfs://node01:9000</value>
       </property>
       <!--配置hadoop存放数据的临时目录-->
       <property>
           <name>hadoop.tmp.dir</name>
           <value>/var/abc/</value>
       </property>
    

    hdfs-site.xml

     <property>
         <name>dfs.replication</name>
         <value>1</value>
     </property>
     <!--设置secondaryNode在哪个节点-->
     <property>
         <name>dfs.namenode.secondary.http-address</name>
         <value>node01:50090</value>
     </property>
    
  6. 修改slaves文件,设置哪个为datenode节点

  7. 格式化文件系统

    hdfs namenode -format

  8. 启动hdfs系统

    start-dfs.sh

  9. 查看进程
    jps

  10. 在网页验证

    http://ip:50070

  11. 基本操作

    创建目录
    hdfs dfs -mkdir -p /user/root
    上传文件
    hdfs dfs -put 文件名 路径

3 真分布式搭建

  1. 创建免密钥

    ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
    cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
    #把node01的公钥 发送给其它节点
    scp ~/.ssh/id_dsa.pub node2:~/.ssh/node01.pub
    scp ~/.ssh/id_dsa.pub node3:~/.ssh/node01.pub
    scp ~/.ssh/id_dsa.pub node4:~/.ssh/node01.pub
    # 2,3,4节点将公钥追加到authorized_keys 在3台计算机依次执行
    cat /.ssh/node01.pub >>~/.ssh/authorized_keys
    
  2. 修改配置文件

    core-site.xml

       <!--配置namenode在哪-->
       <property>
           <name>fs.defaultFS</name>
           <value>hdfs://node01:9000</value>
       </property>
       <!--配置hadoop存放数据的临时目录-->
       <property>
           <name>hadoop.tmp.dir</name>
           <value>/var/abc/</value>
       </property>
    

    hdfs-site.xml

       <!--设置副本数,不在超过节点数-->
         <property>
             <name>dfs.replication</name>
             <value>1</value>
         </property>
         <!--设置secondaryNode在哪个节点-->
         <property>
             <name>dfs.namenode.secondary.http-address</name>
             <value>node02:50090</value>
         </property>
    
  3. 讲配置好的hadoop文件发给别的计算机

    scp -r hadoop node02:`pwd`
    scp -r hadoop node03:`pwd`
    scp -r hadoop node04:`pwd`
    
  4. 格式化文件系统

    hdfs namenode -format

  5. 启动hdfs系统

    start-dfs.sh

  6. 查看进程
    jps

  7. 在网页验证

    http://ip:50070

  8. 基本操作

    创建目录
    hdfs dfs -mkdir -p /user/root
    上传文件
    hdfs dfs -put 文件名 路径

4. 分布式问题

解决方案:查看core-site.xml里面的fs.defaultFS的值是否正确

解决方案:
修改/etc/ssh/ssh_config

将其中的# StrictHostKeyChecking ask 改成 StrictHostKeyChecking no`

举报

相关推荐

0 条评论