Get started Bring yourself up to speed with our introductory content.

Criteria for choosing a public cloud provider

When it comes to choosing a public cloud provider, cost is often top of mind. But other factors, such as VM migration, storage and autoscaling, should also be considered.

As organizations transition to public or hybrid cloud, they inevitably have to choose a public cloud provider to host their cloud-based virtual machines. And while there are many infrastructure as a service (IaaS) providers, each has its own strengths and weaknesses. Furthermore, each public cloud provider has its own pricing structure, so the cost of running a VM in the cloud could differ substantially from one provider to the next.

This article is the third in a series that walks through the buying process for public cloud virtual server services. The first article described the benefits of hosting virtual servers in the cloud, while the second detailed public cloud costs and risks.

This article outlines the purchasing criteria to include in a vendor request for proposal (RFP) to ensure you get the right services for your environment.

The fourth article will compare market-leading public cloud virtual server services against established purchasing criteria and against each other to help you determine which service offers the best features and price for your needs.

Determining public cloud costs

New public cloud users are often surprised to learn that IaaS has a complicated pricing structure. You will rarely, if ever, find flat rate pricing for running a virtual machine (VM) in the cloud. And although cloud providers disclose their pricing formulas, they tend to be extremely complex, making it difficult to estimate the cost of running a public cloud VM.

These formulas are complex because they're based on the resources VMs consume. Some of the factors included in public cloud pricing structures are CPU consumption, the type of CPU activity being performed, network bandwidth consumption, storage I/O consumption, operating system (OS) selection, storage type and storage consumption on a per GB basis.

Before running a VM in the cloud, set up trial accounts with different cloud providers. This will create identical VMs on each cloud, and track costs. You can then compare how pricing differs from one provider to another.

For this method to work, however, the VMs must be somewhat representational of what you will run in your production environment.

VM migration to public cloud

Another important consideration is VM migration support. Most organizations have on-premises VMs they will migrate to public cloud. Most of the major public cloud providers offer a mechanism for importing existing VMs into the cloud, but some are easier to use than others. Some providers will give you a graphical interface, while others require the operation be performed programmatically.

Hypervisor support also varies widely among public cloud providers. For example, some providers make it easy to import VMware VMs, but do not support Citrix VMs.

Be aware of VM migration costs. Most public cloud providers charge you for the resources you use, including the storage space the new VMs occupy. Some cloud providers -- particularly the smaller ones -- may impose a surcharge for importing VMs.

Custom image support

Any public cloud provider allows you to create VMs based on precompiled generic images. But because they're generic, these images may not fully meet your needs. For example, you may want to create VM images that include your preferred antivirus software, or that adhere to specific security requirements.

These custom VM images make it easy to configure VMs to meet your specific needs, and to reproduce those configurations on future VMs. However, if you plan to create custom VMs in the cloud, you need to make sure your provider supports that process. And while major public cloud providers tend to offer that support, some make it easier than others to import those images. If you are considering smaller public cloud providers, make sure you understand their custom VM image support before signing on.

VM templates

While any public cloud provider allows you to create generic VMs based on predefined templates, the complexity and number of those templates varies wildly. Generic VM templates typically include an OS and, possibly, the ability to build application servers. Providers don't always offer the same OSes or applications, if they offer applications at all.

Most of the major public clouds allow you to create Windows and Linux VMs, although the Windows Server versions and the Linux flavors offered vary. If you are considering smaller providers, confirm their template catalog allows you to deploy the computing environments and applications you require.


Another essential feature to look for when evaluating cloud providers is autoscaling. The basic idea of autoscaling is that server workloads are rarely linear. Sometimes, there are performance demand peaks, such as insurance companies' open enrollment periods or online retailers' big holiday sales. At other times, usage demand shrinks. Autoscaling allows VMs to deliver higher performance in response to heavier workloads, and to scale down when possible to save money.

Autoscaling varies across different cloud platforms. Some providers only offer it for web applications by bringing extra web servers online. Others increase VM memory and CPU resources to perform workload scaling. This can be done manually, or can be automated based on a set of rules, performance metrics or a schedule.

Network connectivity

Every cloud service provider offers VM network connectivity. It's a given that your VMs will be able to access one another and the Internet.

Even so, the larger cloud providers typically offer multiple network connectivity options. They vary between providers, but there are usually premium connectivity options that allow VMs to receive higher network performance levels. This is especially useful for VMs running applications that are sensitive to network latency. If you plan to run cloud-based, latency-sensitive applications, be sure to investigate your potential cloud provider's networking options.

Storage choices

Just as every cloud provider allows for basic VM network connectivity, they also offer basic VM storage. After all, VMs use virtual hard disks, and you have to put them somewhere. Many cloud service providers also offer options beyond basic, entry-level storage.

Storage services vary tremendously from one provider to another, but, at a minimum, there are usually standard and premium options. The larger cloud providers tend to offer a lot of customization as part of their premium storage. For instance, customers might be able to choose between rotational storage and solid-state storage, although solid-state storage is almost always more expensive.

Premium storage may also include fault-tolerant options. Some cloud service providers allow you to replicate storage or build virtual storage arrays that boost performance and ensure fault tolerance. Although somewhat rare, some providers also allow you to use premium storage to create VM snapshots or for backup targets.

When evaluating service providers, it's important to pay attention to the storage types offered. Some providers only offer object storage, which is very different from the block and file storage normally used in local data centers. Similarly, some providers treat databases as storage options, while others treat databases as VMs.

Regional support

Pay attention to cloud providers' regional availability. Larger cloud providers establish data centers all over the world. If you have regulatory or business requirements that mandate your data be kept within a specific country, it's extremely important to be able to choose which data centers will host your VMs. In the event of a provider outage, it's also critical to ensure your VMs will not fail over to unauthorized regions.

Examine each cloud provider's specific regional offerings. Some providers use lower-end servers in certain regions. Likewise, some OSes or OS features, such as encryption, may not be available in certain regions due to regulations.

As you can see, there are a number of criteria to consider when evaluating cloud service providers. Not all providers are created equally, so it's necessary to look for the provider that will best meet the technical needs of your environment, and the business needs of your organization.

Next Steps

What to consider for choosing a cloud provider

Keys to be victorious in a cloud business case debate

Cloud market heats as new competition joins the mix

Dig Deeper on Public cloud and other cloud deployment models