替换 hadoop 名称节点和日志节点的步骤

steps to replace a hadoop namenodes and journal nodes

设置:我们有 3 台机器:m1、m2 和 m3 以下是每台机器上的角色:

m1: namenode (active), zookeeper, hbase master, journalnode
m2: namenode (standby), zookeeper, hbase master, journalnode
m3: zookeeper, hbase master, journalnode

我们正在使用带有 QJM 的名称节点 HA 设置

这三台机器都需要更换新机器(带SSD): new_m1、new_m2 和 new_m3

new_m1: namenode (active), zookeeper, hbase master, journalnode
new_m2: namenode (standby), zookeeper, hbase master, journalnode
new_m3: zookeeper, hbase master, journalnode

替换会导致集群停机,但是一旦引入新的主节点,集群应该能够恢复正常运行。

我需要帮助来详细了解用新硬件替换日志节点和活动+备用名称节点所需的步骤,而不会丢失任何数据。

非常感谢最详细的一步一步的回答,感谢 aton

没有hadoop版本升级,只是硬件就地更换

案例一:

如果你把hadoop、hbase和zookeeper(temp、dfs、namenode目录)都安装在一个公用文件夹下,备份数据就很容易了。从现在开始,我们将此文件夹称为 home 文件夹。只需这样做:

1。在新的活动名称节点系统中创建主文件夹:

sudo mkdir -p /path/to/home/folder sudo chown -R hadoopuser:hadoopgroup /path/to/home/folder

2。复制主文件夹的所有内容(保留权限):

sudo scp -rp /path/to/home/folder/in/old/active/namenode hadoopuser@new-active-node-ip:/path/to/home/folder

3.standby namenodeslave nodes重复这两个步骤。

NOTE: Create a backup of /etc/hosts file of each node before editing.

4. 为了减少工作量,在 /etc/hosts 文件中用与旧节点相同的名称重命名新节点。 (如有必要,给你的旧节点一些其他名称)

5.启动新的namenode来检查它是否工作。

案例二:

如果您的 hadoop temp、dfs、namenode 和 journal 目录不属于您的主文件夹(即,您将这些目录配置为与主文件夹不同),请执行以下操作:

1。确定目录位置:

core-site.xmlhdfs-site.xml中找到hadoop temp、dfs、namenode、journal目录的位置

2。复制内容:

对每个目录执行CASE I中的**步骤1**和**步骤2**以保留权限。

3.启动新的namenode来检查它是否工作。