我有一个安装了Hadoop的EC2映像。但是,我将它设置为在实例化时无角色(它不是奴隶或主人)。为了启动Hadoop集群,我在EC2上启动了我需要的尽可能多的实例(节点),然后我必须对每个节点执行以下3项操作:
我希望能够找到一种自动执行此操作的方法,以便对于任意数量的节点,我不必进入并在每个节点上设置所有这些设置。
其他人如何处理自动设置Hadoop群集的问题?有没有办法自动化网络部分?
我不确定这是可能的,因为IP地址每次都会有所不同,但我想知道其他人尝试了什么或者常用的是什么。是否有一种自动化这些过程的好方法,所以每次我设置一个集群进行测试时,我都不必为每个节点做这些事情?我不太了解Linux脚本,这可能是脚本吗?或者我只需要手动配置每个节点吗?
答案 0 :(得分:0)
我没有使用Hadoop的经验,但总的来说,您所拥有的任务称为“配置管理”。通常,您会编写一些“receipes”并为服务器定义“角色”(主,从)。这样的角色可能包含服务,待安装软件包,主机名更改,SSH密钥等的配置文件。服务器最初启动后,您可以告诉它们应该是哪个角色,它们将自动安装。
这些任务有不同的工具,例如Puppet或Salt。有comparison available at Wikipedia。
答案 1 :(得分:-1)
我正在寻找是否存在这样的实用程序,但却找不到。
所以我为" Hadoop配置自动化"构建了一个自动化实用程序。使用蟒蛇,盐和织物。
准备好hadoop集群需要做很多步骤。
做所有这些事情说4个节点需要1个小时。对于我想要做的工作,我需要反复进行这些工作,因此需要大量节点,因此需要自动化。
对于需要在每个节点中执行的步骤(例如:jdk install,hadoop package install等),我使用salt进行配置管理。 Salt提供类似木偶和厨师的能力。
请随时查看 https://github.com/varmarakesh/aws-hadoop
如果您已经拥有一个aws帐户,它的设计便于设置和运行。