Hadoop最新版本2.7.0的部署-学习记录01

来源:互联网 发布:软件咨询服务购买合同 编辑:程序博客网 时间:2024/06/05 22:44

Hadoop最新版本2.7.0的部署-学习记录01

Hadoop的部署方式有三种:本地模式、伪分布模式搭建、集群模式(现在一般使用HA的方式搭建,之后会将学习笔记上传到博客)

本文主要是伪分布式的搭建

  • 1、Linux安装(EasyBCD的方式安装Ubuntu双系统,很方便)
  • 2、VMWare安装(本文暂时不会使用到,但是为方便之后的HA的搭建,先进行安装)
  • 3、Hadoop伪分布式环境配置
  • 4、Hadoop环境测试

1、Linux安装(EasyBCD的方式安装Ubuntu双系统,很方便)

Linux系统与Window双系统安装可以参考百度经验,亲测完美双系统,相当好用,请按照百度经验中的内容操作:
http://jingyan.baidu.com/article/e4d08ffdace06e0fd2f60d39.html


2、VMWare安装(本文暂时不会使用到,但是为方便之后的HA的搭建,先进行安装)

PS:如果要学习大数据相关内容,建议工作学习全部在Linux下,而Ubuntu自然也是一个不二选择,所以之后伪分布的搭建将会本机Ubuntu系统下进行搭建,但是因为之后学习会到家HA集群模式,所以先安装VMware,之后搭建HA集群模式的时候方便使用。

VMware for Linux官方下载地址:
http://www.vmware.com/cn/products/workstation/workstation-evaluation

下载成功后是一个.bundle后缀的文件,使用如下命令安装:

sudo ./VMware-Workstation-Full-12.1.0-3272444.x86_64.bundle

执行安装,当然注册码可以自行百度

安装成功后就可以进入VMware界面

  • 网络配置(VMware网络配置)
    点击配置虚拟网络
    Edit ==》Virtual Network Edit
    网络配置界面

3、Hadoop伪分布式环境配置

  • 1、修改主机名称:
    sudo vi /etc/hostname

  • 2、设置Linux的机器IP地址(要根据自己的电脑实际情况操作,不要随意修改,修改前先备份,避免系统修改无法联网等问题)
vim /etc/sysconfig/network-scripts/ifcfg-eth0//修改文件中内容如下:DEVICE="eth0"           ###网卡硬件编号BOOTPROTO="static"      ###设置为静态网络HWADDR="00:0C:29:3C:BF:E7"  ###MAC地址IPV6INIT="no"           ###是否IPV6(建议为no避免出错)NM_CONTROLLED="yes"ONBOOT="yes"TYPE="Ethernet"UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"IPADDR="192.168.39.100"          ###与自己的电脑IP地址相匹配NETMASK="255.255.255.0"          ###GATEWAY="192.168.39.2"           ###网关保证和自己的IP地址在同一个网段下

  • 3、修改主机名称和IP映射关系
    sudo vi /etc/hosts
    192.168.39.100 Ubuntu

  • 4、关闭防火墙
  • 查看防火墙状态
    service iptables status
  • 关闭防火墙
    service iptables stop
  • 查看防火墙开机启动状态
    chkconfig iptables --list
  • 关闭防火墙开机启动
    chkconfig iptables off
  • 重启系统
    reboot

  • 5、安装JDK
    下载JDK7或者8均可;
  • 解压jdk
    #创建文件夹
    mkdir /usr/java
    #解压
    tar -zxvf jdk-7u79-linux-i586.tar.gz -C /usr/java/
  • 将java添加到环境变量中
    vim /etc/profile
    #在文件最后添加
    JAVA_HOME=/usr/java/jdk1.7.0_79

  • 6、修改Hadoop文件中的配置文件(以下是用的是hadoop2.7.0)
  • 配置hadoop
    注意:hadoop2.x的配置文件$HADOOP_HOME/etc/hadoop
    伪分布式需要修改5个配置文件
    第一个:hadoop-env.sh
    vim hadoop-env.sh
>       #第27行>       export JAVA_HOME=/usr/java/jdk1.7.0_79

第二个:core-site.xml

        <!--指定fs的默认名称-->        <property>                <name>fs.default.name</name>                <value>hdfs://ubuntu:9000</value>        </property>        <!-- 指定HDFS的老大(NameNode)的地址 -->        <property>            <name>fs.defaultFS</name>            <value>hdfs://ubuntu:9000</value>        </property>        <!-- 指定hadoop运行时产生文件的存储目录 -->        <property>            <name>hadoop.tmp.dir</name>            <value>/ubuntu/hadoop-2.7.0/tmp</value>        </property>

第三个:hdfs-site.xml

    <!-- 指定HDFS副本的数量 -->    <property>        <name>dfs.replication</name>        <value>1</value>       </property>

第四个:mapred-site.xml (mv mapred-site.xml.template mapred-site.xml)
mv mapred-site.xml.template mapred-site.xml
vi mapred-site.xml

    <!-- 指定mr运行在yarn上 -->    <property>        <name>mapreduce.framework.name</name>        <value>yarn</value>       </property>

第五个:yarn-site.xml

        <!-- 指定YARN的老大(ResourceManager)的地址 -->        <property>            <name>yarn.resourcemanager.hostname</name>            <value>ubuntu</value>                </property>        <!-- reducer获取数据的方式 -->                <property>            <name>yarn.nodemanager.aux-services</name>            <value>mapreduce_shuffle</value>        </property>

  • 7、将hadoop添加到环境变量
    vim /etc/profile
    内容如下:
JAVA_HOME=/usr/java/jdk1.7.0_79HADOOP_HOME=/ubuntu/hadoop-2.7.0export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

让配置生效:
source /etc/profile


4、Hadoop启动以及测试

  • 1、格式化namenode(是对namenode进行初始化)
    hdfs namenode -format 或者 hadoop namenode -format

  • 2、启动hadoop

    • 先启动HDFS
      sbin/start-dfs.sh
    • 再启动YARN
      sbin/start-yarn.sh
    • 验证是否启动成功
      使用jps命令验证
    27408 NameNode    28218 Jps    27643 SecondaryNameNode    28066 NodeManager    27803 ResourceManager    27512 DataNode

http://192.168.39.100:50070 (HDFS管理界面)
http://192.168.39.100:8088 (MR管理界面)

5、测试HDFS

  • 查看帮助
    hadoop fs -help <cmd>
  • 上传
    hadoop fs -put <linux上文件> <hdfs上的路径>
  • 查看文件内容
    hadoop fs -cat <hdfs上的路径>
  • 查看文件列表
    hadoop fs -ls /
  • 下载文件
    hadoop fs -get <hdfs上的路径> <linux上文件>
  • 上传文件到hdfs文件系统上
    hadoop fs -put <linux上文件> <hdfs上的路径>
    例如:hadoop fs -put /home/ubuntu/log.txt hdfs://Ubuntu:9000/
  • 删除hdfs系统文件
    hadoop fs -rmr hdfs://ubuntu:9000/log.txt
    注:如果能正常上传和删除文件说明HDFS没问题。
  • 测试Yarn
  • 上传一个文件到HDFS
    hadoop fs -put words.txt hdfs://ubuntu:9000/
  • 让Yarn来统计一下文件信息
    cd /$HADOOP_HOME/etc/hadoop/share/hadoop/target/mapreduce/
  • 测试命令
    hadoop jar hadoop-mapreduce-examples-2.7.0.jar wordcount /works.txt hdfs://ubuntu:9000/wc
1 0