【问题标题】:Are there any "gotchas" in deploying a Cassandra cluster to a set of Linode VPS instances?将 Cassandra 集群部署到一组 Linode VPS 实例是否有任何“陷阱”?
【发布时间】:2011-01-18 11:39:22
【问题描述】:

我正在学习 Apache Cassandra 数据库 [原文如此]。

在将 Cassandra 部署到像 Linode 或 Slicehost 产品这样的专用硬件上时,是否有人有任何好的/坏的经验?

我认为 Cassandra 将是一种轻松扩展 Web 服务以满足读/写/请求负载的好方法……只需将另一个运行 Cassandra 节点的 Linode 添加到现有集群即可。是的,这意味着在同一个 VPS 上运行公共 Web 服务和 Cassandra 节点(许多人可以例外)。

类似 Linode 的 Cassandra 部署的优点:

  • 专用 VLAN; Cassandra 节点可以私下通信
  • 用于配置新 Linode 的 API(并可能使用安装 Cassandra 及其依赖项等的“StackScript”对其进行配置)
  • 价格合适

缺点:

  • 每个主机都是一个VPS,当然不是专用的
  • 一旦您决定要 4GB RAM(参见 SoftLayer 专用),RAM/成本比就不是很好了
  • 我想只有 1 个磁盘,其中一个更喜欢 2 个磁盘(1 个用于提交日志,另一个磁盘用于数据文件本身)。可能没有实际意义,因为无论如何这是共享硬件。

编辑:发现这有点帮助:http://wiki.apache.org/cassandra/CassandraHardware

我看到 1GB 是最低要求,但这是建议吗?例如,我可以使用 Linode 720 进行部署(比如 500 MB 可用于 Cassandra)吗?见http://www.linode.com/

【问题讨论】:

    标签: database nosql cassandra vps linode


    【解决方案1】:

    您需要多少内存实际上取决于您的工作量:如果您以写入为主,您可以少用一些内存,否则您将需要内存用于读取缓存。

    在我的雇主 rackspace cloud:http://www.rackspacecloud.com/cloud_hosting_products/servers/pricing,您确实可以为您获得更多的内存。 (我们的机器也有 RAID 磁盘,因此人们通常会看到比 EC2 更好的 i/o 性能。不知道关于 linode。)

    由于对于大多数 VPS,您为下一个大小的实例支付大约 2 倍的费用,即与添加第二个小型实例大致相同,我建议使用更少、更大的实例而不是更多、更小的实例,因为在少量网络中开销不可忽略。

    我确实知道有人在 256MB 的虚拟机上使用 Cassandra,但如果你使用这么小的虚拟机,你肯定是少数。

    【讨论】:

    • 感谢您的信息。这就是我所希望的。我的应用程序的写入量很大,而且大多数时候,其他关心经常写入数据的用户将进行长轮询或等效,并将被推送数据。因此,读取次数将最少。如果我走 quorum-writes 路线,我想我应该总是为我的 Cassandra 集群提供奇数个实例,是吗?
    • quorum 是复制因子的函数,而不是总节点数。因此,您的最小节点数 (=RF) 将是奇数,但不会超过这个数。
    • 哦,好的。一个例子。我的集群中可以有 1000 个节点,但复制因子为 5。法定人数为 5/2+1=3。因此,只要成功联系/写入/等 3 个节点,那么所有节点都被认为是成功的?
    猜你喜欢
    • 2013-04-15
    • 2015-05-02
    • 1970-01-01
    • 2011-01-13
    • 1970-01-01
    • 2015-08-15
    • 1970-01-01
    • 2010-09-14
    • 2019-04-17
    相关资源
    最近更新 更多