Book Image

Troubleshooting OpenStack

By : Tony Campbell
Book Image

Troubleshooting OpenStack

By: Tony Campbell

Overview of this book

OpenStack is a collection of software projects that work together to provide a cloud fabric. OpenStack is one of the fastest growing open source projects in history that unlocks cloud computing for everyone. With OpenStack, you are able to create public or private clouds on your own hardware. The flexibility and control afforded by OpenStack puts the cloud within reach of anyone willing to learn this technology. Starting with an introduction to OpenStack troubleshooting tools, we’ll walk through each OpenStack service and how you can quickly diagnose, troubleshoot, and correct problems in your OpenStack. Understanding the various projects and how they interact is essential for anyone attempting to troubleshoot an OpenStack cloud. We will start by explaining each of the major components and the dependencies between them, and move on to show you how to identify and utilize an effective set of OpenStack troubleshooting tools and fix common Keystone problems. Next, we will expose you to common errors and problems you may encounter when using the OpenStack Block Storage service (Cinder). We will then examine Heat, the OpenStack Orchestration Service, where you will learn how to trace errors, determine their root cause, and effectively correct the issue. Finally, you will get to know the best practices to architect your OpenStack cloud in order to achieve optimal performance, availability, and reliability.
Table of Contents (17 chapters)
Troubleshooting OpenStack
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

RabbitMQ


RabbitMQ is the default message broker used in OpenStack installations. However, if it is installed as is out the box, it can become a single point of failure. Administrators should consider clustering RabbitMQ and activating mirrored queues.

Clustering

You can confirm whether or not your RabbitMQ installation is operating as a cluster by running the cluster status command:

rabbitmqctl cluster_status
Cluster status of node 'rabbit@tc-ost1' ...
[{nodes,[{disc,['rabbit@tc-ost1']}]},
 {running_nodes,['rabbit@tc-ost1']},
 {partitions,[]}]
...done.

In the preceding output, note that in the running_nodes section, there is only one node listed. This is an indication that we are not running clustered RabbitMQ. For details on how to cluster RabbitMQ, refer to the latest Rabbit documentation at https://www.rabbitmq.com/clustering.html.

Mirrored queues

In addition to clustering Rabbit, you should also consider using mirrored queues. OpenStack leverages RabbitMQ queues, and by default, queues in...