使用 DataStax 生命周期管理器升级 cassandra

Posted

技术标签:

【中文标题】使用 DataStax 生命周期管理器升级 cassandra【英文标题】:upgrading cassandra with DataStax Lifecycle manager 【发布时间】:2018-08-04 20:37:29 【问题描述】:

DataStax Opscenter LifeCycle Manager 似乎只有一个选项来运行“安装”作业。从语言上看,似乎只是提供新节点。

能否使用 LifeCycle Manager 将现有(托管)集群升级到 Datastax 企业版的较新版本?

【问题讨论】:

【参考方案1】:

Edit 2018-05 OpsCenter 6.5.0 已发布,并在补丁版本之间升级 DSE 的过程中提供帮助...也就是从 DSE 5.0.3 升级到 5.0.6。文档和https://docs.datastax.com/en/opscenter/6.5/opsc/LCM/opscLCMjobsOverview.html 和https://docs.datastax.com/en/opscenter/6.5/opsc/LCM/upgradeDSEjob.html。

DataStax 工程师,我在 Lifecycle Manager 工作。目前 LCM 无法帮助您升级节点,虽然我无法分享有关未来路线图和未发布功能的信息,但我可以说我们知道客户希望使用 LCM 进行升级,我们同意这将是一项有价值的功能。

从 OpsCenter 6.1.x 开始,您必须手动升级节点,然后更新 LCM 配置以匹配新版本。从那时起,您可以在升级后的集群中使用 LCM 进行安装/配置作业。这不是详细的操作方法,而是大致的:

    查看升级指南,了解需要做什么:https://docs.datastax.com/en/upgrade/doc/upgrade/datastax_enterprise/upgrdDSE.html 在 LCM 之外手动执行升级。请注意,如果您使用 apt 来管理软件包,并且没有升级可用的最新版本,则在升级到“旧”时,您必须使用一个非常庞大的 apt-command 来解决 apt 中的依赖关系解析版本。生成的命令将类似于:apt-get install -y -qq -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold dse-pig=5.0.11-1 dse-libhadoop2-client=5.0.11-1 dse-libspark=5.0.11-1 dse-libhadoop-native=5.0.11-1 dse-libmahout=5.0.11-1 dse-hive=5.0.11-1 dse-libpig=5.0.11-1 dse-libsolr=5.0.11-1 dse-libgraph=5.0.11-1 dse-libtomcat=5.0.11-1 dse-libhadoop=5.0.11-1 dse-libhive=5.0.11-1 dse-full=5.0.11-1 dse-libcassandra=5.0.11-1 dse=5.0.11-1 dse-libsqoop=5.0.11-1 dse-libhadoop2-client-native=5.0.11-1 dse-liblog4j=5.0.11-1 手动升级完成后,您将暂时处于 LCM 作业无法成功运行的位置,因为安装的 DSE 版本与 LCM 配置部署的 DSE 版本不匹配。此时 LCM 作业将因 DSE 版本不匹配错误而失败。要解决此问题,请继续... 使用新 DSE 版本将您的配置文件(与旧 dse 版本相关联)克隆到新 C​​P。如果您正在进行补丁升级,这将非常简单。如果您通过 API 进行重大升级,则需要非常小心地删除 DSE 不再支持的配置参数。 编辑您的集群模型,以便集群以及任何定义了 CP 的数据中心或节点将您新克隆的 CP 用于当前 datastax 版本,而不是旧 cp 用于旧 datastax 版本。此时,您可以使 LCM 与您的集群重新同步。您可以继续运行安装/配置作业。

这不是一个简单的过程,但可以在 LCM 之外升级您的集群,然后将 lcm 与新配置同步,这样您就可以从那里继续管理它。如前所述,我们了解这不是一个简单的过程,并且了解本地提供 LCM 升级具有重要价值。

【讨论】:

LCM 的唯一好处是它可以从 ui 部署更新的配置吗? 没有。它自动安装 Java 和 JCE 策略。它自动生成和分发节点到节点和客户端到节点加密的证书。它自动进行集群注册和与 OpsCenter 的集成,以实现简单的/GUI 指标备份和修复。它通过与代理、自定义下载位置和 apt/yum 镜像集成来简化离线环境中的部署。它处理大量粗糙的边缘,例如我之前提到的 apt-command-line。它整理了一堆最佳实践,以防止您遇到不必要的问题。 它还为 DSE 参数提供了现有最全面的 API,涵盖了所有非 eol DSE 版本以及每个版本的几乎所有文档化参数,并且与 Ansible 和 Chef 不同的是,它不需要客户维护 config-每个 DSE 版本的文件模板。它不处理这个用例,现在。它确实处理了许多其他用例,并且涵盖的案例数量随着每个版本的发布而增加。所有这些都包含在我们的文档docs.datastax.com/en/opscenter/6.1/opsc/LCM/opscLCM.html > 它处理大量粗糙的边缘,就像我之前提到的 apt-command-line 一样。

以上是关于使用 DataStax 生命周期管理器升级 cassandra的主要内容,如果未能解决你的问题,请参考以下文章

com.datastax.oss -> java-driver-core 和 com.datastax.cassandra -> cassandra-driver-core 之间的 Cas

管理我无法控制的流程的生命周期

Laravel的生命周期

008-运维管理链码

简述供应链系统商品全生命周期管理价值,助力家用电器行业实现商品管理数字化

[IoC容器Unity]第二回:Lifetime Managers生命周期