一、配置文件列表如下:
[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機器上運行。