2 系统要求和建议 #
下面的小节说明了系统要求以及 SUSE® Linux Enterprise High Availability Extension 的一些先决条件。此外,还提供了有关群集设置的建议。
2.1 硬件要求 #
以下列表指出了基于 SUSE® Linux Enterprise High Availability Extension 的群集的硬件要求。这些要求表示最低硬件配置。根据群集的用途,可能会需要其他硬件。
- 服务器
安装了第 2.2 节 “软件要求”中指定的软件的 1 到 32 台 Linux 服务器。
服务器可以是裸机,也可以是虚拟机。两者不要求有相同的硬件(内存、磁盘空间等),但们必须具有相同的体系结构。不支持跨平台群集。
使用
pacemaker_remote
可扩展群集使之突破 32 个节点的限制,包含更多的 Linux 服务器。- 通讯通道
每个群集节点至少有两个 TCP/IP 通讯媒体。网络设备必须支持您要用于群集通讯的通讯方式:多路广播或单路广播。通讯媒体应支持 100 Mbit/s 或更高的数据传送速度。对于受支持的群集设置,要求有两个或更多冗余通讯路径。这可通过以下方式实现:
网络设备绑定(首选)。
Corosync 中的另一个通讯通道。
有关细节,请分别参见第 13 章 “网络设备绑定”和过程 4.3 “定义冗余通讯通道”。
- 节点屏蔽/STONITH
为了避免发生“节点分裂”的情况,群集需要有节点屏蔽机制。在节点分裂的情况下,群集节点会由于硬件或软件故障或者网络连接断开而分成两个或更多互不相识的组。而屏蔽机制会隔离存在问题的节点(通常的做法是重设置该节点或关闭其电源)。这也称为 STONITH(“Shoot the other node in the head”,关闭其他节点)。节点屏蔽机制可以是物理设备(电源开关),也可以是 SBD(按磁盘 STONITH)等机制再结合检查包。使用 SBD 需要有共享存储。
除非使用了 SBD,否则高可用性群集中的每个节点都必须至少有一个 STONITH 设备。强烈建议每个节点上有多个 STONITH 设备。
重要:不支持无 STONITH 的配置您必须为群集配置节点屏蔽机制。
全局群集选项
stonith-enabled
和startup-fencing
必须设置为true
。如果您更改这些选项,将会失去支持。
2.2 软件要求 #
将加入群集的所有节点上都至少需安装以下模块和扩展:
Base System Module 15 SP2
Server Applications Module 15 SP2
SUSE Linux Enterprise High Availability Extension 15 SP2
根据您在安装期间选择的系统角色
,默认会安装以下软件模式:
系统角色 |
软件模式 (YaST/Zypper) |
---|---|
HA 节点 |
|
HA GEO 节点 |
|
通过这些系统角色安装只能完成极简安装。如有必要,您可能需要手动添加更多包。
对于原先指派了另一个系统角色的计算机,您需要手动安装 sles_ha
或 ha_geo
模式及所需的任何其他包。
2.3 储存要求 #
有些服务需要使用共享储存。如果使用外部 NFS 共享,必须能够从所有群集节点通过冗余通讯路径可靠地访问该共享。
为确保数据的高可用性,我们建议您为群集设置共享磁盘系统(储存区域网络,简称 SAN)。如果使用共享磁盘子系统,请确保符合以下要求:
根据制造商的说明正确设置共享磁盘系统并且共享磁盘系统可正确运行。
共享磁盘系统中包含的磁盘应配置为使用镜像或 RAID,来为共享磁盘系统增加容错性。
如果准备对共享磁盘系统访问使用 iSCSI,则请确保正确配置了 iSCSI 启动器和目标。
使用 DRBD* 实施在两台计算机间分发数据的镜像 RAID 系统时,请确保只访问 DRBD 提供的设备,切勿访问备份设备。要利用冗余,可以使用群集剩余组件中所用的相同 NIC。
如果使用 SBD 作为 STONITH 机制,则共享储存还需要满足其他要求。有关细节,请参见第 11.3 节 “要求”。
2.4 其他要求和建议 #
为了实现受支持且有用的高可用性设置,请考虑以下建议:
- 群集节点数
对于包含两个以上节点的群集,强烈建议使用奇数数目的群集节点,以便具有仲裁。有关仲裁的详细信息,请参见第 6.2 节 “仲裁判定”。
- 时间同步
群集节点必须同步到群集外的 NTP 服务器。自 SUSE Linux Enterprise High Availability Extension 15 起,采用 chrony 作为 NTP 的默认实施。有关详细信息,请参见 《SUSE Linux Enterprise Server 15 SP2 管理指南》。
如果节点未同步,群集可能无法正常运作。此外,日志文件和群集报告在不进行同步的情况下也很难进行分析。如果使用引导脚本,而 NTP 尚未配置,则系统会提出警告。
- 网络接口卡 (NIC) 名称
必须在所有节点上都相同。
- 主机名和 IP 地址
使用静态 IP 地址。
在
/etc/hosts
文件中列出了所有群集节点,包括其完全限定的主机名和简短主机名。群集成员必须能够按名称找到彼此。如果名称不可用,则将无法进行群集内部通讯。有关 Pacemaker 如何获取节点名称的细节,请参见 http://clusterlabs.org/doc/en-US/Pacemaker/1.1/html/Pacemaker_Explained/s-node-name.html。
- SSH
所有群集节点都必须能通过 SSH 相互访问。
crm report
(用于查错)等工具和 Hawk2 的 要求节点之间采用无口令 SSH 访问方式,否则它们只能从当前节点收集数据。注意:合规要求如果无口令 SSH 访问不符合法规要求,您可以使用附录 D “在没有
root
访问权的情况下运行群集报告”中所述的变通方法来运行crm report
。对于
,目前还没有其他方式可替代无口令登录。