RobberPhex
V2EX  ›  Hadoop

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

  •  
  •   RobberPhex · Apr 30, 2015 · 8968 views
    This topic created in 4042 days ago, the information mentioned may be changed or developed.

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

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

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

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