Chapter 3. Storing and Retrieving Data and Images using Glance, Cinder, and Swift

This chapter introduces the storage services of OpenStack. There are three major services whose names we have already seen in the title of this chapter. Now, you must be wondering why we would need three different services.

We will cover the following topics in this chapter:

  • Image storage – Glance
  • Block storage – Cinder
  • Object storage – Swift
  • Troubleshooting steps specific to Swift

Introducing storage services

Object storage or binary large object (BLOB) storage is in some form like a file server. This kind of storage is needed when the requirement is to place files to be retrieved later. Each of these files is considered as an object, and you really don't care about the disk or the filesystem in which it is stored at the backend. A good example of object storage would be Dropbox, Google Drive, or a public cloud AWS, the S3.

Block storage, on the other hand, can be considered as an independent disk drive. We can choose what filesystem goes into it, and we can access this by volume rather than by file name.

Image storage is used more for special cases. It is a service that uses BLOB storage or sometimes even its own filesystem to store and retrieve virtual machine images such as AMI in the case of AWS or template in the case of VMware virtualization.

Another popular open source storage solution is Ceph. It provides three major services to various cloud platforms, namely the Ceph Object Store, the Ceph Block Device, and the filesystem. It competes with the OpenStack services that will be discussed in this chapter, and you may even choose to use Ceph with OpenStack infusing the KVM/QEMU hypervisors.

There are some advantages of using Ceph Block Storage (RBD – RADOS Block Device) over Cinder, as it is based on Reliable Autonomic Distributed Object Store (RADOS) and stripes the data across the entire storage cluster providing us with better IOPS and reliability. However, the integration with Ceph and its architecture are beyond the journey that we about to embark on, so let's continue with the three OpenStack services.

The only mandatory service among the three is Glance, which can serve images from its local filesystem and few other options, such as AWS S3 and Swift. Even though Glance is the only mandatory storage service, if we don't have Cinder and Swift services, we will not be able to provide block storage to our VMs and BLOB storage to our users. In order to keep it simple, we will have Glance configured for local storage and switch to swift or others as and when required.

Let's start with Glance. We will be using both the controller node and the storage node for this chapter. So, ensure that you have the storage node installed with two network cards, as shown in Chapter 1, An Introduction to OpenStack. Also ensure that you have added the Juno repository.

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

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