添加具有一个节点的数据中心以备份现有节点



我已经有一个有3个节点的工作数据中心(复制因子2(。我想添加另一个只有一个节点的数据中心,以拥有现有数据中心的所有备份数据。最终解决方案:

dc1: 3 nodes (2 rf)
dc2: 1 node (1 rf)

然后,我的应用程序将只连接到dc1节点并发送数据。如果dc1出现故障,我可以从位于不同位置的另一台物理机器上的dc2恢复数据。我也可以将dc2用于AI查询或其他任务。我是卡桑德拉配置的新手,所以我想知道我是否在思考中犯了某种错误。我计划使用此配置文档来添加新的dc:https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/operations/opsAddDCToCluster.html我还需要记住什么才能让它发挥作用,或者有一些更简单的数据备份解决方案吗?

更新:它不仅是一个备份,当dc1不可用时(例如停电(,我们也会使用第二个DC来连接应用程序。

更新:dc2正在运行,我在处理从一个dc到另一个dc的数据时遇到了一些问题,节点工具状态没有显示2个dc,但在修复了7000端口的防火墙规则后,我成功地连接了两个dc并在它们之间共享数据。

使用这种方法,您的单个节点将获得比其他节点多2倍的流量。此外,它可能会向dc1中的节点添加负载,因为当dc2中的结点不可用时,它们将需要收集提示等。如果你只需要备份,可以设置像美杜莎这样的东西,并将数据存储在廉价的环境中,比如S3,但当然,如果你丢失了整个DC,则需要时间来恢复。

但在现实中,您需要考虑您的高可用性战略——如果您失去主DC,您的客户会发生什么?等待恢复是至关重要的,还是您真的需要完全容错?我建议阅读使用DataStax和Apache Cassandra设计容错应用程序™DataStax的白皮书-它解释了设计真正容错的应用程序的细节。

最新更新