Articles of the VPS column:
- VPS: the cores trick
- VPS (second part): the SSD trick
- VPS (third part): evaluating performances
- VPS (fourth part): basic troubleshooting in Linux
We now continue with our journey in the analysis of the VPS offers available on the market discussing one of the most critical aspects in the choice of a virtual machine: performances, capacity, availability and typology of storage.
The first important observation regards the data integrity guarantees that are proposed for the VPS we are about to buy. Most VPS that you’ll find on the Internet don’t offer any backup and data integrity guarantee at all. Even though this may seems crazy.
However, some solutions offer, at an additional cost, slightly better protection levels.
Unfortunately those who offer a backup solution too don’t behave always too well. The vast majority of these services - even if they charge more than 20-30% or the regular cost of the VPS just to enable the backup function - just make an image of the VM’s disk without offering any granular backup option. If, for instance, you run an Object Storage system like Owncloud on a VPS and a file, or a folder, is accidentally deleted, the only option is to restore the whole previous image, resulting in the loss of all the data modified in the last day or week (according to the backup frequency).
Obviously the only solution to this problem that can let you sleep at night is to backup data by yourself, with all the costs, burdens and memorization troubles that arise. Backup must be saved somewhere else than the disk of the VPS or a VPS on the same storage.
Be careful and do your math before coming to hurried conclusions.
Windows vs Linux: be careful about space
In general, the space available on a Windows or Linux VPS is the one of the operating system main disk. Therefore it won’t be 100% free to store data. As you know Windows is particularly hunger for space when compared with Linux: carefully consider this fact when deciding which product best suits your demands and choose a provider that lets you expand the disk without having to buy a more performing VPS also on a RAM and CPU standpoint. Otherwise a project with a 20€ monthly budget might skyrocket in a few times to 60 or even 100€ each month just to satisfy disks’ requirements.
A storage matter
So if you’re looking for a provider, then focus on what is actually available, look for offers with the guarantees of performances that ensure a quick access to the disk and suitable with the apps that you will implement. Choosing a provider that clearly states which internal or shared storages are used and the criteria of management is a good habit. A SATA consumer disk for instance has way lower availability rates than a SAS Enterprise disk, regardless of the rotational speed (rpm) and number of IOPS. In case of failure, the risk of data loss will be considerably higher and you will want to have a Disaster Recovery plan ready to be fired, whichever provider you rely upon. That is very true especially for critical production VPS.An important chapter of our analysis concerns the typology of the disk being used and the performances. The first important thing to always bear in mind is that your storage's performances aren't necessarily correlated to the typology of the disks used. So if you have a VPS with an SSD storage, then you may experience performances worse than with traditional magnetic disks. An SSD storage VPS should be more performant in terms of IOPS than a magnetic disks one, but that depends upon how many VSP run on the same storage. SSDs are mostly used by providers that have a very aggressive overselling policy because of the higher number of IOPS they can guarantee: should they do it with traditional disks, they would sell unusuable VPSs. As a matter of fact, if you are a provider and want to gain as much as you can, then you will place how many VPSs you can on a single server with a single storage: that doesn’t mean better performances, instead worse, both on a CPU and on a disk basis.
Take a look at specs
Finally, don’t forget to read all the clauses and descriptions of the VPS before planning a migration or deploying a new project. For instance most of you have seen that Microsoft, with its Azure service, offers a type of VMs - available since September 2014 - that includes an high speed SSD disk for those who want improved and better I/O performances than a regular VM. In this case Microsoft offers an expensive products that may be appealing to the ones looking for significant performances. At the moment we are writing, a D1 VM with a single core and 3,5 GB of RAM and 50 GB SSD disk costs 88€/month, and a D4 with 8 cores 28GB of RAM and just 400GB on the SSD disk costs a stunning 703€/mo. Performances for the “local SSD” (the term used by Microsoft) are unfortunately proportional to its dimension, so for the D1 tier the expected performances are somehow poorish (data provided by Microsoft at this address): 48 Mbyte/s in reading, 24 in writing and 3.000 IOPS. D4 goes a little better: 24.000 IOPS, 384 Mbytes/s in reading and 192 in writing. Moreover, according to Microsoft, speed lowers as the disk grows in dimension as an implication of the dynamic VHD structure implemented (a dynamic VHD is the equivalent of a VMware’s Thin Provisioned disk).
Unfortunately, it’s not over: local SSDs -against what it would be sensate to think- aren’t used by Azure VMs for their Operative System! It’s just an additional disk that can be used to speed up certain applications. Microsoft describes it as “local temporary storage”. Don’t you think about storing data on this SSD!
Amazon too discourages saving data on its Elastic Block Storage (EBS), the space given together with each VM sold by the online selling giant.
Regarding SSD, Amazon talks about General Purpose SSD for certain instances and Provisioned IOPS SSD for others guaranteeing coherent performances and low latency. Lastly, some instances like I2 can have dedicated 800 Gbtye SSD directly connected to the VPS, thus offering better performances with the trade-off of a lower availability This kind of storage is called Instant Store and only certain specific instances support, for example, SSD Trim (essential to maintain good performances through time): I2 and R3. To make an idea of costs, reserved I2 instances (4 vCPU, 30,5 GB of RAM, 1 800 GB SSD disk) are available starting at 310$/mo circa, R3 (2 vCPU, 15,25 GB of Ram and 1 32GB SSD disk) starts from 80$/mo.
Next Article: VPS (third part): evaluating performance