9.4. pacemaker_remote 服务
pacemaker_remote
服务允许没有运行 corosync
的节点集成到集群中,让群集像实际群集节点一样管理其资源。
pacemaker_remote
服务提供的功能包括:
pacemaker_remote
服务允许您在超过红帽支持 RHEL 7.7 的 32 个节点支持范围内进行扩展。pacemaker_remote
服务允许您将虚拟环境作为集群资源进行管理,还可作为集群资源管理虚拟环境中的单个服务。
以下术语用于描述
pacemaker_remote
服务:
- 群集节点 - 运行高可用性服务(
pacemaker 和
corosync
)的节点。 - 远程节点 - 运行
pacemaker_remote 的节点
,用于远程集成到集群中,无需corosync
群集成员资格。远程节点被配置为使用ocf:pacemaker:remote
资源代理的集群资源。 - 客户机节点 - 运行
pacemaker_remote
服务的虚拟客户机节点。虚拟客体资源由集群管理,它由集群启动,并作为远程节点集成到集群中。 - pacemaker_remote - 在一个可以在 Pacemaker 集群环境中的远程节点和客户机节点(KVM 和 LXC)内执行远程应用程序管理的服务守护进程。这个服务是 Pacemaker 的本地资源管理守护进程(LRMD)的改进版本,它可以在没有运行 corosync 的节点上远程管理资源。
- LXC - 由
libvirt-lxc
Linux 容器驱动程序定义的 Linux 容器。
运行
pacemaker_remote 服务的
Pacemaker 集群具有以下特征:
- 远程节点和客户机节点运行
pacemaker_remote
服务(虚拟机上不需要的配置)。 - 在群集节点上运行的群集堆栈(
pacemaker
和corosync
)连接到远程节点上的pacemaker_remote
服务,允许它们集成到群集中。 - 在群集节点上运行的群集堆栈(
pacemaker 和
corosync
)可启动客户机节点,并立即连接到客户机节点上的pacemaker_remote
服务,允许它们集成到群集中。
集群节点与集群节点管理的远程和客户机节点之间的关键区别在于远程和客户机节点没有运行集群堆栈。这意味着远程和虚拟机节点有以下限制:
- 它们不会在仲裁里进行
- 它们不执行隔离设备操作
- 他们没有有资格成为集群的指定控制器(DC)
- 它们本身不运行完整的 pcs 命令
另外,远程节点和客户机节点不与与集群堆栈关联的可扩展性限制绑定。
除这些限制外,远程和客户机节点的行为与集群节点在资源管理方面的行为类似,且远程和虚拟机节点本身也可被保护。集群完全能够在每个远程和客户机节点上管理和监控资源:您可以针对它们构建限制,将它们置于待机状态,或使用 pcs 命令在群集节点上执行任何其他操作。远程和虚拟机节点如集群节点一样显示在集群状态输出中。
9.4.1. 主机和客户机身份验证
集群节点与 pacemaker_remote 之间的连接是使用传输层安全(TLS)进行安全保护,使用预共享密钥(PSK)加密和验证 TCP(默认使用端口 3121)进行验证。这意味着集群节点和运行
pacemaker_remote 的节点
必须共享相同的私钥。默认情况下,此密钥必须放在集群节点和远程节点上的 /etc/pacemaker/authkey
中。
从红帽企业 Linux 7.4 开始,pcs cluster node add-guest 命令为客户机节点设置
authkey
,而 pcs cluster node add-remote 命令可为远程节点设置 authkey
。