V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
RobberPhex
V2EX  ›  Hadoop

Hadoop 如何才能动态扩容?(或者伸缩)

  •  
  •   RobberPhex · 2015-04-30 12:50:49 +08:00 · 8078 次点击
    这是一个创建于 3474 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Hadoop部署的时候,在通过slaves文件知道节点数目。但是如果需要扩展集群,比如从6台扩充成8台,应该怎么处理?(现在看来,最好的办法是更新slaves,然后再运行hadoop balancer)
    那有没有现成的管理软件来完成这些事情?(比如我添加机器之后,自动处理这些事情)

    另外,万一一台机器需要维护,怎么才能通知集群,进行切换。虽然直接取下维护也是可以的,但是风险比较大。

    8 条回复    2015-05-01 11:45:40 +08:00
    bullettrain1433
        1
    bullettrain1433  
       2015-04-30 12:56:13 +08:00
    zookeeper是干这个的把
    RobberPhex
        2
    RobberPhex  
    OP
       2015-04-30 13:04:16 +08:00
    @bullettrain1433 问题是,ZooKeeper和Hadoop并不好集成,如果用ZooKeeper的话,还需要自己写管理脚本。

    另外,ZooKeeper还是有中心的,这个任务用无中心的比较合适吧?
    hahastudio
        3
    hahastudio  
       2015-04-30 13:06:33 +08:00
    unionx
        4
    unionx  
       2015-04-30 13:20:24 +08:00
    其实 Hadoop 要跟虚拟化技术一起用,才能节省硬件成本
    WeberXie
        5
    WeberXie  
       2015-04-30 13:28:36 +08:00
    嗯,昨天刚给集群增加节点,还是比较原始的方法。
    首先Hadoop不是通过slaves文件知道节点数目,而是在各个子节点内设置namenode和resourcemanager的hostname,子节点启动后会向对应的namenode汇报。
    机器需要维护或者下掉节点的话,直接暴力下掉可能会丢数据,建议先decommission。
    9hills
        6
    9hills  
       2015-04-30 13:30:06 +08:00
    直接启动子节点就行了。。那个slaves文件是启动的时候方便使用的,没人真用它来管理
    gavinzgz
        7
    gavinzgz  
       2015-04-30 16:15:28 +08:00
    用CDH啊,直接通过Web界面添加Host然后分配角色。
    如果机器需要维护的话,同样通过Web变更角色就OK了。
    另外,CDH是免费的。
    knktc
        8
    knktc  
       2015-05-01 11:45:40 +08:00
    @gavinzgz 一直用CDH,非常不错的免费工具。用了CDH之后,扩容按不了几次鼠标,CDH甚至在自动感知你挂载上的硬盘,默认配置就用得很爽了。
    但是对于动态的扩容,我觉得只能自己写脚本来完成了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2769 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 15:21 · PVG 23:21 · LAX 08:21 · JFK 11:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.