Removing an inactive cluster member by using a REST Administration API

System administrators can remove an inactive cluster member by using the Eclipse Amlen REST API POST method.

Use this command with caution. If you have a member that you no longer want to participate in the cluster, disable cluster membership by setting EnableClusterMembership to false on that member. If you have a cluster member that is inactive and cannot be restarted, then other cluster members queue the messages and retained messages until that member becomes active. Eventually, this might lead to a performance degradation. In this case you might want to permanently remove that member from the cluster by using this command. This command results in the member being permanently removed from the cluster. All messages that are queued to be sent to the inactive member are permanently deleted from the system. Outbound messages from the inactive member are also permanently deleted. For more information about disabling cluster membership, see Configuring cluster membership by using REST Administration APIs.

When a cluster member is not available for an extended period or is inactive, you can remove that cluster member from the discovery list of all active cluster members to avoid a potential impact on performance. Only use this REST API if a cluster member cannot be recovered. In all other instances, disable cluster membership on the active member that you want to remove.

You can query cluster members with a status of inactive by using Cluster monitoring.

  1. To remove an inactive cluster member, use the Eclipse Amlen REST API POST method with the following Eclipse Amlen configuration URI:

    http://<admin-endpoint-IP:Port>/ima/v1/service/remove/inactiveClusterMember

  2. Provide cluster member identification data in the payload of the POST method by using the following schema. Content-type is set to application/json. Ensure that capitalization and double quotation marks are used as shown.
    
        { 
            "ServerName": "string", 
            "ServerUID": "string"
        }

    where:

    • ServerName
      Specifies the name of the server
    • ServerUID
      Specifies the UID of the server.
      The ServerUID is a unique identifier that is assigned to a server when that server joins a cluster. If a server leaves and then re-joins a cluster, the server is assigned a new ServerUID.
      In an HA environment, the ServerUID identifies the current Primary. A Primary and Standby can have different server names, but both servers have the same ServerUID.
    Note: You must specify both the ServerName and the ServerUID. For more information about viewing ServerName and ServerUID values, see Viewing cluster information by using REST Monitoring APIs.

The following example shows a POST method in cURL to remove an inactive remote cluster member:


curl -X POST 
    -H  'Content-Type: application/json'  \
    -d '  { 
            "ServerName":"ServerA",
            "ServerUID":"mjvZxR6t" 
          }
       ' \
http://10.10.33.11:9089/ima/v1/service/remove/inactiveClusterMember

The following example shows an example of response to the POST method:


    {          
        "Version": "v1",  
        "Code": "CWLNA6011",  
        "Message": "The requested configuration change has completed successfully."
    }