多节点数据中心的重启序列

i7uq4tfw  于 2021-06-15  发布在  Cassandra
关注(0)|答案(1)|浏览(371)

我们使用的是cassandra版本:3.11.2,我们有两个数据中心a和b,每个都有3个节点,而我提到的种子是cassandra.yml中所有6个节点的第一个ip dc a和一个ip dc b。
现在要维护在dc b节点上的补丁,我们需要停止dc b节点上的cassandra并重新启动它。。
我的困惑是:
重启dc-b是否影响dc-a节点及其数据复制?
重启疑虑:
我只能在dc b节点上停止并重新启动(从种子节点开始,然后是非种子节点)。这是正确的重新启动方法吗?或
由于种子节点来自两个dc,在对dc b进行维护之后,是否需要停止两个dc上的所有节点(从种子节点开始)?
我是在考虑节点故障或数据丢失的情况下提出这些问题的。。
请建议。

wj8zmpe1

wj8zmpe11#

如果你有 hinted_handoff_enabled 已启用(默认情况下),并且您的维护在 max_hint_window_in_ms 时间范围(3小时),然后在 DC B 数据将从中的节点流式传输 DC A ,所以最终您可以将所有数据 DC B 也。为了确保,可以在所有节点都返回后执行修复。
关于重启:
最好在中启动种子节点 DC B 首先,但您需要确保 DC A 在那一刻是在线的;
在重启一个dc之前,不需要停止集群中的所有节点;
DC B 你甚至可以一个接一个地修补你的节点,然后分别重新启动它们,但这可能取决于你在做什么样的修补,比如,是cassandra升级还是类似的。在这种情况下,您可能需要禁用修复等。

相关问题