由于某些原因(如网络改造),Hadoop集群中部分节点的IP需要做变更,这个时候该怎么办呢?现以集群中worker1、worker2两个节点需要修改IP,给出给出解决方案如下:
主机名 | 老IP | 新IP |
---|---|---|
worker1 | 192.168.11.1 | 10.63.150.1 |
worker2 | 192.168.11.2 | 10.63.150.2 |
关闭待修改IP节点中的NodeManager和DataNode进程
yarn --daemon stop nodemanager
hdfs --daemon stop datanode
修改防火墙规则
假设需要修改IP为XX.XX.XX.XX,集群中所有节点将该IP网段添加到防火墙规则中,这样worker1、worker2节点修改IP后依然可以和集群中其他节点保持通信。
修改集群中所有节点的hosts文件
修改IP之前的hosts文件如下
****
192.168.11.1 worker1
192.168.11.2 worker2
修改IP之后的hosts文件如下
****
10.63.150.1 worker1
10.63.150.2 worker2
重启待修改IP节点中的NodeManager和DataNode进程
hdfs --daemon start datanode
yarn --daemon start nodemanager
至此,集群部分节点修改IP工作全部完成。