zoukankan      html  css  js  c++  java
  • hadoop学习第一天-hadoop初步环境搭建&伪分布式计算配置(详细)

     一、虚拟机环境搭建

    虚拟机:VMWare12+

    操作系统:CentOS6.5

    CentOS6.5安装

    打开VMWare,将CentOS6.5的iso添加进去,一路下一步,但是在新建虚拟机的时候需要注意:

    • 处理器最好是2个以上,具体按照自己的电脑能力分配
    • 内存分配多一些,这个就看自己机器的情况了
    • 网络设置为NAT,我们先本机测试,前期先不桥接出去

    CentOS6.5配置网络环境

    • 进入Linux,右击网络->edit connection->双击你的网卡进行ip配置

    ipv4setting->manual->add->address network gateway分别为虚拟机上面的编辑->虚拟网络编辑器->第二个NAT模式中的各种网络配置;我的网络为192.168.32.100 255.255.255.0 192.168.32.2

    • 命令行输入ifconfig,查看当前虚拟机的IP,若IP为192.168.32.100且执行ping 192.168.32.2有正常的网络通信为配置成功
    • 将给好的jdk-8u121-linux-x64.tar.gz包和hadoop-2.6.0.tar.gz包上传至~/hadoop/(/home/qjx/hadoop/)目录下面
    • 修改主机名称(root)vim /etc/sysconfig/network 修改HOSTNAME为当前用户名qjx,重启后生效
    • 重启后关闭防火墙(root)/etc/init.d/iptables stop

    当前linux环境配置如下:

    用户:qjx 123456

    IP:192.168.32.100

    主机名:qjx

    二、JDK安装

    1.进入hadoop目录

    cd hadoop/

    2.将hadoop/目录下的jdk-8u121-linux-x64.tar.gz解压

    tar -zxvf jdk-linux.tar.gzjdk-8u121-linux-x64.tar.gz

    3.编辑/etc/profile文件,并在最后将jdk配置到path(root)

    vim /etc/profile
    
    JAVA_HOME=/home/qjx/hadoop/jdk1.8.0_121
    export PATH=$PATH:$JAVA_HOME/bin

    使更改生效(qjx)

    source /etc/profile

    检验,执行下面语句后输出正确则配置没问题

    java -version

    三、hadoop安装和伪分布式基本配置

    1.进入hadoop/目录

    cd hadoop/

    2.解压hadoop/目录下的hadoop-2.6.0.tar.gz,完成后会在当前hadoop目录下有hadopp-2.6.0目录

    tar -zxvf hadoop-2..6.0.tar.gz

    3.修改hadoop-2.6.0/etc/hadoop/hadoop-env.sh文件,增加一行

    export JAVA_HOME=/home/qjx/hadoop/jdk-1.8.0_121

    4.修改配置文件hadoop-2.6.0/etc/hadoop/core-site.xml,在configaration标签中添加配置

    <property>
       <name>fs.defaultFS</name>
       <value>hdfs://qjx:9000</value>
    </property>

    此文件配置了hdfs的访问路径,qjx即为自己主机名

    5.修改配置文件hadoop-2.6.0/etc/hadoop/hdfs-site.xml,添加配置标签

    <property>
      <name>dfs.replication</name>
      <value>1</value>
    </property>

    ps:此文件配置了hdfs节点的副本数(block),因为是单节点伪分布式,所以只需要一个

    6.修改配置文件hadoop-2.6.0/etc/hadoop/mapred-site.xml ,这个文件不存在,需要复制一份tmp

    cp hadoop-2.6.0/etc/hadoop/mapred-site.xml.template hadoop-2.6.0/etc/hadoop/mapred-site.xml

    添加配置

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

    7.修改配置文件hadoop-2.6.0/etc/hadoop/yarn-site.xml 

    <property>
       <name>yarn.nodemanager.aux-services</name>
       <value>mapreduce_shuffle</value>
    </property>

    到此为止,配置文件已经修改完成

    四、格式化hdfs和启动伪分布式集群

    1.修改/etc/hosts文件(root),添加 一行 主机IP 主机名

    192.168.32.100  qjx

    2.格式化HDFS,在hadoop解压目录下(/home/qjx/hadoop/hadoop-2.6.0/),执行如下命令:

    bin/hdfs namenode -format

    注意:格式化只能操作一次,如果因为某种原因,集群不能用, 需要再次格式化,需要把上一次格式化的信息删除,在/tmp目录里执行 rm –rf *(默认将namenode存在/tmp/中,如果后续有操作将配置文件hdfs-site.xml的namenode的值改为了自定义的路径,则删除自己定义的目录)

    3.启动集群,在hadoop解压目录下,执行如下命令:

    sbin/start-all.sh 

    需要输入四次当前用户的密码,如果想要不输入密码,可通过配置ssh互信解决,下面有详细方法

    4.启动后,命令行输入jps,检查有以下的输出:

    [qjx@qjx hadoop-2.6.0]$ jps
    
        32033 Jps
    
        31718 SecondaryNameNode
    
        31528 DataNode
    
        31852 ResourceManager
    
        31437 NameNode
    
        31949 NodeManager

    ps:如果碰到缺少某一项,则去hadoop-2.6.0/logs/下面找相应缺少的文件log日志中的错误去解决

    5.关闭集群命令:  

    sbin/stop-all.sh

    同样需要输入四次密码

    五、ssh互信配置(rsa加密方法)

    互信,顾名思义,互相信任,即将两个主机通过公钥,私钥添加互相信任,配置完成可以不用输入密码即可连接ssh

    1.命令行输入:ssh-keygen 后,一直Enter,完事(会在根目录下生成三个文件id_rsa,id_rsa.pub,known_hosts)

    2.把公钥给信任的主机(本机)

    命令行输入 ssh-copy-id 主机名 

    ssh-copy-id qjx

    这个过程需要输入信任主机的密码

    3.验证是否成功,在命令行输入 ssh 信任主机名称

    ssh qjx

    若无提示输入密码,则配置成功

    写这篇文章也是我刚接触到Linux的时候写的教程,不对之处请指出。

  • 相关阅读:
    spring中各个模块的作用
    《Spring实战》学习笔记-第四章:面向切面的Spring
    《Spring实战》学习笔记-第四章:面向切面的Spring
    Centos7下永久修改mysql5.6最大连接数
    Prefix-List
    Route-Map
    PBR Lab2
    Lab PBR
    ISIS超载位解决流量黑洞
    ISIS TLV
  • 原文地址:https://www.cnblogs.com/qjx-2016/p/7242843.html
Copyright © 2011-2022 走看看