Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

8.2.2. Come aggiungere un nodo al cluster

Per aggiungere un nodo al cluster aggiornare la configurazione del cluster, diffondere la configurazione aggiornata al nodo da aggiungere ed avviare il software sul nodo. A tale scopo eseguire le fasi di seguito riportate:
  1. Su qualsiasi nodo nel cluster modificare /etc/cluster/cluster.conf in modo da aggiungere una sezione clusternode per il nodo che deve essere aggiunto. Per esempio, in Esempio 8.2, «Configurazione cluster a due nodi», se node-03.example.com deve essere aggiunto, allora aggiungere la sezione clusternode per quel nodo. Se con l'aggiunta di un nodo (o nodi) il cluster passerà da due a tre o più nodi, rimuovere i seguenti attributi cman da /etc/cluster/cluster.conf:
    • cman two_node="1"
    • expected_votes="1"
    Consultate Sezione 8.2.3, «Esempi di configurazione a due e tre nodi» per un confronto tra una configurazione a tre nodi ed una a due nodi.
  2. Aggiornare l'attributo config_version aumentando il proprio valore (per esempio, modificandolo da config_version="2" a config_version="3">).
  3. Salvare /etc/cluster/cluster.conf.
  4. (Opzionale) Convalidare il file aggiornato con lo schema del cluster (cluster.rng) eseguendo il comando ccs_config_validate. Per esempio:
    [root@example-01 ~]# ccs_config_validate 
    Configuration validates
    
  5. Eseguire il comando cman_tool version -r per diffondere la configurazione al resto dei nodi del cluster.
  6. Verificare che il file di configurazione aggiornato è stato diffuso.
  7. Diffondere il file di configurazione aggiornato su /etc/cluster/ in ogni nodo da aggiungere al cluster. Per esempio usare il comando scp per inviare il file di configurazione aggiornato ad ogni nodo da aggiungere al cluster.
  8. Se contando i nodi il cluster è passato da due ad un numero di nodi maggiore allora sarà necessario riavviare il software del cluster nel modo seguente:
    1. Su ogni nodo arrestate il software del cluster consultando Sezione 8.1.2, «Arresto del software del cluster». Per esempio:
      [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. Su ogni nodo avviate il software del cluster consultando Sezione 8.1.1, «Avvio del software del cluster». Per esempio:
      [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. Ad ogni nodo da aggiungere al cluster avviare il software del cluster in base alla Sezione 8.1.1, «Avvio del software del cluster». Per esempio:
    [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. Usando l'utilità clustat, verificare che ogni nodo aggiunto sia parte del cluster ed in esecuzione: Per esempio:
    [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
    
    Per informazioni sull'uso di clustat consultare Sezione 8.3, «Gestione servizi ad elevata disponibilità».
    Usare altresì cman_tool status per verificare il conteggio del quorum ed i voti ed il conteggio dei nodi. Per esempio:
    [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. Su qualsiasi nodo usare l'utilità clusvcadm per riposizionare o migrare un servizio in esecuzione su un nuovo nodo del cluster. Sarà altresì possibile abilitare o disabilitare qualsiasi servizio. Per informazioni sull'uso di clusvcadm consultare la Sezione 8.3, «Gestione servizi ad elevata disponibilità»