Chapter 6. Troubleshooting OpenStack Block Storage

Cinder is the OpenStack service that provides persistent block storage for your Nova instances. Cinder block storage is like an external hard drive or USB drive for your instance, in that it can only be attached to one instance at a time. Cinder boasts a pluggable architecture, allowing OpenStack operators to leverage several backend storage plugins, for different types of storage. The supported plugins include Ceph, Sheepdog, NFS, Gluster, LVM, and others. While Cinder supports many storage drivers, we will focus on Linux Volume Manager (LVM). In this chapter, we will cover the following topics:

  • Troubleshooting Cinder processes
  • Exploring Cinder logging
  • Cinder authentication issues
  • Cinder and RabbitMQ
  • Common Cinder errors

Cinder processes

A working Cinder installation will have several processes running. Say, for example, you run the following command:

ps –aux | grep cinder

After this, you should see an output similar to the output shown here:

Cinder processes

You will note that there are several cinder-api processes, several cinder-volume processes, and a cinder-scheduler process. When troubleshooting Cinder, you want to make sure that these three processes are up and successfully running. If one of the processes isn't running for some reason, you can use the respective start commands given here on Ubuntu systems using upstart:

start cinder-api
start cinder-volume
start cinder-scheduler

If you have trouble starting any of the processes using the upstart scripts, you may want to try and start them manually, where you will be able to see any errors that are being thrown on startup. To start the process manually, use the following command:

sudo -u cinder cinder-api --config-file=/etc/cinder/cinder.conf --log-file=/var/log/cinder/cinder-api.log

sudo -u cinder cinder-scheduler --config-file=/etc/cinder/cinder.conf --log-file=/var/log/cinder/cinder-scheduler.log

sudo -u cinder cinder-volume --config-file=/etc/cinder/cinder.conf --log-file=/var/log/cinder/cinder-volume.log

It may also be helpful to double-check that the Cinder service is running correctly by executing the service-list command of Cinder:

cinder service-list

This command will output the status of the Cinder scheduler and volume service as displayed in the following screenshot:

Cinder processes

You want to pay special attention to the State column for each process and make sure that it is up. If it isn't up, you can use the preceding methods that we've outlined to attempt to get it started.

Logging

It is worth pointing out that the log files for Cinder are typically located at /var/log/cinder/. In this directory, there will be log files for the API, the volume and scheduler service of Cinder. If you have trouble getting any of the Cinder process to start, you may want to check the logs for any clues. You may find it helpful to grep the logs for errors using a command similar to the one given here:

less /var/log/cinder/volume.log | grep ERROR

This command will allow you to see all of the error lines in the volume log file. Running the command is a very quick way to locate errors in the logs and identify clues that might help you resolve the issue.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset