僞分佈式安裝Hadoop詳解

僞分佈式安裝Hadoop
    文檔:http://hadoop.apache.org/docs/r2.7.6/hadoop-project-dist/hadoop-common/SingleCluster.html

1.上傳解壓
      tar -zxvf hadoop-2.7.3.tar.gz -C /opt/modules/

2.瞭解目錄結構,刪除無用文件

3.修改配置:etc/hadoop/

    (1)*-env.sh:3個模塊的環境變量文件

            hadoop-env.sh 、yarn-env.sh(23行)、mapred-env.sh
                JAVA_HOME=/opt/modules/jdk1.8.0_91

  

(2)按模塊配置,這個時候一般根據官方文檔來配置

      a、common模塊:core-site.xml

     

    

    

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!--修改後的文件-->

<configuration>
		<!--指定文件系統HDFS的主機名稱和端口號-->
		<property>
			<name>fs.defaultFS</name>
			<value>hdfs://bigdata-training01.huadian.com:8020</value>
		</property>
		<!--指定文件系統本地臨時存儲目錄,默認值是系統/tmp-->
		<!--臨時目錄需要自己創建-->
		<property>
			<name>hadoop.tmp.dir</name>
			<value>/opt/moduls/hadoop-2.7.3/etc/hadoop/data/tempData</value>
		</property>
</configuration>

b、HDFS模塊配置:hdfs-site.xml

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
	<!--由於是僞分佈式,僅有一臺機器,副本數量沒有必要設置爲3-->
	<property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

     配置slaves:指定小弟DataNode運行在那臺機器上,如果有多個小弟,一行一個

c、測試HDFS模塊是否OK

      -》格式化
                    

     

       當status爲0的時候,爲格式化成功。

  -》啓動

         主節點

  

        從節點

   啓動的這些服務相當於一個一個的Java進程,所以當執行啓動命令之後,需要查看一下是否啓動成功。

-》驗證是否成功:
                    方式一:查看進程jps


                    方式二:
                        bigdata-hpsk01.huadian.com:50070

-》測試HDFS:
                    (1)怎麼用
                            bin/hdfs dfs


                    (2)創建一個目錄
                         bin/hdfs dfs -mkdir -p /datas
                    (3)查看
                         bin/hdfs dfs -ls /
                    (4)上傳文件
                         bin/hdfs dfs -put /opt/datas/input.data  /datas
                    (5)查看文件
                        bin/hdfs dfs -text /datas/input.data
                    (6)刪除文件
                        bin/hdfs dfs -rm -r -f  /datas/input.data

新寫一個文件,上傳到hdfs

d、YARN
           對於分佈式資源管理和任務調度框架來說,在YARN上可以運行多種應用程序
                    - MapReduce
                    - spark
                    - tez
         (1) 配置:yarn-site.xml

<?xml version="1.0"?>

<configuration>
	<!--resourcemanager服務運行的主機名名稱-->
	<property>
		<name>yarn.resourcemanager.hostname</name>
		<value>bigdata-training01.huadian.com</value>
	</property>
	
	<!--告知YARN,MapReduce程序將在 其上運行-->
	<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
	</property>
</configuration>

(2)slaves
        指定nodemanager運行的主機名名稱,由於NameNode和    DataNode在同一臺機器上,前面已經配置,所以不用再去配置。 
           
e、啓動YARN服務
          -》啓動:
        主節點ResourceManager:
            sbin/yarn-daemon.sh start resourcemanager
            
        從節點NodeManager:
            sbin/yarn-daemon.sh start nodemanager

-》驗證啓動:
        方式一:jps
         方式二:bigdata-training01.huadian.com:8088

f、MapReduce模塊
        並行計算的一個框架。
        思想:分而治之
        核心:map:分
            並行處理數據,將數據分割,一部分一部分的處理
              reduce:合
            將Map處理數據的結果進行合併。

        配置:
                第一步:將模板重命名爲xml文件
               

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>


<configuration>
	<!--指定MapReduce的程序運行在YARN上-->
	<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
	</property>
</configuration>

g、測試MapReduce程序

    案例:wordcount程序
            Hadoop提供了一個程序,爲我們統計。

  

準備數據:在/datas/input.data

將MapReduce應用提交到YARN上運行。

    bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount
    Usage: wordcount <in> [<in>...] <out>
    
    <in>:表示MapReduce程序要處理的數據在哪裏

    <out>:表示MapReduce程序處理數據之後的結果,存儲在哪裏,這個目錄不能存在。
 bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /datas/input.data /datas/output/output001

 


額外配置:歷史服務器
    HistoryServer
          mapred-site.xml 後面添加:
    

<property>
        <name>mapreduce.jobhistory.address</name>
                <value>bigdata-training01.huadian.com:10020</value>
    </property>
        <property>
        <name>mapreduce.jobhistory.webapp.address</name>
                <value>bigdata-training01.huadian.com:19888</value>
    </property>

   啓動服務:sbin/mr-jobhistory-daemon.sh start historyserver

日誌聚集功能
            YARN提供日誌中央化管理功能,他能將運行完成的任務 日誌 上傳到HDFS指定目錄下。
            以便後期監控查看
            配置:yarn-site.xml

<!--啓動日誌聚集功能-->	
<property>
    <name>yarn.log-aggregation-enable</name>
	<value>true</value>
</property>
		
<!--設置日誌保存的時間,1周-->	
<property>
	<name>yarn.log-aggregation.retain-seconds</name>
	<value>604800</value>
</property>

注意:重啓YARN和JobHistoryServer服務,
                修改了配置文件,需要重新讀取

如果格式化、啓動某個進程失敗,怎麼辦????
    看日誌文件。。。。就是IDEA控制檯的輸出


    logs/XX.log
        
        hadoop-huadian-datanode-bigdata-hpsk01.huadian.com.log        
        模塊      root   進程名字 主機名 
    
    後綴名:
        日誌分類:標準輸出、錯誤輸出
        .log:程序啓動相關信息   ==========
        .out:程序運行的相關輸出
            system.out.println(),system.error.println
            
    使用tail -100f xxx.log
    找Exception,case by

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章