
本章介绍两种不同方案:将群集升级为 SUSE Linux Enterprise High Availability Extension 的另一个版本(主要版本或服务包),以及更新群集节点上的单个包。
下面介绍本章中使用的最重要术语的定义:
SUSE Linux Enterprise(或任何软件产品)的主要版本是一个新版本,其中会引入一些新功能和工具,去除之前弃用的组件,并进行一些不向后兼容的更改。
将几个增补程序合并到便于安装或部署的一个组织体中。服务包是有编号的并通常包含安全性修复、更新、升级或程序增强。
安装包的更新次要版本。
安装包或分发包的更新主要版本,引入新功能。
至于支持哪种升级路径以及如何执行升级,取决于运行群集的当前产品版本,以及您要迁移到的目标版本。有关一般信息,请参见《SUSE Linux Enterprise Server 12 部署指南》中的“更新 SUSE Linux Enterprise”一章。可通过 http://www.suse.com/documentation/ 获得。
要成功升级到 SUSE Linux Enterprise High Availability Extension 12,您的群集需要运行最新版本的 SUSE Linux Enterprise Server 和 SUSE Linux Enterprise High Availability Extension (11 SP3)。如果您的群集仍然基于较旧的产品版本,请先升级到 SUSE Linux Enterprise Server 和 SUSE Linux Enterprise High Availability Extension 11 SP3。可以在《SUSE Linux Enterprise High Availability Extension 11 管理指南》的“将群集升级到最新产品版本”中找到相关信息。可通过 http://www.suse.com/documentation/ 获得。
由于 High Availability Extension 12 的各个组件(例如 /etc/corosync/corosync.conf,以及 OCFS2 的磁盘格式)已发生重大更改,此方案不支持执行滚动升级。必须将所有群集节点脱机,并根据过程 D.1, “将群集升级到 SLE HA 12”中所述迁移整个群集。不支持在 SUSE Linux Enterprise High Availability Extension 11/SUSE Linux Enterprise High Availability Extension 12 上运行混合群集。
确保系统备份为最新的且可恢复。
请先在群集设置的临时实例上测试升级过程,然后再在生产环境中执行该过程。
这样,您便可以估算出维护期所需的时间段。这还有助于检测和解决可能会出现的任何意外问题。
针对每个群集节点执行以下步骤:
登录到每个群集节点,并使用以下命令停止群集堆栈:
root # rcopenais stop对于每个群集节点,执行从 SUSE Linux Enterprise Server 11 SP3 到 SUSE Linux Enterprise Server 12 的升级,以及从 SUSE Linux Enterprise High Availability Extension 11 SP3 到 SUSE Linux Enterprise High Availability Extension 12 的升级。如果您要使用地域群集,请根据《Geo Clustering for SUSE Linux Enterprise High Availability Extension Quick Start》(Geo Clustering for SUSE Linux Enterprise High Availability Extension 快速入门)中所述安装相应的外接式附件产品。有关如何升级产品的信息,请参见《SUSE Linux Enterprise Server 12 部署指南》中的“更新 SUSE Linux Enterprise”一章。可通过 http://www.suse.com/documentation/ 获得。
完成升级过程后,重引导装有 SUSE Linux Enterprise Server 12 和 SUSE Linux Enterprise High Availability Extension 12 的每个节点。
如果在群集设置中使用了 OCFS2,请执行以下命令以更新设备上的结构:
root # tunefs.ocfs2 --update-cluster-stack PATH_TO_DEVICE该命令会向磁盘添加附加的参数,SUSE Linux Enterprise High Availability Extension 12 随附的 OCFS2 更新版本需要这些参数。
要更新 Corosync 2 的 /etc/corosync/corosync.conf,请执行以下操作:
登录到某个节点,然后启动 YaST 群集模块。
切换到类别并输入以下新参数的值:和。有关细节,请参见过程 3.5, “定义第一个通讯通道”。
如果 YaST 检测到对 Corosync 2 无效或缺失的任何其他选项,它会提示您进行更改。
确认在 YaST 中所做的更改以更新 /etc/corosync/corosync.conf。
如果为群集配置了 Csync2,请使用以下命令将更新的 Corosync 配置推送到其他群集节点:
root #csync2-xv
有关 Csync2 的细节,请参见第 3.5.4 节 “将配置传送到所有节点”。
或者,也可以通过将 /etc/corosync/corosync.conf 手动复制到所有群集节点,来同步更新的 Corosync 配置。
登录到每个节点,并使用以下命令启动群集堆栈:
root # systemctl start pacemaker.service 使用 crm status 或 Hawk 检查群集状态。
如果存在现有的地域群集设置而想要升级它以运行 High Availability Extension 12 和 Geo Clustering for SUSE Linux Enterprise High Availability Extension 12,请参见《Quick Start for Geo Clustering for SUSE Linux Enterprise High Availability Extension》(Geo Clustering for SUSE Linux Enterprise High Availability Extension 快速入门)中的附加说明。可通过 http://www.suse.com/documentation/ 获得。参见“从 SLE HA 11 SP3 升级到 SLE HA 12”一节。
完成到产品版本 12 的升级过程后,不支持再还原到产品版本 11。
在节点上安装任何包更新之前,请先确认以下问题:
这种更新是否会影响属于 SUSE Linux Enterprise High Availability Extension 或 Geo Clustering for SUSE Linux Enterprise High Availability Extension 外接式附件的任何包?如果是,请先在节点上停止群集堆栈,然后再开始软件更新。
root # systemctl stop pacemaker.service包更新操作是否需要重引导计算机?如果是,请先在节点上停止群集堆栈,然后再开始软件更新:
root # systemctl stop pacemaker.service如果不属于上述任何一种情况,则不需要停止群集堆栈。在这种情况下,请将群集置于维护模式,然后开始软件更新:
root #crmconfigure property maintenance-mode=true
有关维护模式的更多细节,请参见第 4.7 节 “维护模式”。
如果在软件更新期间,群集资源管理器所在节点处于活动状态,可能会导致不可预料的结果,例如活动的节点被屏蔽。
成功安装更新后,请解除群集的维护模式:
root #crmconfigure property maintenance-mode=true
或者使用以下命令在相应节点上重启动群集堆栈:
root # systemctl start pacemaker.service关您要升级到的产品的任何更改和新功能的详细信息,请参见其发行说明,所在网址为 https://www.suse.com/releasenotes/。