19.3. 添加集群节点

使用以下流程向现有集群添加新节点。

这个过程添加了运行 corosync 的标准集群节点。有关将非 corosync 节点整合到集群中的详情,请参考 将非 corosync 节点整合到集群中:pacemaker_remote 服务

注意

建议您仅在生产环境维护窗口期间将节点添加到现有集群中。这可让您对新节点及其保护配置执行适当的资源和部署测试。

在本例中,现有的集群节点为 clusternode-01.example.comclusternode-02.example.comclusternode-03.example.com。新节点为 newnode.example.com

步骤

在加入到集群中的新节点上,执行以下任务。

  1. 安装集群软件包。如果集群使用 SBD、Booth 票据管理器或仲裁设备,则必须在新节点上手动安装相应的软件包(sbdbooth-sitecorosync-qdevice)。

    [root@newnode ~]# dnf install -y pcs fence-agents-all

    除了集群软件包外,还需要安装并配置在集群中运行的所有服务(已安装在现有集群节点上)。例如:如果您在红帽高可用性集群中运行 Apache HTTP 服务器,则需要在您要添加的节点中安装该服务器,以及检查服务器状态的 wget 工具。

  2. 如果您正在运行 firewalld 守护进程,请执行以下命令启用红帽高可用性附加组件所需的端口。

    # firewall-cmd --permanent --add-service=high-availability
    # firewall-cmd --add-service=high-availability
  3. 为用户 ID hacluster 设置密码。建议您为集群中的每个节点使用相同的密码。

    [root@newnode ~]# passwd hacluster
    Changing password for user hacluster.
    New password:
    Retype new password:
    passwd: all authentication tokens updated successfully.
  4. 执行以下命令启动 pcsd 服务,并在系统启动时启用 pcsd

    # systemctl start pcsd.service
    # systemctl enable pcsd.service

在现有集群中的一个节点上执行以下任务。

  1. 在新集群节点上验证用户 hacluster

    [root@clusternode-01 ~]# pcs host auth newnode.example.com
    Username: hacluster
    Password:
    newnode.example.com: Authorized
  2. 在现有集群中添加新节点。此命令还会将集群配置文件 corosync.conf 同步到集群中的所有节点上,包括您添加的新节点。

    [root@clusternode-01 ~]# pcs cluster node add newnode.example.com

在加入到集群中的新节点上,执行以下任务。

  1. 在新节点上启动并启用集群服务。

    [root@newnode ~]# pcs cluster start
    Starting Cluster...
    [root@newnode ~]# pcs cluster enable
  2. 确保您为新集群节点配置并测试隔离设备。