Hadoop on Yarn配置信息

core-site.xml

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
        <name>fs.defaultFS</name>
        <value>hdfs://appcluster</value>
    </property>
                                                                                                                                                                
    <property>
        <name>io.file.buffer.size</name>
        <value>131072</value>
    </property>
                                                                                                                                                                
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/data/hadoop/storage/tmp</value>
    </property>
                                                                                                                                                                
    <property>
        <name>ha.zookeeper.quorum</name>
        <value>node21:2181,node22:2181,node23:2181</value>
    </property>
                                                                                                                                                                
    <property>
        <name>ha.zookeeper.session-timeout.ms</name>
        <value>2000</value>
    </property>
                                                                                                                                                                
    <property>
        <name>fs.trash.interval</name>
        <value>4320</value> 
    </property>
                                                                                                                                                                
    <property>
         <name>hadoop.http.staticuser.use</name>
         <value>root</value>
    </property>
                                                                                                                                                                
    <property>
        <name>hadoop.proxyuser.hadoop.hosts</name>
        <value>*</value>
    </property>
                                                                                                                                                                
    <property>
        <name>hadoop.proxyuser.hadoop.groups</name>
        <value>*</value>
    </property>
                                                                                                                                                                
    <property>
        <name>hadoop.native.lib</name>
        <value>true</value>
    </property> 
</configuration>

hdfs-site.xml

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--指定namenode名称空间的存储地址-->
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/data/hadoop/storage/hdfs/name</value>
    </property>


<!--指定datanode数据存储地址-->                                                                                                                           
    <property>
        <name>dfs.datanode.data.dir</name> 
        <value>/data/hadoop/storage/hdfs/data</value>
    </property>


<!--指定数据冗余份数-->                                                                                                                                  
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
                                                                                                                                                  
                                                                                                                                                  
    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
    </property>
                                                                                                                                                  
    <property>
        <name>dfs.permissions</name>
        <value>false</value>
    </property>
                                                                                                                                                 
    <property>
        <name>dfs.permissions.enabled</name>
        <value>false</value>
    </property>


<!--指定hdfs的nameservice为appcluster,需要和core-site.xml中的保持一致 -->                                                                                                                                   
    <property>
        <name>dfs.nameservices</name>
        <value>appcluster</value>
    </property>


<!-- appcluster下面有两个NameNode,分别是nn1,nn2 -->                                                                                                                             
    <property>
        <name>dfs.ha.namenodes.appcluster</name>
        <value>nn1,nn2</value>
    </property>


<!-- nn1的RPC通信地址 -->                                                                                                                                       
    <property>
        <name>dfs.namenode.rpc-address.appcluster.nn1</name>
        <value>node21:9000</value>
    </property>


<!-- nn2的RPC通信地址 -->                                                                                                                                    
    <property>
        <name>dfs.namenode.rpc-address.appcluster.nn2</name>
        <value>node22:9000</value>
    </property>
                                                                                                                                                  
    <property>
        <name>dfs.namenode.servicerpc-address.appcluster.nn1</name>
        <value>node21:53310</value>
    </property>
                                                                                                                                                  
    <property>
        <name>dfs.namenode.servicerpc-address.appcluster.nn2</name>
        <value>node22:53310</value>
    </property>


<!-- nn1的http通信地址 -->                                                                                                                                    
    <property>
        <name>dfs.namenode.http-address.appcluster.nn1</name>
        <value>node21:50070</value>
    </property>


<!-- nn2的http通信地址 -->                                                                                                                                   
    <property>
        <name>dfs.namenode.http-address.appcluster.nn2</name>
        <value>node22:50070</value>
    </property>
                                                                                                                                                  
    <property>
        <name>dfs.datanode.http.address</name>
        <value>0.0.0.0:50070</value>
    </property>


<!-- 指定NameNode的元数据在JournalNode上的存放位置 -->                                                                                                                                    
    <property>
        <name>dfs.namenode.shared.edits.dir</name>
        <value>qjournal://node21:8485;node22:8485;node23:8485/appcluster</value>
    </property>


<!-- 配置失败自动切换实现方式 -->
    <property>
        <name>dfs.ha.automatic-failover.enabled</name>
        <value>true</value>
    </property>


<!-- 配置失败自动切换实现方式 -->                                                                                                                                     
    <property>
        <name>dfs.client.failover.proxy.provider.appcluster</name>
      <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
    </property>


<!-- 配置隔离机制 -->                                                                                                                                  
    <property>
        <name>dfs.ha.fencing.methods</name>
        <value>sshfence</value>
    </property>


<!-- 使用隔离机制时需要ssh免密码登陆 -->                                                                                                                                     
    <property>
        <name>dfs.ha.fencing.ssh.private-key-files</name>
        <value>/root/.ssh/id_rsa</value>
    </property>
                                                                                                                                                  
    <property> 
        <name>dfs.ha.fencing.ssh.connect-timeout</name>
        <value>30000</value>
    </property>
                                                                                                                                                  
    <property>
        <name>dfs.journalnode.edits.dir</name>
        <value>/data/hadoop/storage/hdfs/journal</value>
    </property>
                                                                                                                                                  
                                                                                                                                                  
    <property>
        <name>ha.failover-controller.cli-check.rpc-timeout.ms</name>
        <value>60000</value>
    </property>
                                                                                                                                                  
    <property>
        <name>ipc.client.connect.timeout</name>
        <value>60000</value>
    </property>
                                                                                                                                                  
    <property>
        <name>dfs.image.transfer.bandwidthPerSec</name>
        <value>41943040</value>
    </property>
                                                                                                                                                  
    <property>
        <name>dfs.namenode.accesstime.precision</name>
        <value>3600000</value>
    </property>
                                                                                                                                                  
    <property>
        <name>dfs.datanode.max.transfer.threads</name>
        <value>4096</value>
    </property>
</configuration>

mapred-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

<!-- 配置 MapReduce JobHistory Server 地址 ,默认端口10020 -->                                                                                                                          
<property>
<name>mapreduce.jobhistory.address</name>
<value>0.0.0.0:10020</value>
</property>

<!-- 配置 MapReduce JobHistory Server web ui 地址, 默认端口19888 -->                                                                                                                       
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>0.0.0.0:19888</value>
</property>

</configuration>

yarn-site.xml

<?xml version="1.0"?>
<configuration>

<property>
  <name>yarn.nodemanager.vmem-check-enabled</name>
  <value>false</value>
  <description>Whether virtual memory limits will be enforced for containers.</description>
</property>
<!--rm失联后重新链接的时间-->
<property>
<name>yarn.resourcemanager.connect.retry-interval.ms</name>
<value>2000</value>
</property>


<!--开启resourcemanagerHA,默认为false-->
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>


<!--配置resourcemanager-->
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>


<!--开启故障自动切换-->
<property>
<name>yarn.resourcemanager.ha.automatic-failover.enabled</name>
<value>true</value>
</property>


<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>node21</value>
</property>


<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>node22</value>
</property>


<!--在hadoop001上配置rm1,在hadoop002上配置rm2,注意:一般都喜欢把配置好的文件远程复制到其它机器上,但这个在YARN的另一个机器上一定要修改-->
<property>
<name>yarn.resourcemanager.ha.id</name>
<value>rm1</value>
<description>If we want to launch more than one RM in single node,we need this configuration</description>
</property>


<!--开启自动恢复功能-->
<property>
<name>yarn.resourcemanager.recovery.enabled</name>
<value>true</value>
</property>


<!--配置与zookeeper的连接地址-->
<property>
<name>yarn.resourcemanager.zk-state-store.address</name>
<value>node21:2181,node22:2181,node23:2181</value>
</property>


<property>
<name>yarn.resourcemanager.store.class</name>
<value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore</value>
</property>


<property>
<name>yarn.resourcemanager.zk-address</name>
<value>node21:2181,node22:2181,node23:2181</value>
</property>


<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>appcluster-yarn</value>
</property>


<!--schelduler失联等待连接时间-->
<property>
<name>yarn.app.mapreduce.am.scheduler.connection.wait.interval-ms</name>
<value>5000</value>
</property>


<!--配置rm1-->
<property>
<name>yarn.resourcemanager.address.rm1</name>
<value>node21:8032</value>
</property>


<property>
<name>yarn.resourcemanager.scheduler.address.rm1</name>
<value>node21:8030</value>
</property>


<property>
<name>yarn.resourcemanager.webapp.address.rm1</name>
<value>node21:8088</value>
</property>


<property>
<name>yarn.resourcemanager.resource-tracker.address.rm1</name>
<value>node21:8031</value>
</property>


<property>
<name>yarn.resourcemanager.admin.address.rm1</name>
<value>node21:8033</value>
</property>


<property>
<name>yarn.resourcemanager.ha.admin.address.rm1</name>
<value>node21:23142</value>
</property>


<!--配置rm2-->
<property>
<name>yarn.resourcemanager.address.rm2</name>
<value>node22:8032</value>
</property>


<property>
<name>yarn.resourcemanager.scheduler.address.rm2</name>
<value>node22:8030</value>
</property>


<property>
<name>yarn.resourcemanager.webapp.address.rm2</name>
<value>node22:8088</value>
</property>


<property>
<name>yarn.resourcemanager.resource-tracker.address.rm2</name>
<value>node22:8031</value>
</property>


<property>
<name>yarn.resourcemanager.admin.address.rm2</name>
<value>node22:8033</value>
</property>


<property>
<name>yarn.resourcemanager.ha.admin.address.rm2</name>
<value>node22:23142</value>
</property>


<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>
<name>yarn.nodemanager.local-dirs</name>
<value>/data/hadoop/yarn/local</value>
</property>


<property>
<name>yarn.nodemanager.log-dirs</name>
<value>/data/hadoop/yarn/log</value>
</property>


<property>
<name>mapreduce.shuffle.port</name>
<value>23080</value>
</property>


<!--故障处理类-->
<property>
<name>yarn.client.failover-proxy-provider</name>
<value>org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider</value>
</property>

<property>
<name>yarn.resourcemanager.ha.automatic-failover.zk-base-path</name>
<value>/yarn-leader-election</value>
<description>Optionalsetting.Thedefaultvalueis/yarn-leader-election</description>
</property>

<property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>1</value>
</property>


<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>10240</value>
</property>

<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>256</value>
</property>


<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>10240</value>
</property>


<property>
<name>yarn.scheduler.minimum-allocation-vcores</name>
<value>1</value>
</property>

<property>
<name>yarn.scheduler.maximum-allocation-vcores</name>
<value>1</value>
</property>
</configuration>

hadoop-env.sh/mapred-env.sh/yarn-env.sh三个文件末尾添加如下参数:

export JAVA_HOME=/hadoop/jdk1.8.0_161
export CLASS_PATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export HADOOP_HOME=/hadoop/hadoop-2.7.5
export HADOOP_PID_DIR=/data/hadoop/pids
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
export HADOOP_PREFIX=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HDFS_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

slaves

扫描二维码关注公众号,回复: 357947 查看本文章

node23
node24

猜你喜欢

转载自blog.csdn.net/thy822/article/details/79784709