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位的區別)java

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

       cd  /home/hadoop/linux

       tar -zxvf hadoop-2.4.1.tar.gzvim

    [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
            先啓動HDFSwindows

        [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/app

    [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/oop

  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#至關於幫助命令~                  

相關文章
相關標籤/搜索