29.3. Removing a Booth ticket
After you remove a Booth cluster ticket by using the pcs booth ticket remove command, the state of the Booth ticket remains loaded in the Cluster Information Base (CIB). This is also the case after you remove a ticket from the Booth configuration on one site and pull the Booth configuration to another site by using the pcs booth pull command. This might cause problems when you configure a ticket constraint, because a ticket constraint can be granted even after a ticket has been removed. As a consequence, the cluster might freeze or fence a node. To prevent this, you can remove a Booth ticket from the CIB with the pcs booth ticket cleanup command.
Prerequisites
- You have set up a multi-site configuration that uses the Booth ticket manager. For instructions, see Configuring multi-site clusters with Pacemaker.
The configured example uses the following arrangement:
-
Cluster 1 consists of the nodes
cluster1-node1andcluster1-node2. -
Cluster 2 consists of the nodes
cluster2-node1andcluster2-node2. -
The arbitrator node is named
arbitrator-node. -
The name of the Booth ticket that this configuration uses is
apacheticket.
-
Cluster 1 consists of the nodes
Procedure
From a cluster node in one cluster site of the Booth configuration:
Put the ticket to remove in
standbymode. The ticket that this example uses is namedapacheticket.[cluster1-node1 ~]# pcs booth ticket standby apacheticketRemove the ticket from the Booth configuration.
[cluster1-node1 ~]# pcs booth ticket remove apacheticketSynchronize the Booth configuration to all nodes in the current cluster.
[cluster1-node1 ~]# pcs booth syncRestart the Booth resource in the current cluster.
[cluster1-node1 ~]# pcs booth restartRemove the ticket from the CIB in the current cluster.
[cluster1-node1 ~]# pcs booth ticket cleanup
From a cluster node in each remaining cluster site of the Booth configuration:
Put the ticket to remove in
standbymode.[cluster2-node1 ~]# pcs booth ticket standby apacheticketDownload the Booth configuration file from a node with the updated configuration.
[cluster2-node1 ~]# pcs booth pull cluster1-node1Synchronize the Booth configuration to all nodes in the current cluster.
[cluster2-node1 ~]# pcs booth syncRestart the Booth resource in the current cluster.
[cluster2-node1 ~]# pcs booth restartRemove the ticket from the CIB in the current cluster.
[cluster2-node1 ~]# pcs booth ticket cleanup
From the arbitrator node, download the updated Booth configuration file from a node with the updated configuration:
[arbitrator-node ~]# pcs booth pull clusternode-node1
Verification
To check whether a Booth ticket was removed from the Booth configuration, run the
pcs booth configcommand on each cluster node and the arbitratror node.For example, after configuring a ticket named
apacheticketusing the procedure described in Configuring multi-site clusters with Pacemaker, the command displays the following output:[cluster1-node1 ~]# pcs booth config authfile = /etc/booth/booth.key/ site = 192.168.11.100 site = 192.168.22.100 arbitrator = 192.168.99.100 ticket = "apacheticket"After you remove the ticket from the Booth configuration, the command no longer displays
ticket= "apacheticket":[cluster1-node1 ~]# pcs booth config authfile = /etc/booth/booth.key site = 192.168.11.100 site = 192.168.22.100 arbitrator = 192.168.99.100To check whether a Booth ticket was removed from the CIB on a cluster node, use the
--query-xmloption of thecrm_ticketutility on any node in the cluster. For example, after you have configured a Booth ticket namedapacheticket, the utility displays the following output:[cluster1-node1 ~]# crm_ticket --query-xml State XML: <tickets> <ticket_state id="apacheticket" granted="true" booth-cfg-name="booth" owner="0" expires="1740986835" term="0" standby="false"/> </tickets>After you have removed the ticket from the CIB, the output no longer displays a
ticket_stateelement withid="apacheticket":[cluster1-node1 ~]# crm_ticket --query-xml State XML: <tickets/>