三节点Cassandra集群—在同一dc中配置不同机架的所有节点



我是Cassandra的新手。在我们的生产环境中,三个节点的Cassandra集群正在运行并为生产流量提供服务,但我有以下疑虑:-

1( 所有节点都配置在不同的机架中,即同一dc中的机架1、机架2和机架3。它还好吗?还是这种配置有一些缺点?

2( 除了系统表之外,我们对所有密钥空间都使用rf2和网络拓扑,这些系统表是用rf2和simplestrategy配置的。。这还好吗?还是需要改变?我们应该增加systemauth的复制因子吗。。请告诉我。。

3( 现在我想在同一dc中添加另一个节点,在不影响实时流量的情况下,最好的方法是什么?Cassandra版本是Apache Cassandra 3.11。

提前谢谢。。

ans 1(在不同的机架中安装Cassandra节点以提高可用性和容错性似乎很好。Ans 2(您必须增加system_auth上的RF,这样才能避免来自其他节点的cqlsh登录问题。Ans 3(您可以在不影响现有集群上的实时流量的情况下添加新节点。请按照以下程序操作。http://cassandra.apache.org/doc/latest/operating/topo_changes.html

Cassandra被设计为一个分布式系统Cassandra的分布式体系结构专门为多个数据中心部署量身定制。这些功能足够强大和灵活,您可以配置集群以实现最佳的地理分布,为故障转移和灾难恢复提供冗余。

多个数据中心部署非常适合全球解决方案,其中一些应用程序在一个地区运行,其他应用程序在另一个地区运营,但使用的是在跨地区的多个数据集中工作的单个Cassandra集群。

对于单区域应用程序,仍然拥有多个数据中心是首选,因为即使一个区域出现故障,它也能提供灾难恢复。

Ans 1(对于单个DC Cassandra集群,建议使用4个RF3节点。带有2个节点的机架1和带有2个结点的机架2。请记住,同一机架中的节点具有比不同机架中节点更快的网络。对于同一机架上的两个节点,与在不同机架上的所有节点的集群上进行查询相比,使用LOCAL_QUORUM进行查询将更快。

如果您不关心查询延迟,那么与两个RACK部署相比,不同机架(3个机架(中的所有节点将提供更好的灾难恢复。话虽如此,始终建议对生产集群使用多DC部署。

Ans 2(始终建议增加System_auth密钥空间的复制因子,并将复制类更改为NetworkTopologyStrategy。有关更多详细信息,请参阅本文档https://docs.datastax.com/en/security/6.0/security/secSystemKeyspace.html

Ans 3(是的,您可以在不影响流量的情况下轻松地向现有集群添加新节点。有关更多详细信息,请参阅本文档:https://docs.datastax.com/en/archived/cassandra/3.0/cassandra/operations/opsAddNodeToCluster.html

最新更新