Hadoop各個配置檔案的作用
阿新 • • 發佈:2018-11-30
core-site.xml
其中 fs.defaultFS 配置的地址就是java程式碼訪問的時候的路徑,需要配置在java程式碼中程式碼中要用IP:9000不能用localhost
<configuration> <property> <!-- 這個屬性用來指定namenode的hdfs協議的檔案系統通訊地址,可以指定一個主機+埠,也可以指定為一個namenode服務(這個服務內部可以有多臺namenode實現ha的namenode服務) --> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> <property> <!-- 這個屬性用來執行檔案IO緩衝區的大小--> <name>io.file.buffer.size</name> <value>131072</value> </property> <property> <!-- 指定hadoop臨時目錄,前面用file:表示是本地目錄。也可以直接使用/usr/local/hadoop/tm,我估計不加file:應該也可以。hadoop在執行過程中肯定會有臨時檔案或緩衝之類的,必然需要一個臨時目錄來存放,這裡就是指定這個的。當然這個目錄前面我們已經建立好了。 --> <name>hadoop.tmp.dir</name> <value>file:/usr/local/hadoop-2.4.1/tmp</value> <description>Abase for other temporary directories.</description> </property> <property> <!-- 配置ipc傳輸大小 --> <name>ipc.maximum.data.length</name> <value>134217728</value> </property> </configuration>
hdfs-site.xml
dfs.namenode.secondary.http-address 這個地址就是檔案系統瀏覽器訪問地址
主namenode有個hdfs協議的訪問地址:http://192.168.187.128:50070
secondNamenode有個http協議的訪問地址:http://192.168.187.128:50071
<configuration> <property> <!-- secondary namenode的http通訊地址,有何用呢?為何不用hdfs協議了?我還不太清楚--> <name>dfs.namenode.secondary.http-address</name> <value>localhost:50070</value> </property> <property> <!-- namenode資料的存放地點。也就是namenode元資料存放的地方,記錄了hdfs系統中檔案的元資料--> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop-2.4.1/dfs/name</value> </property> <property> <!-- datanode資料的存放地點。也就是block塊存放的目錄了--> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop-2.4.1/dfs/data</value> </property> <property> <!-- hdfs的副本數設定。也就是上傳一個檔案,其分割為block塊後,每個block的冗餘副本個數--> <name>dfs.replication</name> <value>3</value> </property> <property> <!-- 開啟hdfs的web訪問介面。好像預設埠是50070--> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> </configuration>
yarn-site.xml
<property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> <property> <!--yarn總管理器的IPC通訊地址--> <name>yarn.resourcemanager.address</name> <value>singlehost:8032</value> </property> <property> <!--yarn總管理器排程程式的IPC通訊地址--> <name>yarn.resourcemanager.scheduler.address</name> <value>singlehost:8030</value> </property> <property> <!--yarn總管理器的IPC通訊地址--> <name>yarn.resourcemanager.resource-tracker.address</name> <value>singlehost:8031</value> </property> <property> <!--yarn總管理器的IPC管理地址--> <name>yarn.resourcemanager.admin.address</name> <value>singlehost:8033</value> </property> <property> <!--yarn總管理器的web http通訊地址--> <name>yarn.resourcemanager.webapp.address</name> <value>singlehost:8088</value> </property>
mapred-site.xml
MapReduce內部的一個通訊地址:singlehost:10020
MapReduce外部web訪問的地址:singlehost:19888
<configuration>
<property>
<!---- 指定mr框架為yarn方式,Hadoop二代MP也基於資源管理系統Yarn來執行 -->
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<!---- 指定mr框架jobhistory的內部通訊地址。目前還不知道是做什麼的 -->
<name>mapreduce.jobhistory.address</name>
<value>singlehost:10020</value>
</property>
<property>
<!---- 指定mr框架web檢視的地址 -->
<name>mapreduce.jobhistory.webapp.address</name>
<value>singleshost:19888</value>
</property>
</configuration>