2015-02-12 120 views
0

我已经在Amazon的ec2主机上使用Hortonworks/Ambari安装了单节点haodoop集群。如何在ec2上重新启动单节点hadoop集群

由于我不希望该群集24/7全天候运行,因此我会在完成时停止实例。当我稍后重新启动实例时,我得到一个新的IP地址,然后ambari不再能够启动Hadoop相关服务。

除了完全重新部署以重新配置集群以便服务启动之外,还有其他方法吗?

它看起来像IP地址住在/ etc下,在postgres数据库表ambari和可能还没有找到的其他地方的各种xml文件中。

我试图更新XML文件和postgres数据库更新版本的IP地址,内部和外部DNS名称,因为我可以找到他们,但无济于事。我无法重新启动服务。

我这样做的原因是每次重新启动主机时都可能在hdfs和其他项目特定设置上保存部署时间和数据配置。

有什么建议吗?

谢谢!

+0

没有Hortonworks/Ambari的任何知识 - 您可以将您的实例与弹性IP相关联。弹性IP不会更改,即使在关闭时也与该实例关联。另外,如果您需要访问AWS网络内部的服务,则可以使用私有IP。它也不会改变。 – 2015-02-12 05:27:21

回答

0

弹性IP可以使用。另外,由于您提到它是单个节点群集,因此您可以使用本地主机或专用IP。

如果您使用弹性IP,您的用户界面将始终在同一个公共IP上。但是,如果您使用私有IP或本地主机,并且不将您的实例与弹性IP相关联,则每次启动实例时都必须查找公共IP,然后使用IP连接到Web UI。

0

感谢您的帮助,哈曼和TJ都是正确的。我没有使用过弹性IP,因为我可能有不止一个正在运行,而且至少现在,我不介意查找公共IP地址。

哈曼在首次设置ambari时将“localhost”作为fqdn的建议在回顾过程中是一个非常好的主意。除非我再次通过整个设置,否则这对我来说是桥下的水,但我向可能阅读本文的其他人推荐。

就我而言,在我回到页面之前,我自己想到了这一点。我所采取的具体步骤毕竟非常简单,多亏了Occam的剃刀。

我加在/ etc/hosts中的以下行: <new internal IP> <old internal dns name> ,然后做 ambari-server restart。从命令行。然后,我可以在登录ambari后重新启动所有服务。

+0

甚至比我之前关于/ etc/hosts的建议还要结合我说的,用哈曼关于localhost的建议: 我在/ etc/hosts中添加了以下行:127.0.0.1 <旧的内部dns名称> 似乎我不需要在ambari服务器上重新启动。 这样做的好处是,当我启动新的单节点群集时,每次获取新的内部IP地址时都不必编辑/ etc/hosts。 – user2242514 2015-02-19 23:56:08

相关问题