欢迎投稿

今日深度:

《Hadoop 2》--Hadoop的伪分布式集群搭建,

《Hadoop 2》--Hadoop的伪分布式集群搭建,


一、伪分布式的安装
  1、伪分布式的概念
     在一台主机上模拟多个数据存储节点,每个线程都是一个独立的程序,使用的都是独立的JVM.
     存储的文件系统为分布式文件系统(HDFS).作用是用于对MapReduce程序的调试。
  2、准备条件:
     CentOS6.8/6.5,JDK1.8,Hadoop2.7.3,SSH
  3、安装步骤
     (1)安装CentOS6.8.(如果有现成的系统,可以进行克隆)
          选择了克隆方式(完整克隆,CentOS_6.8_64_master1)
     (2)修改网卡(对克隆的新机器)  NAT模式
        --1、切换root用户
                 vim /etc/udev/rules.d/70-persistent-net.rules
                 注释掉 eth0这一行
                 修改  eth1为eth0  ,记忆mac地址
        --2、vim /etc/sysconfig/network-scripts/ifcfg-eth0
                修改mac地址(1里需要记忆的)
                修改启动项为yes
                修改成static
                追加 IPADDR
                        NETMASK
                        GATEWAY
                        DNS1
        --3、重启(service network restart 命令如果不好使,请重启)
      (3)修改主机名和域名解析
             sudo vim /etc/sysconfig/network
             hostname=master1
             sudo vim /etc/hosts
             ip   master1

     

小知识点:
     sudo命令 使普通用户获取超级管理员的权限
        --1、使用root用户,修改/etc/sudoers
        --2、追加:
             hyxy  ALL=(ALL)  ALL


      (4)上传jdk和hadoop压缩包(*.tar.gz)
         
    VMware tools工具的安装:
    虚拟机->安装 VMware tools工具->解压缩压缩包到桌面->开启终端->切换root用户->执行可执行文件
    ->一路回车

    共享文件夹的设置:
    点击虚拟主机->设置->选项->共享文件夹-->启动-->选择window系统上要共享的文件夹。

    cd /mnt/hgfs/...
        cp .../jdk-8u172-linux-x64.tar.gz   /home/hyxy/apps
        cp .../hadoop-2.7.3.tar.gz          /home/hyxy/apps

     (5)解压缩
        tar -zxvf jdk-8u172-linux-x64.tar.gz
        tar -zxvf hadoop-2.7.3.tar.gz
     (6)创建软链接
        ln -s hadoop-2.7.3 hadoop
        ln -s jdk1.8.0_172/ jdk
     (7)配置环境变量
        vim ~/.bash_profile

           #jdk environment

           #hadoop environment

     (8)重新加载配置文件
        source ~/.bash_profile
     (9)修改hadoop的配置文件
         修改 $HADOOP_HOME/etc/hadoop/hadoop-env.sh
                  export JAVA_HOME=/home/hyxy/apps/jdk
         修改 $HADOOP_HOME/etc/hadoop/core-site.xml

              <property>
                 <name>fs.defaultFS</name>       hdfs的默认访问地址
                 <value>hdfs://localhost:9000</value>   端口号:9000  在hadoop1.x的默认使用的是8020
             </property>
         修改 $HADOOP_HOME/etc/hadoop/hdfs-site.xml
            <property>
                <name>dfs.replication</name>  属性:副本数量
                <value>1</value>              副本值
            </property>
      (10)设置ssh无密码登录认证
          
      (在真正的集群中,master主机需要管理其他节点上的守护进程,如开启或者是关闭,有密码设置时,效率比较低
        可以设置无密码登录,进行操作)

       原理:如果master想无密码登录其中一台机器slave.那么master机器上应该生成一对密钥(公钥和私钥),然后
       master将自己的公钥发送给slave。当master想无密码登录slave时,slave就是生成一串字符,经过公钥加密后
       发送给master.然后master使用私钥解密,再发送给slave。slave进行校验,如果一致,master就可以无密登录了。

        
           --1、生成一对密钥:
                ssh-keygen -t rsa   ->一路回车

               此时:私钥保存在了~/.ssh/id_rsa
                          公钥保存在了~/.ssh/id_rsa.pub
           --2、将公钥发送到另一台机器中的~/.ssh/authorized_keys  :
                          authorized_keys的权限:600

       (11)格式化namenode进程(格式化前:建议重启)
            hdfs namenode -format

        格式化的目的:主要就是生成集群ID(clusterid),块池id(blockPoolId),创建fsimage镜像文件和editlog文件

      (12)启动相关守护线程,开启集群
            start-dfs.sh

            可以使用jps指令,查询被开启的守护进程名称

       (13):案例小测试
            1、在分布式文件系统上创建一个目录input
                   hdfs dfs -mkdir /input
            2、将$HADOOP_HOME/etc/hadoop/* 文件上传到 分布式文件系统
                   hdfs dfs -put $HADOOP_HOME/etc/hadoop/*-site.xml /input
            3、统计词频
                   hadoop jar $home/hyxy/apps/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar grep /input                     /output 'dfs[a-z.]+
        4、查看统计结果
                   hdfs dfs -cat /output/*

www.htsjk.Com true http://www.htsjk.com/Hadoop/39590.html NewsArticle 《Hadoop 2》--Hadoop的伪分布式集群搭建, 一、伪分布式的安装   1、伪分布式的概念      在一台主机上模拟多个数据存储节点,每个线程都是一个独立的程序,使用的都是独立的JVM.  ...
相关文章
    暂无相关文章
评论暂时关闭