【发布时间】:2010-12-23 22:05:27
【问题描述】:
我可以在没有弹性 IP 地址的 EC2 实例上使用 cassandra 吗?我相信在这种情况下,任何出现故障的实例都会产生问题。
如果我为 cassandra 节点使用弹性 IP 地址,我必须对它们进行配置,以便它们使用公共 IP 地址进行内部通信(八卦等)。但这会增加网络延迟。
请建议我应该如何配置我的节点以使问题最小化。
【问题讨论】:
标签: cassandra
我可以在没有弹性 IP 地址的 EC2 实例上使用 cassandra 吗?我相信在这种情况下,任何出现故障的实例都会产生问题。
如果我为 cassandra 节点使用弹性 IP 地址,我必须对它们进行配置,以便它们使用公共 IP 地址进行内部通信(八卦等)。但这会增加网络延迟。
请建议我应该如何配置我的节点以使问题最小化。
【问题讨论】:
标签: cassandra
我的回答是,改用 Rackspace 云服务器,因为您可以获得更好的 i/o 性能以及公共和内部 IP。
但是社区中有几个人在使用 EC2;如果您坚持,我会在 cassandra-user 列表中询问。 :)
【讨论】:
很多人(包括我在内)在 Amazon 的 EC2 上使用 cassandra 没有问题。由于内部 IP 地址很容易随意更改,您只需要使用您的内部 EC2 DNS 名称(而不是您的公共 IP 地址或公共 DNS 名称,因为这既是一个安全漏洞,亚马逊也会向您收取所有费用) Cassandra 流量)。
这确实意味着,如果您的 Cassandra 节点因任何原因出现故障,那么您将丢失该节点上的数据(除非您使用速度较慢的持久存储),但这可以通过增加复制因子轻松解决(我们使用 RF=3)
【讨论】:
我们使用的 VPN 解决方案与 EC2 和 Cassandra 配合得非常好,这使我们能够不使用弹性 IP。可以在此处找到有关它的一些信息。
现在,此选项并不适合所有人,但允许我们缓解 EC2 节点更改 IP 地址且不必使用弹性 IP 的问题。我们还发现,使用 Amazon 接口(内部/外部)NOT 可以提高性能。不要问我为什么......我对他们的架构了解得不够多,无法解释它——除非它确实如此!
此外,它允许我们很好地利用@jbellis 提出的建议来使用 RackSpace。我们有一个混合的供应商设置......这样我们就可以利用 EC2、RackSpace 和我们自己的内部托管节点。与供应商/服务提供商无关对我来说非常重要......
【讨论】: