HA 群集的主要目的是管理用户服务。Apache Web 服务器或数据库便是一种典型的用户服务。从用户角度来看,服务就是在客户的要求下执行某些操作。但对群集来说,服务只是可以启动或停止的资源,其本质与群集无关。
在本章中,我们将介绍一些配置资源和管理群集时需要了解的基本概念。以下章节介绍如何使用 High Availability Extension 提供的每种管理工具执行主配置和管理任务。
要配置和管理群集资源,可使用基于 Web 的用户界面 HA Web Konsole (Hawk) 或 crm 外壳 (crmsh) 命令行实用程序。
Hawk 还可用于从非 Linux 计算机监视和管理 Linux 群集。另外,如果系统仅提供很小的图形用户界面,它也会是个理想的解决方案。
本章介绍了 Hawk,并包含配置和管理群集资源的基本任务:修改全局群集选项、创建基本和高级类型的资源(组和克隆)、配置约束、指定故障转移节点和故障回复节点、配置资源监视以及手动启动、清理、删除和迁移资源。为了对群集状态进行详细分析,Hawk 会生成一个群集报告 (hb_report)。可以查看群集历史记录或使用模拟器浏览可能的失败方案。
要配置和管理群集资源,可以使用 crm 外壳 (crmsh) 命令行实用程序,或者基于 Web 的用户界面 HA Web Konsole (Hawk)。
本章介绍了命令行工具 crm,并包含此工具的概述以及如何使用模板,主要介绍如何配置和管理群集资源:创建基本和高级类型的资源(组和克隆资源)、配置约束、指定故障转移节点和故障回复节点、配置资源监视以及手动启动、清理、删除和迁移资源。
需由群集管理的所有任务都必须可用作资源。在此处需要考虑两个主要组:资源代理和 STONITH 代理。对于这两个类别,您都可以添加自己的代理,根据需要扩展群集的功能。
屏蔽在 HA(高可用性)计算机群集中是一个非常重要的概念。群集有时会检测到某个节点行为异常,需要删除此节点。这称为屏蔽,通常使用 STONITH 资源实现。屏蔽可以定义为一种使 HA 群集具有已知状态的方法。
群集中的每个资源均带有状态。例如:“资源 r1 已在 alice 上启动”。在 HA 群集中,这种状态暗示了“资源 r1 在除 alice 外的所有节点上都处于停止状态”,因为群集必须确保每个资源只能在一个节点上启动。每个节点都必须报告资源发生的每个更改。这样群集状态就是资源状态和节点状态的集合。
当节点或资源的状态无法十分肯定地确立时,将进行屏蔽。即使在群集未感知到给定节点上发生的事件时,屏蔽也可确保此节点不会运行任何重要资源。
crm 外壳 (crmsh) 或 Hawk 等群集管理工具可由 root 用户或 haclient 组内的任何用户使用。默认情况下,这些用户具有完全读/写访问权。要限制访问权或指派更加细化的访问权限,可以使用访问控制列表 (ACL)。
访问控制列表由一组有序的访问规则构成。每个规则针对一部分群集配置赋予用户读取或写入访问权限,或拒绝其访问。规则通常会组合在一起产生特定角色,然后可以为用户指派与其任务匹配的角色。
对于许多系统,需要实施高于典型以太网设备的标准数据安全性或可用性要求的网络连接。在这些情况下,可以将多个以太网设备聚合到单个绑定设备。
在负载平衡的情况下,服务器群集对于外部客户端而言就如同是一台大型的快速服务器。这种看上去像是单台服务器的服务器被称为虚拟服务器。它包括一个或多个用于调度进来的请求的负载平衡器,以及若干台运行实际服务的真实服务器。完成 High Availability Extension 的负载平衡设置后,您就可以构建高度可缩放且高度可用的网络服务,例如 Web、超速缓存、邮件、FTP、媒体和 VoIP 服务。
除本地群集和城域群集外,SUSE® Linux Enterprise High Availability Extension 12 还支持地理位置分散的群集(地域群集,有时也称为多站点群集)。这意味着,每个本地群集可以有多个地域分散的站点。这些群集之间的故障转移由更高级的实体、所谓的 booth 进行协调。对地域群集的支持是作为 Geo Clustering for SUSE Linux Enterprise High Availability Extension 的一个独立扩展提供。有关如何使用和设置地域群集的细节,请参见《Quick Start Geo Clustering for SUSE Linux Enterprise High Availability Extension》(Geo Clustering for SUSE Linux Enterprise High Availability Extension 快速入门)。可以从 http://www.suse.com/documentation/ 或者所安装系统的 /usr/share/doc/manual/sle-ha-geo-manuals_en/ 下找到该文档。