We first released our own integrated, software defined storage system for OnApp clouds, back in 2012, and after four years of development it’s more stable and feature-rich than ever before.
OnApp’s software defined storage system allows you to use commodity disks and network infrastructure to create a resilient, high performance distributed SAN for your cloud.
It’s a storage solution that’s particularly suited to cloud service providers, because it gives you control over storage performance tiers, and resilience; allows storage to scale independently of compute; and enables your storage resources to scale naturally as your cloud business grows.
In this post I wanted to run through a handful of the latest features we’ve added to our storage system. If you’d like to know more, just get in touch!
Auto healing capabilities
OnApp storage has auto-healing capabilities, and will automatically repair any degraded disks in your cloud. A disk only really goes into a degraded state when a compute resource has a network or power failure, which can cause it to become out of sync with the rest of the storage system. Repairing them automatically puts the disks back in sync, allowing full performance and removing any limitations (eg, taking backups) while they are not in sync.
Storage and drive healthchecks
The administration interface for OnApp’s software defined storage provides all of the health check tools to see the current status of the environment. For example, any physical disks are showing any S.M.A.R.T errors, any disk or snapshot degradations, or any virtual disks without redundancy are reported in the UI.
You can set up OnApp to notify an administrator or mailing list when any of these issues occur. OnApp has a one-click-fix button for many of these issues, to automatically resolve and resync any issues that may be occurring on the software side of your storage platform.
OnApp gives you a number of ways to optimize storage I/O performance. One of these is the ability to use SSD or NVMe disks as dedicated caching disks. Those flash disks automatically cache frequently-used data on your virtual disks. When adding a cloudboot Compute Resource to your cloud, you can dedicate one of the block devices to this task, and OnApp’s software-defined storage knows not to use this disk for virtual machine data. We support the two basic caching modes:
- Write-through: improves read I/O performance, no impact on reliability
- Write-back: improves both read and write I/O performance, but (as with all write-back caching) with a small chance of data loss
OnApp v5.5 added our new ‘epochs’ feature to our storage platform. Epochs greatly decrease the time it takes to repair a virtual disk if it becomes degraded. The epoch technology works by periodically flushing a changed block bitmap of a virtual disk. The latest common epoch between the master and the slave is determined, and then all subsequent epochs on the master are merged, effectively creating a differential bitmap.
In the world of software defined storage, it can become easy for disks to become unbalanced and you end up with a situation where one physical disk, or one compute resource, is over-provisioned compared to the others. Not with OnApp!
OnApp monitors the status of all compute resources and physical disks to ensure they are as balanced as they can possibly be. When OnApp detects that content is not uniformly balanced, you can run an automatic rebalance operation that will move content between disks or compute nodes. Through the OnApp UI you can see how content is moved between resources.