AMQP Troubleshooting

Agent Bootstrapping Communication Failure 

If you experience issues during the Management Agent bootstrapping process where the agent is unable to communicate with the AMQP server (or even fails to establish a connection), then perform the following procedure:

  1. Login to the Worker VM and verify if the Rabbit IP and Port (which you can find in /usr/local/agentlite/config/config.json or in agent.log) are accessible from the Worker VM by issuing the following command.

    telnet <RABBIT_IP> <PORT>
  2. If accessible, then verify if the queue/exchange was created by locating the name of the bootstrap response queue.

    $AGENT_HOME/.bootstrapResponseQueue
  3. Login to the web console of your RabbitMQ broker (your system administrator can provide the username and credentials). See https://developers.coveo.com/display/public/SitecoreV3/Accessing+the+RabbitMQ+Management+Console for additional context. The following example, uses the default settings in a CloudCenter environment.

    http://<RABBIT_IP>:15672/ 
    #Username = cliqr
    #Password = cliqr (verify the changed password with your administrator)
  4. If the RabbitMQ broker web console does not open, then follow these steps to login to the RabbitMQ broker:

    1. If RabbitMQ is on a cloud that supports firewall/security groups, then open ingress Port 15672.

    2. Login to the RabbitMQ server, and run the following commands.

      iptables -I INPUT 1 -p tcp --dport 15672 -j ACCEPT
      
      firewall-cmd --zone=public --add-port=15672/tcp -permanent
      
      firewall-cmd --reload
  5. Verify the Exchanges tab to ensure that the following exchanges exist.

    cliqr.worker.gateway.reply.exchange
    cliqr.gateway.exchange
    cliqr.vendor.exchange.<ID>
  6. Click each exchange to view the queues bound to that exchange. See https://www.rabbitmq.com/tutorials/amqp-concepts.html to understand terminology in this context.

  7. Verify the Queues Tab to ensure that the bootstrap response queue (see Step 2) is created.

CLI Command

The rabbitmqctl CLI command provides the same information that is available in the UI. See https://www.rabbitmq.com/rabbitmqctl.8.html for additional context.

Here are some sample commands :

  • List queues for the CloudCenter VHost :

    rabbitmqctl list_queues -p /cliqr
  • List exchanges for the CloudCenter VHost:

    rabbitmqctl list_exchanges -p /cliqr


  • No labels
© 2017-2019 Cisco Systems, Inc. All rights reserved