在 Linux 上配置 HDFS(Hadoop Distributed File System) 后,配置“生效”的方式取决于你修改了哪类配置以及HDFS 当前状态。下面按常见情况说明。
通常位于:
$HADOOP_HOME/etc/hadoop/
常见配置文件:
core-site.xml:全局配置(如 fs.defaultFS)hdfs-site.xml:HDFS 专属配置(如副本数、目录)hadoop-env.sh:环境变量(JAVA_HOME 等)workers / slaves:DataNode 节点列表直接初始化并启动即可:
# 格式化 NameNode(仅第一次)
hdfs namenode -format
# 启动 HDFS
start-dfs.sh
✅ 配置在启动时自动生效
hdfs-site.xml / core-site.xml必须重启 HDFS 才能生效
stop-dfs.sh
start-dfs.sh
或单组件重启:
# 重启 NameNode
hadoop-daemon.sh stop namenode
hadoop-daemon.sh start namenode
# 重启 DataNode
hadoop-daemon.sh stop datanode
hadoop-daemon.sh start datanode
⚠️ 修改副本数等参数不会自动应用到已有文件
hadoop-env.sh需要:
stop-dfs.sh
start-dfs.sh
或重新登录 shell(仅对当前会话)
workers(或 slaves)需要:
stop-dfs.sh
start-dfs.sh
并确保:
不重启集群,仅影响新操作:
hdfs dfs -D dfs.replication=2 -put file /
例如修改副本数:
hdfs dfs -setrep -R 3 /
hdfs getconf -confKey dfs.replication
http://namenode-ip:9870
❌ 配置不生效原因:
如果你愿意,可以告诉我:
我可以给你更精确的操作步骤。