Block Storage

This document describes details of configuring Block Storage as a persistent storage option in Private Cloud Director.

What is Block Storage

Block storage enables persistent block storage volumes, and is one of the most important and popular storage options in Private Cloud Director . Block storage service provides VMs with block storage volumes that persist even when the VMs they are attached to are deleted.

Advantages of block storage:

  • If a virtual machine gets deleted, all the data on the block storage volumes remains intact. The volumes can be re-attached to a new VM.
  • If a hypervisor node crashes, you can relaunch the VMs on surviving hypervisors and attach block storage volumes to those VMs with the data intact.
  • You can resize and extend a block storage volume if you need to grow the capacity of a disk being used by a VM.
  • Block storage is compatible with VM live migration, in that data volumes get moved as needed when doing a VM migration.
  • You can leverage specific enterprise storage features such as thin-provisioning, tiering, Quality of Service, etc. when using block storage service.
  • A block storage volume can be used as the boot disk for a virtual machine; in that scenario, an ephemeral disk is not required.

How to Choose

This storage option is chosen for a virtual machine when you:

  1. Boot a VM from a New Volume The VM root disk is created using block storage volume on the block storage backend configured for the virtualized cluster.
  2. Boot a VM from an Existing Volume A new VM is launched using a pre-existing block storage volume.
  3. Attach volumes to an existing VM: A block storage volume is attached to an existing virtual machine as an additional / data disk.

Using Linux LVM for Block Storage

You can use linux LVM as the storage option for your block storage requirements, where you will designate a subset of your hypervisor nodes as block storage nodes. Each block storage node will then serve block volumes to virtual machines using local storage available to it. Behind the scenes this mechanism uses the Logical Volume Manager (LVM) component included as part of linux to manage locally attached storage.

While this may work for some use cases, it's major limitation is the lack of redundancy. The block storage nodes act as independent “storage arrays” that do not share data between each other. If a block storage node fails, all volumes exported by that node, as well as the data on it, become unavailable.

Although you can create and use LVM based block storage in your Private Cloud Director setup, Private Cloud Director does not support using LVM based block storage for production environments. Platform9 support team is unable to assist with issues when using LVM based block storage for a virtualized cluster. We highly recommend using Enterprise Block Storage for production environments.

Private Cloud Director does not support using LVM based block storage for production environments. Platform9 support team is unable to assist with issues when using LVM based block storage for a virtualized cluster. We highly recommend using Enterprise Block Storage for production environments.

Using Enterprise Block Storage

This is the only supported option for using storage volumes in production environments. Platform9 Private Cloud Director integrates with a wide variety of enterprise storage solutions and exposes their native capabilities such as dynamic volume resizing, QoS, replication, etc.

Here's a list of commonly used and Supported storage drivers. Also see supported vendor matrix below for a full list.

Supported Vendors

Private cloud director uses OpenStack Cinder behind the scenes to serve block storage, and supports all certified Cinder-compatible block storage devices.

Refer here for the list of supported block storage vendor drivers. Click on the link specific to the driver for your specific enterprise storage in order to get details about what storage specific configuration is supported. In the document you will find out more details about the supported the key value pair metadata for your specific storage.

Supported Capabilities Matrix

Refer to this matrix for the exact list of capabilities supported by your storage vendor:

Supported Storage Drivers & Capabilities Matrix

Block Storage Configuration

As part of configuring your cluster blueprint, you get to define one or more volume types that the clusters will utilize.

Follow the steps in Configure Block Storage as part of Cluster Blueprint to configure storage for your blueprint.

Volumes, Volume Types and Volume Snapshots

Block storage is consumed in Private Cloud Director in the form of one or more storage volumes. Read Volume for detailed info around configuring and using volumes, volume types and volume snapshots.

Debugging Block Storage Service Problems

If your Private Cloud Director Service Health dashboard is reporting that the block storage service is unhealthy, this likely means:

  1. One or more hosts assigned with Block Storage role may be offline or unavailable
  2. The hosts with Block Storage role assigned may be online but the service components may be offline or experiencing error connecting to or working with your specific storage backend.

Refer to the block storage service Log Files to debug the issues further.

Log Files

  • The log file that corresponds to all block storage attach / detach operations is located at /var/log/pf9/cindervolume-base.log.This file contains information about:

    • Storage backend driver used
    • Whether the Block Storage Service could connect to the storage backend being used
    • Any errors when creating volumes, copying volumes, , attaching/detaching volumes to virtual machines
  • Also look at the compute service log file /var/log/pf9/ostackhost.log file for further details when debugging any issues related to volume attachment to virtual machines.

Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard
  Last updated