我正准备将节点从 3.11.17 升级到 4.1.7。我已经手动成功完成了一些开发节点的升级,但我想使用 Ansible 使此过程更具可重复性。我在 Ubuntu 服务器上运行,因此我必须与 apt 自动启动服务作斗争。想知道在不让 apt 向我抛出默认文件并可能弄乱东西的情况下,进行这些升级的最正统流程是什么。我的想法是:
- 排空并停止一个节点
- 我必需的 cassandra.yaml 和 rack 属性文件中的模板
- 安装 Cassandra 4.1.7
- 应对 apt 自动启动 cassandra
这是否意味着灾难?我的数据不在来自软件包维护者的配置的默认路径 (/var/lib/cassandra) 中,并且我的一些配置变量在 4.1 中不再存在,所以我预计 Cassandra 会在启动时崩溃,并看到无法识别的变量(我在开发测试中遇到过)。我真正想要的是安装 Cassandra 并在开始之前仔细检查一下,但我没有这种奢侈。在多次测试中,成功安装后立即停止 Cassandra 不起作用,Cassandra 会继续存在。