Seems like just about everyone has a cloud offering these days. With examples like Microsoft Azure, Amazon Web Services, Google Compute, IBM Cloud, etc… What exactly is the cloud and which one is right for you?
Before we can determine which offering(s) are best, we need to first have an understanding of what the “cloud” really is and what its advantages are. You may have heard the phrase “It’s not the cloud, it’s someone else’s computer,” but it’s not that simple.
At the root of today’s modern cloud, you will find hundreds of data centers strategically located across the globe. These data centers are filled with all the hardware necessary to provide an array of services that fit your needs; from running virtualized servers, database instances, virtual private networks, data storage, computing function, and much more.
What Are Some of the Advantages of Using Cloud Services VS Using All On-Premises?
Direct & Indirect Costs
If you are running everything on-premises, there are many direct and indirect costs. These include purchasing the hardware, warranties/support agreements of the equipment, operating system licensing, electricity costs to run the equipment, and having a team maintain the hardware. One of the biggest indirect costs is time. This can be looked at in a few different ways, from the time it takes to have the equipment delivered, installed, configured, and fully available for use to unexpected downtime.
In a cloud environment, most of the normal ownership costs of hardware are neatly rolled into a per-hour charge. The philosophy here is that you only pay for what you use. In other words, if you are working on a proof-of-concept and only need an environment for a couple of hours, you only pay for those hours that the system is used.
Cloud service consoles and modern automation tools such as Chef, Puppet, Ansible, and Terraform make provisioning and configuration of the cloud environment a snap. In many circumstances, from the time you give your DevOps personnel the go ahead, to having a fully operational system up and running can be counted in minutes/hours instead of weeks/months. I say “environment” here instead of “server” because in many cases, you don’t need just a single server. Instead, you may need a database instance, a private network, data storage, automated snapshots, DNS services, etc. All of these things make up a part of the environment and are expected to be properly configured to support your system.
So Which Cloud Provider is the Right One for You?
A few years back the choice was very apparent and clear, Amazon Web Services; as it was the most fully featured and mature of all the providers. Today, two of the biggest players in this space are Amazon Web Services and Microsoft Azure. But Microsoft Azure beats its out competition when taking everything it has to offer into consideration.
While both offer very similar services and are priced comparably, Microsoft Azure is marketed more like a Hybrid Cloud. A Hybrid Cloud can be described as a mixture of on-premises, private, public, and 3rd party clouds. Depending on the specific needs of your system(s), this approach is the best option as it allows for greater flexibility instead of relying solely on a single provider.