在 Linux 上“升级 HDFS 配置”通常有两种理解,下面我分别说明,你可以对号入座:
如果你只是修改或更新 HDFS 的配置参数(如 hdfs-site.xml、core-site.xml):
路径一般在:
$HADOOP_HOME/etc/hadoop/
常见文件:
core-site.xmlhdfs-site.xml例如:
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
scp hdfs-site.xml node2:$HADOOP_HOME/etc/hadoop/
scp hdfs-site.xml node3:$HADOOP_HOME/etc/hadoop/
stop-dfs.sh
start-dfs.sh
hdfs dfsadmin -safemode enter这是真正的“升级 HDFS”。
hdfs dfsadmin -finalizeUpgrade
hdfs dfsadmin -metasave /tmp/meta.log
stop-dfs.sh
tar -xzf hadoop-3.3.6.tar.gz -C /opt/
cp $OLD_HADOOP_HOME/etc/hadoop/* $NEW_HADOOP_HOME/etc/hadoop/
hdfs dfsadmin -rollingUpgrade prepare
hdfs dfsadmin -rollingUpgrade query
# 停止旧 DN
hadoop-daemon.sh stop datanode
# 启动新 DN
$NEW_HADOOP_HOME/sbin/hadoop-daemon.sh start datanode
hdfs namenode -upgrade
hdfs dfsadmin -rollingUpgrade finalize
finalize 前回滚如果你能告诉我:
我可以给你更精确的命令。