Hadoop集群管理之配置文件


一、配置文件列表如下:

[hadoop@node1 conf]$ pwd
/app/hadoop/conf
[hadoop@node1 conf]$ echo $HADOOP_HOME
/app/hadoop
[hadoop@node1 conf]$ ll
總計 60
-rw-rw-r-- 1 hadoop hadoop 3936 2010-02-19 15:55 capacity-scheduler.xml
-rw-rw-r-- 1 hadoop hadoop  535 2010-02-19 15:55 configuration.xsl
-rw-rw-r-- 1 hadoop hadoop  435 2014-02-28 22:15 core-site.xml
-rw-rw-r-- 1 hadoop hadoop 2226 2014-02-28 10:16 hadoop-env.sh
-rw-rw-r-- 1 hadoop hadoop 1245 2010-02-19 15:55 hadoop-metrics.properties
-rw-rw-r-- 1 hadoop hadoop 4190 2010-02-19 15:55 hadoop-policy.xml
-rw-r--r-- 1 hadoop hadoop 1652 2014-02-28 21:55 hbase-site.xml
-rw-rw-r-- 1 hadoop hadoop  664 2014-02-28 15:12 hdfs-site.xml
-rw-rw-r-- 1 hadoop hadoop 2815 2010-02-19 15:55 log4j.properties
-rw-rw-r-- 1 hadoop hadoop  266 2014-02-28 10:15 mapred-site.xml
-rw-rw-r-- 1 hadoop hadoop   14 2014-02-28 15:16 masters
-rw-rw-r-- 1 hadoop hadoop   28 2014-02-28 10:15 slaves
-rw-rw-r-- 1 hadoop hadoop 1243 2010-02-19 15:55 ssl-client.xml.example
-rw-rw-r-- 1 hadoop hadoop 1195 2010-02-19 15:55 ssl-server.xml.example

二、常用配置文件
    2.1、hadoop-env.sh:記錄腳本要用的環境變量;
    2.2、core-site.xml:Hadoop核心配置項;
    2.3、hdfs-site.xml:Hadoop守護進程配置項,例如:namenode,secondarynamenode和datanode等;
    2.4、mapred-site.xml:MapReduce守護進程配置項,包括jobtracker和tasktracker;
    2.5、master:運行secondarynamenode(而不是namenode)的機器列表(每行一個)。只在namenode或jobtracker節點上使用,無需同步到各節點;
    2.6、slave:運行datanode和tasktracker的機器列表(每行一個)。只在namenode或jobtracker節點上使用,無需同步到各節點。
    2.7、hadoop-metrics.properties:ganglia監控的配置文件

三、控制腳本

    3.1、start-dfs.sh:在本地節點啟動namenode,在slave文件指定的每個節點啟動datanode,在master文件指定的每個節點啟動secondarynamenode
    3.2、start-mapred.sh:在本地節點啟動jobtracker,在slave文件指定的每個節點啟動tasktracker。
    3.3、start-all.sh:依次調用start-dfs.sh和start-mapred.sh
    3.4、stop-dfs.sh/stop-mapred.sh/stop-all.sh:前面的start腳本對應的關閉腳本。
    3.5、hadoop-daemon.sh:上述腳本調用它來執行啟動和終止hadoop守護進程。如果用戶需要從其他系統或自己編寫腳本控制hadoop守護進程,可以調用它。
    3.6、hadoop-daemons.sh:用於在多個主機上啟動同一hadoop守護進程。

四、守護進程管理

對於小型集群(幾十個節點),可以將namenode、secondarynamenode、jobtracker放到單獨一台機器上,但對於大型集群,最好分別放到不同的機器上。

    4.1、namenode:在內存中保存整個命名空間的所有文件和塊元數據,它的內存需求很大。
    4.2、secondnamenode:保存一份最新的檢查點,記錄文件系統的元數據,有助於在數據丟失或系統崩潰時恢復namenode的元數據;它在大多時候空閑,但它創建檢查時的內存需求和namenode差不多。一旦文件系統包含大量文件,單台主機可能無法同時運行namenode和secondarynamenode。
    4.3、jobtracker:在一個運行大量mapreduce作業的高負載集群上,jobtracker會使用大量內存和CPU資源,因此它最好運行在一個專用節點上。
HDFS控制腳本需要在namenode機器上運行;mapreduce控制腳本需要在jobtracker機器上運行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM