26.10. 使用仲裁设备(RHEL 8.8 及更新版本)配置一个高可用性集群
要使用 ha_cluster
系统角色,使用单独的仲裁设备配置一个高可用性集群,首先要设置仲裁设备。设置仲裁设备后,您可以在任意数量的集群中使用该设备。
26.10.1. 配置仲裁设备
要使用 ha_cluster
系统角色配置仲裁设备,请按照以下步骤操作。请注意,您不能在集群节点上运行仲裁设备。
先决条件
ansible-core
和rhel-system-roles
软件包已安装在您要运行 playbook 的节点上。注意您不需要在集群成员节点上安装
ansible-core
。- 您要用来运行仲裁设备的系统有涵盖 RHEL 和 RHEL High Availability 附加组件的有效订阅。
ha_cluster
系统角色替换指定节点上的任何现有集群配置。没有在角色中指定的任何设置都将丢失。
流程
创建一个 playbook 文件,如
qdev-playbook.yml
。注意为生产环境创建 playbook 文件时,vault 会加密密码,如在 使用 Ansible Vault 加密内容 中所述。
以下示例 playbook 文件在运行
firewalld
和selinux
服务的系统上配置一个仲裁设备。- hosts: nodeQ vars: ha_cluster_cluster_present: false ha_cluster_hacluster_password: password ha_cluster_manage_firewall: true ha_cluster_manage_selinux: true ha_cluster_qnetd: present: true roles: - linux-system-roles.ha_cluster
- 保存该文件。
运行 playbook,为仲裁设备指定主机节点。
# ansible-playbook -i nodeQ, qdev-playbook.yml
26.10.2. 配置一个集群以使用仲裁设备
要将集群配置为使用仲裁设备,请按照以下步骤操作。
先决条件
您已在要运行 playbook 的节点上安装了
ansible-core
。注意您不需要在集群成员节点上安装
ansible-core
。-
您已在要运行 playbook 的系统上安装了
rhel-system-roles
软件包。 - 作为集群成员运行的系统必须拥有对 RHEL 和 RHEL 高可用性附加组件的有效订阅。
- 您已配置了一个仲裁设备。
ha_cluster
系统角色替换指定节点上的任何现有集群配置。没有在角色中指定的任何设置都将丢失。
流程
- 创建一个指定集群中节点的清单文件,如在 为 ha_cluster 系统角色指定一个清单 中所述。
创建一个 playbook 文件,如
new-cluster.yml
。注意为生产环境创建 playbook 文件时,vault 会加密密码,如在 使用 Ansible Vault 加密内容 中所述。
以下示例 playbook 文件配置一个运行
firewalld
和selinux
服务的集群,该集群使用一个仲裁设备。- hosts: node1 node2 vars: ha_cluster_cluster_name: my-new-cluster ha_cluster_hacluster_password: password ha_cluster_manage_firewall: true ha_cluster_manage_selinux: true ha_cluster_quorum: device: model: net model_options: - name: host value: nodeQ - name: algorithm value: lms roles: - linux-system-roles.ha_cluster
- 保存该文件。
运行 playbook,指定在第 1 步中创建的清单文件清单的路径。
# ansible-playbook -i inventory new-cluster.yml