Hadoop之yarn和mapreduce

  1. 准备Linux环境
        1.0点击VMware快捷方式,右键打开文件所在位置 -> 双击vmnetcfg.exe -> VMnet1 host-only ->修改subnet ip 设置网段:192.168.1.0 子网掩码:255.255.255.0 -> apply -> ok
            回到windows --> 打开网络和共享中心 -> 更改适配器设置 -> 右键VMnet1 -> 属性 -> 双击IPv4 -> 设置windows的IP:192.168.1.100 子网掩码:255.255.255.0 -> 点击确定
            在虚拟软件上 --My Computer -> 选中虚拟机 -> 右键 -> settings -> network adapter -> host only -> ok    
        1.1修改主机名
            vim /etc/sysconfig/network
            
            NETWORKING=yes
            HOSTNAME=itcast    ###

        1.2修改IP
            两种方式:
            第一种:通过Linux图形界面进行修改(强烈推荐)
                进入Linux图形界面 -> 右键点击右上方的两个小电脑 -> 点击Edit connections -> 选中当前网络System eth0 -> 点击edit按钮 -> 选择IPv4 -> method选择为manual -> 点击add按钮 -> 添加IP:192.168.1.101 子网掩码:255.255.255.0 网关:192.168.1.1 -> apply
        
            第二种:修改配置文件方式(屌丝程序猿专用)
                vim /etc/sysconfig/network-scripts/ifcfg-eth0
                
                DEVICE="eth0"
                BOOTPROTO="static"               ###
                HWADDR="00:0C:29:3C:BF:E7"
                IPV6INIT="yes"
                NM_CONTROLLED="yes"
                ONBOOT="yes"
                TYPE="Ethernet"
                UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"
                IPADDR="192.168.1.101"           ###
                NETMASK="255.255.255.0"          ###
                GATEWAY="192.168.1.1"            ###
                
        1.3修改主机名和IP的映射关系
            vim /etc/hosts
                
            192.168.1.101    hadoop02    
        1.4关闭防火墙
            #查看防火墙状态
            service iptables status
            #关闭防火墙
            service iptables stop
            #查看防火墙开机启动状态
            chkconfig iptables --list
            #关闭防火墙开机启动
            chkconfig iptables off
        
        1.5重启Linux
            reboot

    2.安装JDK
        2.1上传alt+p 后出现sftp窗口,然后put d:\xxx\yy\ll\jdk-7u_65-i585.tar.gz
        
        2.2解压jdk
            #创建文件夹
            mkdir /home/hadoop/app
            #解压
            tar -zxvf jdk-7u55-linux-i586.tar.gz -C /home/hadoop/app
            
        2.3将java添加到环境变量中
            vim /etc/profile
            #在文件最后添加
            export JAVA_HOME=/home/hadoop/app/jdk-7u_65-i585
            export PATH=$PATH:$JAVA_HOME/bin
        
            #刷新配置
            source /etc/profile
            
    3.安装hadoop2.4.1
        先上传hadoop的安装包到服务器上去/home/hadoop/(注意32位和64位的区别)

       cp hadoop-2.4.1.tar.gz /home/hadoop/

       cd  /home/hadoop/

       tar -zxvf hadoop-2.4.1.tar.gz

    [root@hadoop02 hadoop]# cd hadoop-2.4.1
    [root@hadoop02 hadoop-2.4.1]# cd etc
    [root@hadoop02 etc]# cd hadoop
        伪分布式需要修改5个配置文件
        3.1配置hadoop
        第一个:hadoop-env.sh
            vim hadoop-env.sh
            #第27行
            export JAVA_HOME=/usr/lib/java/java-7-sun
            
        第二个:core-site.xml

            <!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 -->
            <property>
                <name>fs.defaultFS</name>
                <value>hdfs://hadoop02:9000</value>
            </property>
            <!-- 指定hadoop运行时产生文件的存储目录 -->
            <property>
                <name>hadoop.tmp.dir</name>
                <value>/home/hadoop/hadoop-2.4.1/tmp</value>
        </property>
            
        第三个:hdfs-site.xml   hdfs-default.xml  (3)
            <!-- 指定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
            vim 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>hadoop0</value>
        </property>
            <!-- reducer获取数据的方式 -->
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
         </property>
             
        3.2将hadoop添加到环境变量
        
        vim /etc/profile
            export JAVA_HOME=/home/hadoop/app/jdk-7u_65-i585
            export HADOOP_HOME=/home/hadoop/hadoop-2.4.1
            export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

        source /etc/profile
        
        3.3格式化namenode(是对namenode进行初始化)
            hdfs namenode -format (hadoop namenode -format)
            
        3.4启动hadoop
            先启动HDFS

        [root@hadoop02 hadoop]# cd   /home/hadoop/hadoop-2.4.1


            sbin/start-dfs.sh
            
            再启动YARN
            sbin/start-yarn.sh
            
        3.5验证是否启动成功
            使用jps命令验证
            27408 NameNode
            28218 Jps
            27643 SecondaryNameNode
            28066 NodeManager
            27803 ResourceManager
            27512 DataNode
        
            http://192.168.1.101:50070 (HDFS管理界面)
            http://192.168.1.101:8088 (MR管理界面)

  2. 伪分布式集群的测试[root@hadoop02 hadoop-2.6.0]# hadoop fs -ls hdfs://hadoop02:9000/

    [root@hadoop02 hadoop]#cd /home/hadoop

    [root@hadoop02 hadoop]#hadoop fs -put hadoop-2.6.0-x64.tar.gz hdfs://hadoop02:9000/
    [root@hadoop02 hadoop]# hadoop fs -ls hdfs://hadoop02:9000/

  3. -rw-r--r--   1 root supergroup  180197035 2015-12-01 05:06 hdfs://hadoop02:9000/hadoop-2.6.0-x64.tar.gz

  4. 文件的存放目录[root@hadoop02 subdir0]# pwd
    /home/hadoop/hadoop-2.6.0/tmp/dfs/data/current/BP-493792533-192.168.88.155-1448973412341/current/finalized/subdir0/subdir0

  5. 下载文件hadoop fs -get  /hadoop-2.6.0-x64.tar.gz

    mappreduce程序测试

  6. [root@hadoop02 subdir0]#/home/hadoop/hadoop-2.6.0/share/hadoop/mapreduce

  7. [root@hadoop02 mapreduce]# vi test.data

    文件内容如下

    hello tom
    hello jim
    hello  kitty
    hello  angelababy
    hello   dingcheng
    how are you .baby .do you have kong today wangshan?
    can you have supper with me?
    if you can't
    na sure you are gen xiaoming haave supper
    i will shengqi de

    [root@hadoop02 mapreduce]# hadoop fs -mkdir /wc
    [root@hadoop02 mapreduce]# hadoop fs -mkdir /wc/srcdata
     [root@hadoop02 mapreduce]# hadoop -put test.data /wc/srcdata
    [root@hadoop02 mapreduce]# hadoop fs -put test.data /wc/srcdata
    [root@hadoop02 mapreduce]# hadoop fs -ls /
     [root@hadoop02 mapreduce]#  hadoop fs -ls /wc/srcdata
    [root@hadoop02 mapreduce]# hadoop jar hadoop-mapreduce-examples-2.6.0.jar wordcount /wc/srcdata /wc/output
     [root@hadoop02 mapreduce]#  hadoop fs -ls /wc/output

  8. hadoop fs -cat /wc/output/part-r-00000

  9. hadoop fs#相当于帮助命令




    ~                  




   

你可能感兴趣的:(Hadoop之yarn和mapreduce)