个人技术空间关于本站

Hadoop集群部署04-hadoop配置文件

tee /usr/local/hadoop-3.2.4/etc/hadoop/core-site.xml<<-'EOF'
<configuration> 
  <property> 
    <name>io.compression.codecs</name>  
    <value>org.apache.hadoop.io.compress.SnappyCodec</value> 
  </property>  
  <property> 
    <name>hadoop.tmp.dir</name>  
    <value>/data/hadoop/tmp</value> 
  </property>  
  <property> 
    <name>fs.defaultFS</name>  
    <value>hdfs://hadoopCluster</value> 
  </property>  
  <property> 
    <name>ha.zookeeper.quorum</name>  
    <value>hadoop1:2181,hadoop2:2181,hadoop3:2181</value> 
  </property> 
  <property>
      <name>hadoop.proxyuser.root.hosts</name>
      <value>*</value>
  </property>
  <property>
      <name>hadoop.proxyuser.root.groups</name>
      <value>*</value>
  </property>
</configuration>
EOF
tee /usr/local/hadoop-3.2.4/etc/hadoop/hdfs-site.xml <<-'EOF'
<configuration> 
  <property> 
    <name>dfs.nameservices</name>  
    <value>hadoopCluster</value> 
  </property>  
  <property>
  <name>dfs.replication</name>
  <value>3</value>
</property>
  <property> 
    <!-- namenode 节点数据(即元数据)的存放位置,可以指定多个目录实现容错,多个目录用逗号分隔 -->  
    <name>dfs.namenode.name.dir</name>  
    <value>/data/hadoop/namenode</value> 
  </property>  
  <property> 
    <!-- datanode 节点数据(即数据块)的存放位置 -->  
    <name>dfs.datanode.data.dir</name>  
    <value>/data/hadoop/datanode</value> 
  </property>  
  <property> 
    <name>dfs.ha.namenodes.hadoopCluster</name>  
    <value>nn1,nn2</value> 
  </property>  
  <property> 
    <name>dfs.namenode.rpc-address.hadoopCluster.nn1</name>  
    <value>hadoop1:8020</value> 
  </property>  
  <property> 
    <name>dfs.namenode.rpc-address.hadoopCluster.nn2</name>  
    <value>hadoop2:8020</value> 
  </property> 
  <property> 
    <name>dfs.namenode.http-address.hadoopCluster.nn1</name>  
    <value>hadoop1:9870</value> 
  </property>  
  <property> 
    <name>dfs.namenode.http-address.hadoopCluster.nn2</name>  
    <value>hadoop2:9870</value> 
  </property> 
  <property> 
    <name>dfs.namenode.shared.edits.dir</name>  
    <value>qjournal://hadoop1:8485;hadoop2:8485;hadoop3:8485/hadoopCluster</value> 
  </property>  
  <property> 
    <!-- Journal Edit Files 的存储目录 -->  
    <name>dfs.journalnode.edits.dir</name>  
    <value>/data/hadoop/journalnode</value> 
  </property>   
  <property> 
    <name>dfs.ha.zkfc.failover-controller.active-standby-checks</name>  
    <value>true</value> 
  </property>  
  <property> 
    <!-- 开启故障自动转移 -->  
    <name>dfs.ha.automatic-failover.enabled</name>  
    <value>true</value> 
  </property> 
<property>
  <name>dfs.namenode.heartbeat.recheck-interval</name>
  <value>15000</value> <!-- 增加心跳检测的频率,减少 NameNode 宕机后切换的延迟: -->
</property>
  <property> 
    <!-- 访问代理类,用于确定当前处于 Active 状态的 NameNode -->  
    <name>dfs.client.failover.proxy.provider.hadoopCluster</name>  
    <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value> 
  </property>  
  <property> 
    <name>dfs.ha.fencing.methods</name>  
    <value>sshfence</value> 
  </property>  
  <property> 
    <name>dfs.ha.fencing.ssh.private-key-files</name>  
    <value>/root/.ssh/id_rsa</value> 
  </property>  
  <property> 
    <name>dfs.datanode.du.reserved</name>  
    <value>21474836480</value>  
    <!-- 预留20GB --> 
  </property>  
<property>
  <!-- 动态排除 DataNode 节点-->  
  <name>dfs.hosts.exclude</name>
  <value>/usr/local/hadoop-3.2.4/etc/hadoop/dfs.hosts.exclude</value>
</property>
<property>
  <name>dfs.namenode.edits.dir.minimum.replication</name>
  <value>2</value> </property>
</configuration>
EOF
tee /usr/local/hadoop-3.2.4/etc/hadoop/yarn-site.xml <<-'EOF'

<configuration> 
  <property> 
    <!--配置 NodeManager 上运行的附属服务。需要配置成 mapreduce_shuffle 后才可以在 Yarn 上运行 MapReduce 程序。-->  
    <name>yarn.nodemanager.aux-services</name>  
    <value>mapreduce_shuffle</value> 
  </property>  
  <property> 
    <!-- 是否启用日志聚合 (可选) -->  
    <name>yarn.log-aggregation-enable</name>  
    <value>true</value> 
  </property>  
  <property> 
    <!-- 聚合日志的保存时间 (可选) -->  
    <name>yarn.log-aggregation.retain-seconds</name>  
    <value>86400</value> 
  </property>  
  <property> 
    <!-- 启用 RM HA -->  
    <name>yarn.resourcemanager.ha.enabled</name>  
    <value>true</value> 
  </property>  
  <property> 
    <!-- RM 集群标识 -->  
    <name>yarn.resourcemanager.cluster-id</name>  
    <value>my-yarn-cluster</value> 
  </property>  
  <property> 
    <!-- RM 的逻辑 ID 列表 -->  
    <name>yarn.resourcemanager.ha.rm-ids</name>  
    <value>rm1,rm2</value> 
  </property>  
  <property> 
    <!-- RM1 的服务地址 -->  
    <name>yarn.resourcemanager.hostname.rm1</name>  
    <value>hadoop1</value> 
  </property>  
  <property> 
    <!-- RM2 的服务地址 -->  
    <name>yarn.resourcemanager.hostname.rm2</name>  
    <value>hadoop2</value> 
  </property>  
  <property> 
    <!-- RM1 Web 应用程序的地址 -->  
    <name>yarn.resourcemanager.webapp.address.rm1</name>  
    <value>hadoop1:8088</value> 
  </property>  
  <property> 
    <!-- RM2 Web 应用程序的地址 -->  
    <name>yarn.resourcemanager.webapp.address.rm2</name>  
    <value>hadoop2:8088</value> 
  </property>  
  <property> 
    <!-- ZooKeeper 集群的地址 -->  
    <name>yarn.resourcemanager.zk-address</name>  
    <value>hadoop1:2181,hadoop2:2181,hadoop3:2181</value> 
  </property>  
  <property> 
    <!-- 启用自动恢复 -->  
    <name>yarn.resourcemanager.recovery.enabled</name>  
    <value>true</value> 
  </property>  
  <property> 
    <!-- 用于进行持久化存储的类 -->  
    <name>yarn.resourcemanager.store.class</name>  
    <value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore</value> 
  </property> 
  <property>
    <name>yarn.nodemanager.remote-app-log-dir</name>
    <value>/yarn/logs</value>
  </property>
  <property>
    <name>yarn.nodemanager.remote-app-log-dir-suffix</name>
    <value>logs</value>
  </property>
  <property>
  <name>yarn.nodemanager.resource.memory-mb</name>
  <value>12288</value> <!-- 根据服务器内存大小调整 -->
  </property>
  <property>
    <name>yarn.nodemanager.resource.cpu-vcores</name>
    <value>6</value> <!-- 根据服务器 CPU 核心数调整 -->
  </property>
  <property>
    <name>mapreduce.task.io.sort.mb</name>
    <value>256</value> <!-- 调整为适合任务规模的值 -->
  </property>
</configuration>
EOF
tee /usr/local/hadoop-3.2.4/etc/hadoop/dfs.hosts.exclude <<-'EOF'
hadoop4
EOF
CreateBy:2026-04-16,UpdateBy:2026-04-17

评论

还没有评论,欢迎第一个留言。
← 请输入您的姓名
← 请输入常用邮箱(不会公开)
← 请输入个人网站(可选)
← 请输入评论内容,文明交流
← 请先完成人机验证