Proxmox is a really great free and open-source virtualization platform that many are using in the home lab environment. However, one common challenge Proxmox users face is expanding storage space. With NVMe drives now being extremely cheap, they are a great choice for extra virtualization storage. Let’s walk through the process of adding disk storage space to an NVMe drive in Proxmox, step by step.
Why add disk space to Proxmox?
You may need more hard disk space for a storage drive for virtual machines, containers, images, etc.
You may already have Proxmox installed on one disk and need to add storage to have more local storage. This process is as simple as adding a drive to Proxmox.
NVMe disks are cheap and great for adding speedy virtualization storage to your Proxmox host.
Add the physical drive to your Proxmox host
The first step is, of course, adding the new drive to your Proxmox host. Most current hosts have a hard drive M.2 slot for NVMe storage. Once added, we can begin the process to provision the storage.
Preparing the NVMe Drive
Before adding storage space to your Proxmox server, you must prepare the new disk. This involves installing necessary tools, creating a new partition table, and setting up the primary partition.
Install Parted:
To begin, you must install the Parted utility on your Proxmox server. Select Shell in the web interface to launch the command shell. This tool is used for manipulating block devices and creating partitions. To install Parted, run the following command:
apt install parted
List block devices:
Next, use the lsblk command to identify the new NVMe drive you want to add to your Proxmox installation. For example, the drive may appear as dev/nvme0n1. You will see the normal disks such as dev sda dev sda1.
Create a new partition table:
Once you have identified the new disk, you can create a new partition table. Run the following command to create a type GPT partition table on the NVMe drive:
parted /dev/nvme0n1 mklabel gpt
Creating the Primary Partition
After you have prepared the new disk, the next step is to create the primary partition on the NVMe drive.
Create a primary partition
To create the primary partition, run the following command:
parted /dev/nvme0n1 mkpart primary ext4 0% 100%
This command creates a new primary ext4 partition that spans the entire NVMe drive and will remove existing partitions. So be careful and ensure this is what you would like to do.
Format the partition:
Next, format the new partition with the ext4 filesystem:
mkfs.ext4 /dev/nvme0n1p1
Name the storage for your data
You can name the storage something intuitive using the command:
mkfs.ext4 -L vmstorage /dev/nvmeOn1
Mounting the New Partition
With the primary partition created, you must now mount it to a mount point on your Proxmox server.
Create a new directory:
First, create a new directory to serve as the mount point for the new partition. For example:
mkdir /mnt/vmstorage
Edit the /etc/fstab file:
Next, edit the /etc/fstab file to ensure the new partition will auto mount upon reboot. Open the file with a text editor like Nano:
nano /etc/fstab
Add the following line to the file, replacing /dev/nvme0n1p1 with the appropriate device identifier for your NVMe drive:
/dev/nvme0n1p1 /mnt/vmstorage ext4 defaults 0 0
Save the changes and exit the text editor.
Mount the new partition:
Finally, mount the new partition to the mount point:
mount /mnt/vmstorage
Adding Storage Space to Proxmox
Now that the new partition is mounted, you can add it as storage space in the Proxmox web interface.
1. Log in to the Proxmox web interface.
2. Navigate to the “Datacenter” tab and click on “Storage.”
3. Click on the “Add” button and select “Directory” from the dropdown menu. There will be several options including lvm thin think provisioning, volume group, thin provisioning.
4. In the “Add Directory” window, enter a unique ID for the new storage, and set the “Directory” field to the mount point you created earlier (e.g., /mnt/nvme-storage). Choose the appropriate “Content” types, such as “select Disk image,” “Container template,” or “Backup.” Click “Add” to save the configuration.
5. The new storage space will now be available in the Proxmox web interface for virtual machines and containers.
Now, when you create a new virtual machine or container you will see the storage available to select in the storage drop down.
Performing Backups to the New Storage
With the new storage space added to Proxmox, you can also use it as backup storage for your virtual machines and containers. To create a backup, follow these steps:
1. Select the virtual machine or container you want to back up in the Proxmox web interface.
2. Click on the “Backup” button in the top menu.
3. In the “Backup” window, choose the new storage space as the “Storage” target and configure the other backup options as needed. Click “Backup” to initiate the process.
4. Monitor the backup progress in the “Task Log” tab.
Wrapping up
Proxmox is a great solution that is free, open-source, and incorporates many great features in the platform. Adding storage is fairly straightforward, but does involve a few steps from the command shell to mount the storage, format the disk, and add it to the system as available storage for virtual machines and containers.
0 Comments