Book Image

Ceph Cookbook

Book Image

Ceph Cookbook

Overview of this book

Ceph is a unified, distributed storage system designed for excellent performance, reliability, and scalability. This cutting-edge technology has been transforming the storage industry, and is evolving rapidly as a leader in software-defined storage space, extending full support to cloud platforms such as Openstack and Cloudstack, including virtualization platforms. It is the most popular storage backend for Openstack, public, and private clouds, so is the first choice for a storage solution. Ceph is backed by RedHat and is developed by a thriving open source community of individual developers as well as several companies across the globe. This book takes you from a basic knowledge of Ceph to an expert understanding of the most advanced features, walking you through building up a production-grade Ceph storage cluster and helping you develop all the skills you need to plan, deploy, and effectively manage your Ceph cluster. Beginning with the basics, you’ll create a Ceph cluster, followed by block, object, and file storage provisioning. Next, you’ll get a step-by-step tutorial on integrating it with OpenStack and building a Dropbox-like object storage solution. We’ll also take a look at federated architecture and CephFS, and you’ll dive into Calamari and VSM for monitoring the Ceph environment. You’ll develop expert knowledge on troubleshooting and benchmarking your Ceph storage cluster. Finally, you’ll get to grips with the best practices to operate Ceph in a production environment.
Table of Contents (18 chapters)
Ceph Cookbook
Credits
Foreword
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Working with RBD snapshots


Ceph extends full support to snapshots, which are point-in-time, read-only copies of an RBD image. You can preserve the state of a Ceph RBD image by creating snapshots and restoring the snapshot to get the original data.

How to do it…

Let's see how a snapshot works with Ceph.

  1. To test the snapshot functionality of Ceph, let's create a file on the block device that we created earlier:

    # echo "Hello Ceph This is snapshot test" > /mnt/ceph-disk1/snapshot_test_file
  2. Create a snapshot for the Ceph block device:

    Syntax: rbd snap create <pool-name>/<image-name>@<snap-name>

    # rbd snap create rbd/rbd1@snapshot1 --name client.rbd
    
  3. To list the snapshots of an image, use the following:

    Syntax: rbd snap ls <pool-name>/<image-name>

    # rbd snap ls rbd/rbd1 --name client.rbd
    
  4. To test the snapshot restore functionality of Ceph RBD, let's delete files from the filesystem:

    # rm -f /mnt/ceph-disk1/*
    
  5. We will now restore the Ceph RBD snapshot to get back the...