升级HA集群中的PacMaker和Corosync软件包
按照以下步骤升级HA集群中的PacMaker和Corosync软件包。
概述
升级PacMaker和Corosync可确保集群受益于新功能、安全修补程序和性能改进。
升级方法
建议使用两种方法升级集群:滚动升级或完全关闭集群。每种方法都有自己的优缺点。升级过程可能因您的PacMaker版本而异。请参见ClusterLabs"升级PacMaker集群"文档以确定使用哪种方法。在执行升级方法之前、请验证:
-
NetApp BeeGFS解决方案支持新的PacMaker和Corosync软件包。
-
您的BeeGFS文件系统和PacMaker集群配置具有有效的备份。
-
集群处于运行状况良好的状态。
滚动升级
此方法包括从集群中删除每个节点、对其进行升级、然后将其重新引入集群、直到所有节点都运行新版本为止。这种方法可以使集群保持正常运行、这是大型HA集群的理想选择、但会带来在此过程中运行混合版本的风险。在双节点集群中应避免使用此方法。
-
确认集群处于最佳状态、每个BeeGFS服务都在其首选节点上运行。有关详细信息、请参见 "检查集群的状态" 。
-
对于要升级的节点、请将其置于备用模式以耗尽(或移动)所有BeeGFS服务:
pcs node standby <HOSTNAME>
-
运行以下命令、验证节点的服务是否已耗尽:
pcs status
确保未将备用节点上的服务报告为
Started
。根据您的集群大小、服务可能需要几秒钟或几分钟才能移至姊妹节点。如果BeeGFS服务无法在姊妹节点上启动,请参阅"故障排除指南"。 -
关闭节点上的集群:
pcs cluster stop <HOSTNAME>
-
升级节点上的PacMaker、Corosync和pcs软件包:
软件包管理器命令因操作系统而异。以下命令适用于运行RHEL 8及更高版本的系统。 dnf update pacemaker-<version>
dnf update corosync-<version>
dnf update pcs-<version>
-
在节点上启动PacMaker集群服务:
pcs cluster start <HOSTNAME>
-
如果 `pcs`软件包已更新、请向集群重新对节点进行身份验证:
pcs host auth <HOSTNAME>
-
使用工具验证PacMaker配置是否仍然有效
crm_verify
。在集群升级期间、只需验证一次即可。 crm_verify -L -V
-
使节点退出待机状态:
pcs node unstandby <HOSTNAME>
-
将所有BeeGFS服务重新定位回其首选节点:
pcs resource relocate run
-
对集群中的每个节点重复上述步骤、直到所有节点都运行所需的PacMaker、Corosync和pcs版本为止。
-
最后、运行 `pcs status`并验证集群是否运行正常、并 `Current DC`报告所需的PacMaker版本。
如果 `Current DC`报告"mxy-version"、则表示集群中的某个节点仍在运行先前的Pacemker版本、需要进行升级。如果任何升级后的节点无法重新加入集群或资源无法启动、请查看集群日志、并参阅PacMaker发行说明或用户指南以了解已知的升级问题。
完全关闭集群
在这种方法中、所有集群节点和资源都会关闭、节点会升级、然后集群会重新启动。如果PacMaker和Corosync版本不支持混合版本配置、则必须使用此方法。
-
确认集群处于最佳状态、每个BeeGFS服务都在其首选节点上运行。有关详细信息、请参见 "检查集群的状态" 。
-
关闭所有节点上的集群软件(PacMaker和Corosync)。
根据集群大小、整个集群可能需要几秒钟或几分钟才能停止。 pcs cluster stop --all
-
关闭所有节点上的集群服务后、根据您的要求升级每个节点上的PacMaker、Corosync和pcs软件包。
软件包管理器命令因操作系统而异。以下命令适用于运行RHEL 8及更高版本的系统。 dnf update pacemaker-<version>
dnf update corosync-<version>
dnf update pcs-<version>
-
升级所有节点后、在所有节点上启动集群软件:
pcs cluster start --all
-
如果 `pcs`软件包已更新、请重新对集群中的每个节点进行身份验证:
pcs host auth <HOSTNAME>
-
最后、运行 `pcs status`并验证集群是否运行正常、并报告正确的 `Current DC`PacMaker版本。
如果 `Current DC`报告"mxy-version"、则表示集群中的某个节点仍在运行先前的Pacemker版本、需要进行升级。