Adding or removing Qpid nodes

Edge for Private Cloud v4.18.05

This document describes how to add and remove a Qpid server in an existing Edge installation.

Add a Qpid server

To add a Qpid server:

  1. On the Management Server, determine the name of the analytics and consumer groups.

    Many of the commands below require that information. By default, the name of the analytics group is axgroup-001, and the name of the consumer group is consumer-group-001. In the silent config file for a region, you can set the name of the analytics group by using the AXGROUP property.

    If you are unsure of the names of the analytics and consumer groups, use the following command to display them:

    apigee-adminapi.sh analytics groups list --admin adminEmail --pwd adminPword --host localhost

    This command returns the analytics group name in the name field, and the consumer group name in the consumer-groups field.

  2. Install the Edge apigee-setup utility on the node using the internet or non internet procedure as described in Install the Edge apigee-setup utility.
  3. Use apigee-setup.sh to install Qpid on the node:
    /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile

    The "-p qs" option specifies to install Qpid. See Install Edge components on a node for information on creating a configFile.

    When the installation completes, the script displays the UUID of the Qpid server. If you need to determine the UUID later, use the following cURL command on the host where you installed Qpid:

    curl http://qpid_IP:8083/v1/servers/self
  4. Add Qpid to the analytics group:
    curl -u adminEmail:pword -H "Content-Type: application/json"
      -X POST "http://ms_IP:8080/v1/analytics/groups/ax/AX_GROUP/servers?uuid=QPID_UUID&type=qpid-server"

    In the output, you see the UUID of the Qpid node added to the qpid-server property under axgroup-001:

    {
      "name" : "axgroup-001",
      "properties" : {},
      "scopes" : [ "VALIDATE~test", "sgilson~prod" ],
      "uuids" : {
        "qpid-server" : [
          "d6d0480f-8393-465d-a2a1-b4a16a033c55",
          "8398a95c-3640-4bd9-bf7e-1eb89155810a"
        ]
      }
    }
  5. Add Qpid to the consumer group:
    curl -u adminEmail:pword -H "Content-Type: application/json"
      -X POST "http://ms_IP:8080/v1/analytics/groups/ax/AX_GROUP/consumer-groups/CONSUMER_GROUP/consumers?uuid=QPID_UUID"

    In the output, you see the UUID of the Qpid node added to the consumer-groups property under consumer-group-001:

    "consumer-groups" : [ {
      "name" : "consumer-group-001",
      "consumers" : [
        "d6d0480f-8393-465d-a2a1-b4a16a033c55",
        "8398a95c-3640-4bd9-bf7e-1eb89155810a"
      ]
    } ]
  6. Restart all edge-qpid-server components on all nodes to make sure the change is picked up by those components:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server wait_for_ready

The installation is complete.

Remove a Qpid server

To remove a Qpid node:

  1. On the Management Server, determine the name of the analytics and consumer groups. Many of the commands below require that information.

    By default, the name of the analytics group is axgroup-001, and the name of the consumer group is consumer-group-001. In the silent config file for a region, you can set the name of the analytics group by using the AXGROUP property.

    If you are unsure of the names of the analytics and consumer groups, use the following command to display them:

    apigee-adminapi.sh analytics groups list --admin adminEmail --pwd adminPword --host localhost

    This command returns the analytics group name in the name field, and the consumer group name in the consumer-groups field.

  2. Remove Qpid from the consumer group:
    curl -u adminEmail:pword -H "Content-Type: application/json"
      -X DELETE "http://ms_IP:8080/v1/analytics/groups/ax/AX_GROUP/consumer-groups/CONSUMER_GROUP/consumers/QPID_UUID"
  3. Remove Qpid from the analytics group:
    curl -v -u adminEmail:pword
      -X DELETE "http://ms_IP:8080/v1/analytics/groups/ax/AX_GROUP/servers?uuid=QPID_UUID&type=qpid-server"
  4. Deregister the Qpid server from the Edge installation:
    curl -u adminEmail:pword
      -X POST http://ms_IP:8080/v1/servers -d "type=qpid-server&region=dc-1&pod=central&uuid=QPID_UUID&action=remove"
  5. Remove the Qpid server from the Edge installation:
    curl -u adminEmail:pword -X DELETE http://ms_IP:8080/v1/servers/QPID_UUID
  6. Restart all edge-qpid-server components on all nodes to make sure the change is picked up by those components:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server wait_for_ready
  7. Uninstall Qpid as described at Uninstalling Edge.