在 CentOS 上修改 HDFS 参数,本质上是修改 Hadoop 的配置文件并重启/刷新相关服务。下面按常见场景给你一个清晰流程。
HDFS 参数主要在以下文件中(路径可能略有不同):
$HADOOP_HOME/etc/hadoop/
常见文件:
hdfs-site.xml ✅(HDFS 最核心)core-site.xml(全局 Hadoop 参数)hadoop-env.sh(环境变量)示例路径(常见):
/usr/local/hadoop/etc/hadoop/hdfs-site.xml
/opt/cloudera/parcels/CDH/lib/hadoop/etc/hadoop/ # CDH
vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml
示例:修改副本数
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
示例:修改 NameNode 内存相关
<property>
<name>dfs.namenode.handler.count</name>
<value>100</value>
</property>
vi $HADOOP_HOME/etc/hadoop/core-site.xml
例如:
<property>
<name>fs.defaultFS</name>
<value>hdfs://namenode:9000</value>
</property>
如果是多节点集群,需要把配置同步到所有节点:
scp hdfs-site.xml core-site.xml slave1:$HADOOP_HOME/etc/hadoop/
scp hdfs-site.xml core-site.xml slave2:$HADOOP_HOME/etc/hadoop/
stop-dfs.sh
start-dfs.sh
或单独重启:
hadoop-daemon.sh stop namenode
hadoop-daemon.sh start namenode
hadoop-daemon.sh stop datanode
hadoop-daemon.sh start datanode
hdfs dfsadmin -refreshSuperUserGroupsConfiguration
⚠️ 注意:
大多数 hdfs-site.xml 参数修改后必须重启 NameNode / DataNode 才生效
❌ 不要手动改文件
✅ 使用 Cloudera Manager:
HDFS → 配置 → 搜索参数 → 保存 → 重启服务
Services → HDFS → Configs → 修改 → Restart
hdfs getconf -confKey dfs.replication
或:
hdfs dfsadmin -report
| 参数 | 说明 |
|---|---|
| dfs.replication | 副本数 |
| dfs.blocksize | 块大小 |
| dfs.namenode.name.dir | NN 元数据目录 |
| dfs.datanode.data.dir | DN 数据目录 |
| dfs.permissions.enabled | 是否开启权限 |
如果你能告诉我:
我可以直接给你精确命令。