8.2.2. 在集群中添加节点


在集群中添加节点包括更新集群配置;在要添加的节点中使用更新的配置;以及在该节点中启动集群软件。要在集群中添加节点,请执行以下步骤:
  1. 在集群的任意节点中编辑 /etc/cluster/cluster.conf,为要添加的节点添加 clusternode 部分。例如:在 例 8.2 “双节点配置” 中,如果要添加 node-03.example.com,则请为该节点添加 clusternode 部分。如果添加节点导致群集从双节点变为三个或者三个以上节点,请从 /etc/cluster/cluster.conf 中删除 cman 属性:
    • cman two_node="1"
    • expected_votes="1"
    有关三节点配置和双节点配置对比请参考 第 8.2.3 节 “三节点和双节点配置示例”
  2. 增加 config_version 属性参数即可更新该参数(例如:从 config_version="2" 改为 config_version="3">)。
  3. 保存 /etc/cluster/cluster.conf
  4. (可选),运行 ccs_config_validate 命令,验证根据集群方案(cluster.rng)更新的文件。例如:
    [root@example-01 ~]# ccs_config_validate 
    Configuration validates
    
  5. 运行 cman_tool version -r 命令在其他集群节点中推广该配置。
  6. 确认推广了更新的文件。
  7. 在每个要添加到集群的节点的 /etc/cluster/ 中使用更新的配置文件。例如:scp 命令会将更新的配置文件发送到要添加到集群的每个节点中。
  8. 如果节点计数由 2 变为大于 2,则您必须在现有集群节点中重启集群软件,如下:
    1. 在每个节点中如 第 8.1.2 节 “停止集群软件” 所述停止集群软件。例如:
      [root@example-01 ~]# service rgmanager stop
      Stopping Cluster Service Manager:                          [  OK  ]
      [root@example-01 ~]# service gfs2 stop
      Unmounting GFS2 filesystem (/mnt/gfsA):                    [  OK  ]
      Unmounting GFS2 filesystem (/mnt/gfsB):                    [  OK  ]
      [root@example-01 ~]# service clvmd stop
      Signaling clvmd to exit                                    [  OK  ]
      clvmd terminated                                           [  OK  ]
      [root@example-01 ~]# service cman stop
      Stopping cluster: 
         Leaving fence domain...                                 [  OK  ]
         Stopping gfs_controld...                                [  OK  ]
         Stopping dlm_controld...                                [  OK  ]
         Stopping fenced...                                      [  OK  ]
         Stopping cman...                                        [  OK  ]
         Waiting for corosync to shutdown:                       [  OK  ]
         Unloading kernel modules...                             [  OK  ]
         Unmounting configfs...                                  [  OK  ]
      [root@example-01 ~]#
      
    2. 在每个节点中如 第 8.1.1 节 “启动集群软件” 所述启动集群软件。例如:
      [root@example-01 ~]# service cman start
      Starting cluster: 
         Checking Network Manager...                             [  OK  ]
         Global setup...                                         [  OK  ]
         Loading kernel modules...                               [  OK  ]
         Mounting configfs...                                    [  OK  ]
         Starting cman...                                        [  OK  ]
         Waiting for quorum...                                   [  OK  ]
         Starting fenced...                                      [  OK  ]
         Starting dlm_controld...                                [  OK  ]
         Starting gfs_controld...                                [  OK  ]
         Unfencing self...                                       [  OK  ]
         Joining fence domain...                                 [  OK  ]
      [root@example-01 ~]# service clvmd start
      Starting clvmd:                                            [  OK  ]
      Activating VG(s):   2 logical volume(s) in volume group "vg_example" now active
                                                                 [  OK  ]
      [root@example-01 ~]# service gfs2 start
      Mounting GFS2 filesystem (/mnt/gfsA):                      [  OK  ]
      Mounting GFS2 filesystem (/mnt/gfsB):                      [  OK  ]
      [root@example-01 ~]# service rgmanager start
      Starting Cluster Service Manager:                          [  OK  ]
      [root@example-01 ~]#
      
  9. 在每个要添加到集群的节点中如 第 8.1.1 节 “启动集群软件” 所述启动集群软件。例如:
    [root@example-01 ~]# service cman start
    Starting cluster: 
       Checking Network Manager...                             [  OK  ]
       Global setup...                                         [  OK  ]
       Loading kernel modules...                               [  OK  ]
       Mounting configfs...                                    [  OK  ]
       Starting cman...                                        [  OK  ]
       Waiting for quorum...                                   [  OK  ]
       Starting fenced...                                      [  OK  ]
       Starting dlm_controld...                                [  OK  ]
       Starting gfs_controld...                                [  OK  ]
       Unfencing self...                                       [  OK  ]
       Joining fence domain...                                 [  OK  ]
    [root@example-01 ~]# service clvmd start
    Starting clvmd:                                            [  OK  ]
    Activating VG(s):   2 logical volume(s) in volume group "vg_example" now active
                                                               [  OK  ]
    [root@example-01 ~]# service gfs2 start
    Mounting GFS2 filesystem (/mnt/gfsA):                      [  OK  ]
    Mounting GFS2 filesystem (/mnt/gfsB):                      [  OK  ]
    
    [root@example-01 ~]# service rgmanager start
    Starting Cluster Service Manager:                          [  OK  ]
    [root@example-01 ~]#
    
  10. 在任意节点中使用 clustat 程序确认每个添加的节点正作为集群的一部分运行。例如:
    [root@example-01 ~]#clustat
    Cluster Status for mycluster @ Wed Nov 17 05:40:00 2010
    Member Status: Quorate
    
     Member Name                             ID   Status
     ------ ----                             ---- ------
     node-03.example.com                         3 Online, rgmanager
     node-02.example.com                         2 Online, rgmanager
     node-01.example.com                         1 Online, Local, rgmanager
    
     Service Name                   Owner (Last)                   State         
     ------- ----                   ----- ------                   -----           
     service:example_apache         node-01.example.com            started       
     service:example_apache2        (none)                         disabled
    
    有关使用 clustat 的详情请参考 第 8.3 节 “管理高可用性服务”
    另外,您可以使用 cman_tool status 确认节点投票、节点计数以及仲裁计数。例如:
    [root@example-01 ~]#cman_tool status
    Version: 6.2.0
    Config Version: 19
    Cluster Name: mycluster 
    Cluster Id: 3794
    Cluster Member: Yes
    Cluster Generation: 548
    Membership state: Cluster-Member
    Nodes: 3
    Expected votes: 3
    Total votes: 3
    Node votes: 1
    Quorum: 2  
    Active subsystems: 9
    Flags: 
    Ports Bound: 0 11 177  
    Node name: node-01.example.com
    Node ID: 3
    Multicast addresses: 239.192.14.224 
    Node addresses: 10.15.90.58
    
  11. 在任意节点中您可以使用 clusvcadm 程序将运行中的服务重新定位或者迁移到新添加的节点中。另外,您可以启用所有禁用的服务。有关使用 clusvcadm 详情请参考 第 8.3 节 “管理高可用性服务”
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.