Hadoop部署的时候,在通过slaves文件知道节点数目。但是如果需要扩展集群,比如从6台扩充成8台,应该怎么处理?(现在看来,最好的办法是更新slaves,然后再运行hadoop balancer)
那有没有现成的管理软件来完成这些事情?(比如我添加机器之后,自动处理这些事情)
另外,万一一台机器需要维护,怎么才能通知集群,进行切换。虽然直接取下维护也是可以的,但是风险比较大。
1
bullettrain1433 2015-04-30 12:56:13 +08:00
zookeeper是干这个的把
|
2
RobberPhex OP @bullettrain1433 问题是,ZooKeeper和Hadoop并不好集成,如果用ZooKeeper的话,还需要自己写管理脚本。
另外,ZooKeeper还是有中心的,这个任务用无中心的比较合适吧? |
3
hahastudio 2015-04-30 13:06:33 +08:00
|
4
unionx 2015-04-30 13:20:24 +08:00
其实 Hadoop 要跟虚拟化技术一起用,才能节省硬件成本
|
5
WeberXie 2015-04-30 13:28:36 +08:00
嗯,昨天刚给集群增加节点,还是比较原始的方法。
首先Hadoop不是通过slaves文件知道节点数目,而是在各个子节点内设置namenode和resourcemanager的hostname,子节点启动后会向对应的namenode汇报。 机器需要维护或者下掉节点的话,直接暴力下掉可能会丢数据,建议先decommission。 |
6
9hills 2015-04-30 13:30:06 +08:00
直接启动子节点就行了。。那个slaves文件是启动的时候方便使用的,没人真用它来管理
|
7
gavinzgz 2015-04-30 16:15:28 +08:00
用CDH啊,直接通过Web界面添加Host然后分配角色。
如果机器需要维护的话,同样通过Web变更角色就OK了。 另外,CDH是免费的。 |