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.
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.
NVMe Block Storage is a higher performance option for workloads that require rapid I/O.
Navigate to the Add Block Storage page in the customer portal.
In a short time, your volume will be available for use. Wait until you see Active in the status column before proceeding.
You can attach block storage to one server at a time. However, the server and block storage volumes must be in the same location.
The block storage will be available as a new device.
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.
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
Create a new disk label using parted
.
# parted -s /dev/vdb mklabel gpt
Make a primary partition to fill the entire disk.
# parted -s /dev/vdb unit mib mkpart primary 0% 100%
Create an EXT4 filesystem on the primary partition and format it.
# mkfs.ext4 /dev/vdb1
Make a mount point.
# mkdir /mnt/blockstorage
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
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.
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.
If the disk is offline, right-click on the new disk volume and select Online.
Right-click on the new disk volume and select Initialize.
Select MBR or GPT partition style and click OK.
Right-click Unallocated Space and select New Simple Volume.
Follow the wizard to format and attach the volume.
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.
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.
Expanding block storage requires two steps:
Click the Manage icon on the desired Block Storage instance.
Click the Size link to adjust the size.
Enter the new size, type YES in the confirmation field, then click Continue.
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.
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.
Unmount the block storage.
# umount /mnt/blockstorage
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
Grow the partition to fill all available block storage space.
# growpart /dev/vdb 1
Force a filesystem check before resizing.
# e2fsck -fp /dev/vdb1
Remount the block storage.
# mount /mnt/blockstorage
Resize the filesystem to fill the entire partition.
# resize2fs /dev/vdb1
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.
Follow the wizard to extend the volume.
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:
df
.The Vultr API offers several endpoints to manage block storage.
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.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.
No. Block storage may only be attached to instances in the same location.
Yes, the minimum size for NVMe Block Storage volume is 10 GB. The minimum size for HDD block storage is 40 GB.
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.
No, this is not possible.
Yes, you can mount up to eight volumes to the same instance.
No, Block Storage does not support Bare Metal.
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.