HADOOP-YARN-JDK

稷下小鯉魚發表於2020-10-01

HADOOP-core-site.xml

    <property>
    <!--配置分散式檔案系統的schema,ip以及port,預設hadoop1.x的預設埠是9000,hadoop2.x的預設埠為8020-->
        <name>fs.defaultFS</name>
        <value>hdfs://10.206.0.4:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/apps/hadoop-2.8.1/hdpdata</value>
    </property>
    <property>
        <name>hadoop.proxyuser.root.hosts</name>
        <value>*</value>
    </property>
    <property>
        <name>hadoop.proxyuser.root.groups</name>
        <value>*</value>
    </property>
</configuration>

HADOOP-hdfs-site.xml

	<!-- 
		預設的塊副本數。可以在建立檔案時指定副本的實際數量。如果在建立時未指定副本數,則使用預設值 
		tip:如果叢集中有3個datanode,但是副本設定為4,那麼具體的副本數是3,因為一個datanode中儲存
		兩份副本沒有任何意義,只有當你在叢集中再次新增一臺datanode的時候才會本分4份。
	-->
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    
   
    <!-- dfs的namenode的webUI監聽的ip和埠 -->
    <property>
        <name>dfs.namenode.http-address</name>
        <value>0.0.0.0:50070</value>
    </property>
	
	<!-- The secondary namenode的ip地址和埠 -->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>0.0.0.0:50090</value>
	</property>
	
	<!--
    	確定DFS的namenode應該在本地檔案系統的何處儲存名稱表(fsimage)
    	如果這是一個以逗號分隔的目錄列表,那麼名稱表將複製到所有目錄中,以實現冗餘。
     -->
	<property>
        <name>dfs.namenode.name.dir</name>
        <value>file:///opt/apps/hadoop-2.8.1/hdpdata/dfs/name</value>
    </property>
    
    <!--
      確定DFS的datanode應該將其塊儲存在本地檔案系統的什麼位置
      如果這是一個以逗號分隔的目錄列表,那麼資料將儲存在所有命名的目錄中,通常儲存在不同的裝置上。
      對於HDFS儲存策略,應該用相應的儲存型別([SSD]/[DISK]/[ARCHIVE]/[RAM_DISK])標記目錄。
      如果目錄沒有顯式標記儲存型別,則預設儲存型別為磁碟。如果本地檔案系統許可權允許,將建立不存在的目錄。
     -->
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:///opt/apps/hadoop-2.8.1/hdpdata/dfs/data</value>
    </property>

	<!--
    	確定DFS的secondary namenode應該在本地檔案系統的何處儲存要合併的臨時映像
    	如果這是一個以逗號分隔的目錄列表,那麼映像將複製到所有目錄中以實現冗餘。
     -->
    <property>
        <name>dfs.namenode.checkpoint.dir</name>
        <value>file:///opt/apps/hadoop-2.8.1/hdpdata/dfs/cname</value>
    </property>
    
    <!-- 
    	確定DFS的secondary namenode應該在本地檔案系統的何處儲存要合併的臨時edit檔案
    	如果這是一個以逗號分隔的目錄列表,那麼編輯將複製到所有目錄中以實現冗餘。
    	預設值與dfs.namenode.checkpoint.dir相同
     -->
    <property>
        <name>dfs.namenode.checkpoint.edits.dir</name>
        <value>file:///opt/apps/hadoop-2.8.1/hdpdata/dfs/cname</value>
    </property>

</configuration>

YARN-yarn-site.xml

<configuration>
        <property>
              <name>yarn.resourcemanager.hostname</name>
                <value>10.206.0.4</value>
        </property>
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
	<property>
                <name>yarn.nodemanager.vmem-check-enabled</name>
                <value>false</value>
        </property>
        <property>
        	<name>yarn.resourcemanager.scheduler.class</name>
       		<value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value>
     	</property>
	<property>
    		<name>yarn.scheduler.fair.preemption</name>
    		<value>true</value>
	</property>
	<property>
        	<name>yarn.scheduler.fair.preemption.cluster-utilization-threshold</name>
        	<value>1.0</value>
    	</property>
</configuration>

Yarn-mapred-site.xml

	配置mapreduce程式執行的平臺:
	local:執行在本地
	classic:經典方式執行
	yarn:執行在yarn平臺
 -->
<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>0.0.0.0:10020</value>
    </property>
    
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>0.0.0.0:19888</value>
    </property>
</configuration>

HADOOP-hadoop-env.sh
JAVA_HOME=/opt/apps/jdk1.8.0_261
slaves
192.168.10.111

HADOOP和Yarn的日誌存放在${HADOOP_HOME}/logs目錄下,包含mr的日誌和hadoop的日誌