Scaling MyZubster Infrastructure: Expanding LVM Storage and Getting Our Monero Node Syncing Again
Today we solved a very real infrastructure problem in the MyZubster development environment.
Our self-hosted Monero node was synchronizing the blockchain when the VPS root filesystem reached 100% disk usage.
The daemon was still running, but blockchain synchronization had effectively stopped progressing.
The problem
Our initial root filesystem was approximately:
Filesystem Type Size Used Avail Use%
/dev/mapper/lv-root ext4 79G 78G 0 100%
The Monero blockchain database alone had grown to around 50 GB.
The daemon reported:
{
"busy_syncing": true,
"synchronized": false
}
but the blockchain height was no longer moving normally.
Deleting the blockchain would have defeated the purpose.
We needed more infrastructure.
Upgrading the VPS
We expanded the underlying VPS disk to 320 GiB.
Linux could see the new disk capacity:
sda 320G
but the root logical volume remained:
lv-root 79.5G
This is an important distinction.
Increasing a virtual disk does not necessarily increase the filesystem living on it.
Our storage stack looked roughly like this:
VPS virtual disk
↓
GPT partition table
↓
LVM physical volumes
↓
Volume Group
↓
Logical Volume
↓
ext4 filesystem
↓
/
Expanding the partition
After updating the GPT to recognize the enlarged virtual disk, we verified the available space.
Approximately 258 GB existed after the existing fourth partition.
We expanded /dev/sda4 to use the remaining disk.
Afterwards:
sda 320G
├─sda1 1M
├─sda2 512M /boot
├─sda3 19.5G
└─sda4 300G
But LVM still needed to learn about that additional capacity.
Resizing the LVM physical volume
We resized the physical volume:
pvresize /dev/sda4
LVM then reported:
PV VG PSize PFree
/dev/sda3 lv <19.50g 0
/dev/sda4 lv <300.00g 240.00g
Our volume group now had approximately 240 GB of free capacity.
Expanding the root logical volume
The remaining free extents were assigned to the root logical volume while also resizing the filesystem:
lvextend -l +100%FREE -r /dev/mapper/lv-root
LVM successfully changed the logical volume from:
79.49 GiB
to:
319.49 GiB
and resize2fs expanded the mounted ext4 filesystem online.
No server reinstall was necessary.
Result
The final filesystem looked like this:
Filesystem Type Size Used Avail Use%
/dev/mapper/lv-root ext4 315G 78G 236G 25%
We went from:
100% disk usage → 25% disk usage
with roughly 236 GB available.
Did Monero start syncing again?
Yes.
Immediately after the storage issue was resolved, we monitored the local RPC:
curl -s http://127.0.0.1:18081/get_info
The blockchain height progressed:
2,840,296
↓
2,840,836
↓
2,840,936
while the target was:
3,749,362
The daemon still reports:
{
"busy_syncing": true,
"synchronized": false
}
which is exactly what we expect while it catches up with the network.
The important difference is that the height is moving again.
Why are we running this infrastructure?
MyZubster is still under active development, and part of that development involves understanding decentralized infrastructure beyond simply calling third-party APIs.
We're experimenting with a stack involving:
Monero
↓
Node / RPC
↓
Wallet & payment verification
↓
MyZubster services
↓
Evidence / application workflows
Operating the infrastructure exposes problems that aren't visible in a mock environment.
Disk capacity, blockchain growth, synchronization, RPC availability, wallet services, monitoring and recovery all become part of the engineering problem.
And that's valuable.
Next steps
The immediate priority is simple:
Complete Monero synchronization
↓
Verify RPC stability
↓
Test wallet/payment flows
↓
Connect verification services
↓
Integrate with MyZubster workflows
We're also continuing development around environmental data, mapping, evidence verification, community participation and the broader MyZubster ecosystem.
Sometimes progress isn't a new UI or feature.
Sometimes progress is discovering that your blockchain node consumed the server, expanding an LVM filesystem from ~80 GB to ~320 GB, and watching the block height finally start moving again.
That's building infrastructure in the real world.
Tags: #opensource #devops #linux #blockchain
Suggested DEV.to title:
Scaling MyZubster: How We Expanded LVM Storage and Restarted Monero Blockchain Sync
Top comments (0)