4.12. 高可用性和集群
对于新创建的集群,resource-stickiness
资源 meta-attribute 现在默认为 1 而不是 0。
在以前的版本中,resource-stickiness
资源 meta-attribute 的默认值对于新创建的集群具有默认值 0。这个 meta-attribute 现在默认为 1。
如果粘性为 0,集群可以根据需要移动资源,以便在节点间平衡资源。这可能会导致资源在不相关的资源启动或停止时移动。对于正的粘性,资源更倾向于保持原处,只有在其他情况超出粘性时才会移动。这可能会导致新添加的节点在没有管理员干预的情况下无法获取分配给它们的任何资源。这两种方法都有潜在的意外行为,但大多数用户更喜欢使用某种粘性。此 meta-attribute 的默认值已更改为 1 以反映这种首选项。
只有新创建的集群会受到这个更改的影响,因此现有集群的行为不会更改。优先选择其集群的旧行为的用户可以从资源默认值中删除 resource-stickiness
条目。
(BZ#1850145)
新的 LVM 卷组标志来控制自动激活
LVM 卷组现在支持 setautoactivation
标记,它控制在启动时是否自动激活您从卷组中创建逻辑卷。当创建一个由 Pacemaker 在集群中管理的卷组时,使用 vgcreate --setautoactivation n
命令将这个标志设置为 n
,以便卷组防止可能的数据崩溃。如果您在 Pacemaker 集群中使用现有卷组,请使用 vgchange --setautoactivation n
设置标志。
新的 pcs resource status display 命令
pcs resource status
和 pcs stonith status
命令现在支持以下选项:
-
您可以使用
pcs resource status node=node_id
命令显示在特定节点上配置的资源状态,以及pcs stonith status node=node_id
命令。您可以使用这些命令显示集群和远程节点上的资源状态。 -
您可以使用
pcs resource statusresource_id
和pcs stonith status resource_id
命令显示单个资源的状态。 -
您可以使用
pcs resource status tag_id
和pcs stonith status tag_id
命令显示所有资源的状态。
(BZ#1290830, BZ#1285269)
针对 pcs resource secure-disable
命令的新减少输出显示选项
pcs resource safe-disable
和 pcs resource disable --safe
命令在错误报告后打印一个非常长的模拟结果。现在,您可以为这些命令指定 --brief
选项,以只打印错误信息。现在,错误报告总是包含受影响资源的资源 ID。
新的 pcs
命令更新 SCSI 隔离设备而不重启所有其他资源
使用 pcs stonith update
命令更新 SCSI 隔离设备会导致重启运行于 stonith 资源所在的同一节点上运行的所有资源。新的 pcs stonith update-scsi-devices
命令允许您在不重启其他群集资源的情况下更新 SCSI 设备。
在集群节点子集中为隔离配置 watchdog-only SBD
在以前的版本中,要使用仅限 watchdog 的 SBD 配置,集群中的所有节点都必须使用 SBD。这会阻止在一个集群中使用 SBD,有些节点支持它,但其他节点(通常是远程节点)需要某种其他形式的隔离。用户现在可以使用新的 fence_watchdog
代理配置仅限 watchdog 的 SBD 设置,允许集群配置,其中只有 watchdog-only SBD 进行隔离类型,其他节点使用其他隔离类型。集群只能有一个这样的设备,它必须命名为 watchdog
。
内部错误的详细 Pacemaker 状态显示
如果由于某种原因,Pacemaker 无法执行资源或隔离代理,例如没有安装代理,或者有一个内部超时,Pacemaker 状态现在会显示内部错误的详细退出原因。
(BZ#1470834)
pcmk_delay_base
参数现在可以为不同的节点使用不同的值
在配置隔离设备时,您现在可以使用 pcmk_delay_base 参数
为不同的节点指定不同的值。这允许在双节点集群中使用单个隔离设备,每个节点有不同的延迟。这有助于防止每个节点同时尝试隔离其他节点的情况。要为不同的节点指定不同的值,您可以使用与 pcmk_host_map 类似的语法将主机名映射为该节点的延迟值。例如,在隔离 node1 时,node1:0;node2:10s 将不会使用延迟,在隔离 node2 时,会有 10 秒的延迟 。
支持 pcmk_host_map
值中的特殊字符
pcmk_host_map
属性现在在值前面使用反斜杠(\)来支持 pcmk_host_map
值中的特殊字符。例如,您可以指定 pcmk_host_map="node3:plug\ 1"
,来在主机别名中包含一个空格。
OpenShift 的新隔离代理
fence_kubevirt
隔离代理现在可用于 Red Hat OpenShift Virtualization 上的 RHEL 高可用性。有关 fence_kubevirt
代理的详情,请查看 fence_kubevirt
(8)手册页。
现在完全支持 pcs cluster setup
命令的本地模式版本
默认情况下, pcs cluster setup
命令会自动将所有配置文件与集群节点同步。pcs cluster setup
命令现在完全支持 --corosync-conf
选项。指定这个选项可将命令切换到 本地
模式。在这个模式中,pcs
命令行界面会创建一个 corosync.conf
文件,并将其只保存到本地节点的指定文件中,而无需与其它节点通信。这可让您在脚本中创建 corosync.conf
文件,并使用脚本处理该文件。
自动删除位置约束以下资源移动
当您执行 pcs resource move
命令时,这会为资源添加一个约束,以防止其在当前运行的节点上运行。默认情况下,在资源被移动后,命令创建的位置约束会被自动删除。这不一定将资源重新移到原始节点 ; 此时可以在哪里运行这些资源取决于您最初配置的资源。如果您要移动资源并保留生成的约束,请使用 pcs resource move-with-contraint
命令。
pcs
支持 OCF Resource Agent API 1.1 标准
pcs
命令行界面现在支持 OCF 1.1 资源和 STONITH 代理。作为此支持的实施的一部分,任何代理的元数据都必须符合 OCF 模式,代理是否为 OCF 1.0 还是 OCF 1.1 代理。如果代理的元数据不符合 OCF 架构,pcs
会考虑代理无效,除非指定了 --force
选项,否则不会创建或更新代理的资源。pcsd
Web UI 和 pcs
命令用于列出代理,现在从列表中省略带有无效元数据的代理。
pcs 现在接受 Promoted
和 Unpromoted
作为角色名称
pcs
命令行界面现在接受 Promoted
和 Unpromoted
anywhere 角色,在 Pacemaker 配置中指定。这些角色名称是与之前的 RHEL 版本中 Master
和 Slave
Pacemaker 角色的功能,它们是在配置显示和帮助页面中可见的角色名称。
pcsd
Web UI 更新版本
pcsd
Web UI(用于创建和配置 Pacemaker/Corosync 集群的图形用户界面)已更新。更新的 Web UI 提供改进的用户体验以及通过其他红帽 Web 应用程序中使用的 PatternFly 框架构建的标准化接口。
(BZ#1996067)