Vultr Block Storage

Last Updated: Tue, Apr 26, 2022
FAQ Linux Guides

Introduction

Vultr's Cloud Block Storage technology lets you mount high-performance, scalable storage to your instance to provide flexible space management. Block storage is highly available, redundant, and available as either high-performance NVMe or affordable HDD. Use this guide to manage your Big Data storage needs with Vultr Block Storage.

Block Storage Technology

Vultr offers two block storage technologies: HDD and NVMe.

HDD Block Storage is an affordable option that uses traditional rotating hard drives and supports volumes larger than 10 TB.

  • Minimum volume size: 40 GB
  • Maximum volume size: 40 TB
  • Technology: Rotating hard disk drive
  • Availability: Most Vultr locations
  • Key Feature: Affordable storage and largest volumes

NVMe Block Storage is a higher performance option for workloads that require rapid I/O.

  • Minimum volume size: 10 GB
  • Maximum volume size: 10 TB
  • Technology: Solid-state NVMe
  • Availability: Many Vultr locations
  • Key Feature: Highest performance I/O

How to Create a Block Storage Volume

Navigate to the Add Block Storage page in the customer portal.

  1. Select your technology, either HDD or NVMe.
  2. Select the desired location. Your server and the attached block storage volume must be in the same location.
  3. Select the block storage size.
  4. Enter a descriptive label.
  5. Click Add Block Storage.

In a short time, your volume will be available for use. Wait until you see Active in the status column before proceeding.

Attach to a Server Instance

You can attach block storage to one server at a time. However, the server and block storage volumes must be in the same location.

  1. Go to https://my.vultr.com/blockstorage/
  2. Click on the pencil icon next to the volume to attach.
  3. Select the server instance from the drop-down.
  4. Click Attach.

The block storage will be available as a new device.

Mount Block Storage - Linux

Warning: The commands below may destroy data on existing volumes. These instructions are for newly-deployed block storage volumes without data. Before proceeding, back up your files. Vultr does not have any backups of your block storage. Verify your backups and store them separately from the server instance.

Vultr snapshots and backups of server instances do not include block storage.

By default, Vultr does not create any filesystems on block storage volumes. Use these steps to initialize, delete all data, and mount the block storage volume.

  1. Verify the new device name. The first block storage device is connected to your server as /dev/vdb. Additional devices will be labeled /dev/vdc, /dev/vdd, and so forth. Use the lsblk command to verify your device name. This example shows a 10 GB volume available as /dev/vdb.

    # lsblk
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sr0     11:0    1 1024M  0 rom
    vda    252:0    0   55G  0 disk
    └─vda1 252:1    0   55G  0 part /
    vdb    252:16   0   10G  0 disk
    
  2. Create a new disk label using parted.

    # parted -s /dev/vdb mklabel gpt
    
  3. Make a primary partition to fill the entire disk.

    # parted -s /dev/vdb unit mib mkpart primary 0% 100%
    
  4. Create an EXT4 filesystem on the primary partition and format it.

    # mkfs.ext4 /dev/vdb1
    
  5. Make a mount point.

    # mkdir /mnt/blockstorage
    
  6. Add a blank line and a mount entry to /etc/fstab. This will automatically mount the block storage at /mnt/blockstorage at reboot.

    # echo >> /etc/fstab
    # echo /dev/vdb1 /mnt/blockstorage ext4 defaults,noatime,nofail 0 0 >> /etc/fstab 
    

    You can also manually mount the block storage without rebooting.

    # mount /mnt/blockstorage
    

Mount Block Storage - Windows

Warning: The commands below may destroy data on existing volumes. These instructions are for newly-deployed block storage volumes without data. Before proceeding, back up your files. Vultr does not have any backups of your block storage. Verify your backups and store them separately from the server instance.

Vultr snapshots and backups of server instances do not include block storage.

By default, Vultr does not create any filesystems on block storage volumes. Use these steps to initialize, delete all data, and mount the block storage volume. The following steps are based on Windows Server 2016, however, the basic process is very similar for all current versions of Windows.

  1. Click "Start", search for "Computer Management", and launch it.
  2. Select "Storage -> Disk Management" on the left side menu.
  3. The right pane displays the current disk configuration. The first block storage device connected to your server is usually Disk 1. Additional devices will be Disk 2, Disk 3, and so forth. This example shows a 10 GB volume as Disk 1.

    Computer Management

  4. If the disk is offline, right-click on the new disk volume and select Online.

    Online

  5. Right-click on the new disk volume and select Initialize.

    Initialize

  6. Select MBR or GPT partition style and click OK.

    OK

  7. Right-click Unallocated Space and select New Simple Volume.

    Simple Volume

    Follow the wizard to format and attach the volume.

Mount Block Storage - BSD

Detach a Block Storage

Note: Linux instances need to remove any references to the block storage volume from the /etc/fstab file before detaching to prevent system boot failure due to the OS waiting on a drive that no longer exists.

  1. Go to https://my.vultr.com/blockstorage/
  2. Click on the pencil icon next to the volume you wish to detach.
  3. Click Detach.

Move Block Storage to a New Server

You can move block storage between servers, but take care to properly dismount the volume and remount it on the new server. 🤚 Attention: If you need to preserve data, do not re-partition, create a new filesystem, or perform the initialization steps that delete data.

How to Upgrade Block Storage

Expanding block storage requires two steps:

  • Upgrade block storage size in the customer portal
  • Resize your filesystem in the instance OS

Upgrade block storage size

  1. Navigate to your Vultr customer portal.
  2. Select Products.
  3. Click Block Storage.
  4. Click the Manage icon on the desired Block Storage instance.

    Block Storage

  5. Click the Size link to adjust the size.

    Edit Block Storage

  6. Enter the new size, type YES in the confirmation field, then click Continue.

    Upgrade Block Storage

  7. Reboot the attached server instance using the server control panel to apply the new size. Rebooting the OS from an SSH session will not apply the changes.

Resize the filesystem - Linux

You can resize your block storage to reflect the changes made in your panel with the growpart utility. The growpart utility is provided by cloud-init and is available for all major Linux distributions and *BSD.

  1. Unmount the block storage.

    # umount /mnt/blockstorage
    
  2. Use the lsblk command to verify the partition name. This example shows a 10 GB partition as /dev/vdb1. Note that the mount point is blank because it was dismounted in step 1.

    # lsblk
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sr0     11:0    1 1024M  0 rom
    vda    252:0    0   55G  0 disk
    └─vda1 252:1    0   55G  0 part /
    vdb    252:16   0   10G  0 disk
    └─vdb1 252:17   0   10G  0 part
    
  3. Grow the partition to fill all available block storage space.

    # growpart /dev/vdb 1
    
  4. Force a filesystem check before resizing.

    # e2fsck -fp /dev/vdb1
    
  5. Remount the block storage.

    # mount /mnt/blockstorage
    
  6. Resize the filesystem to fill the entire partition.

    # resize2fs /dev/vdb1
    

Resize the filesystem - Windows

  1. Click "Start", search for "Computer Management", and launch it.
  2. Select "Storage -> Disk Management" on the left side menu.
  3. The right pane displays the current disk configuration. The block storage device will have new unallocated space available. Right-click on the volume and select Extend Volume... as shown.

    Extend Volume

    Follow the wizard to extend the volume.

How to Downgrade Block Storage

It's not possible to perform an in-place downgrade or "shrink" block storage. If you'd like to move your files to a smaller block storage subscription, perform these steps:

  1. Make a backup of your block storage volume.
  2. Inventory your files to determine the space needed. Windows users can use Windows Explorer, while Linux users may want to use df.
  3. Create a new subscription of the correct size.
  4. Attach the new volume on your instance, then mount it.
  5. Copy your files from the larger block storage volume to the new, smaller volume. Use the tools appropriate for your platform.
  6. Detach the old block storage subscription.
  7. Reboot your server instance and verify your new volume is correct.
  8. When satisfied with the new volume, destroy the old block storage subscription.

Manage Block Storage via API

The Vultr API offers several endpoints to manage block storage.

  • Create a block storage volume.
  • Get information for a block storage volume.
  • List the block storage volumes in your account.
  • Update information about a block storage volume.
  • Attach a block storage volume to a server instance.
  • Detach block storage from a server instance.
  • Delete a block storage volume.

Use the /v2/regions API endpoint to discover which storage classes are available at your location.

  • block_storage_storage_opt indicates HDD storage is available.
  • block_storage_high_perf indicates NVMe storage is available.

Frequently Asked Questions

Can I upgrade or downgrade block storage?

You can upgrade block storage by using the steps described here. You must resize your file system manually, which does pose the risk of possible data loss if performed incorrectly. You cannot perform an in-place downgrade of block storage, but you can use these steps to migrate your files to a smaller block storage subscription.

Can I mount block storage to different locations?

No. Block storage may only be attached to instances in the same location.

Is there a minimum size for Block Storage volumes?

Yes, the minimum size for NVMe Block Storage volume is 10 GB. The minimum size for HDD block storage is 40 GB.

Can I make snapshots or restore a snapshot of a block storage device?

No, this is not currently supported. Vultr's automated server backup does not back up any attached block storage volumes. Instead, you should back up your block storage volumes using OS-level tools.

Can I mount block storage to multiple servers at the same time?

No, this is not possible.

Can I mount multiple block storage volumes to the same Vultr instance?

Yes, you can mount up to eight volumes to the same instance.

Can I mount a block storage volume on a Vultr Bare Metal server?

No, Block Storage does not support Bare Metal.

Are there any limits on the size or number of volumes I can deploy?

We have generous limits on the total number of volumes and the aggregate storage allocated per account. If you have questions about your account limits, please open a support ticket.

Want to contribute?

You could earn up to $600 by adding new articles.