Download the authoritative guide: Cloud Computing 2019: Using the Cloud for Competitive Advantage
The battle for leadership in cloud computing comes down to two players, one old guard and one new guard: Amazon Web Services and Microsoft Azure. Both firms have made massive investments in their services and continue to do so by the billions, showing this race is far from over.
Synergy Research Group puts AWS at the lead in the public cloud infrastructure space with 34% market share, with Microsoft at about 14% share, IBM Cloud at 7% and Google Cloud at 6%. Synergy estimates that third quarter 2018 cloud infrastructure service revenues, including IaaS, PaaS and hosted private cloud services, are now well over $17 billion for an astounding annual growth rate of 45%.
AWS vs. Azure: Summary
We’ll jump to the bottom line now, and then elaborate below.
Amazon Web Services started out as a pure cloud play used mainly by smaller firms and developers, focused on (among other things) Linux and a variety of databases. They could easily log on and deploy a full tool set. AWS has grown this early tool set at a breathless rate – it adds tools and features, for so many functions, so often that even close AWS watchers can hardly keep up. If you want a mega-powerful platform that handles virtually any cloud function – without regard for operating system – AWS is your choice.
However, if you are a Microsoft shop and heavily invested in the Microsoft way, from Windows to Active Directory to SQL Server and Visual Studio, then Azure is clearly your best choice. Furthermore, Microsoft – unlike AWS – has deep roots in the enterprise. It understands business customers. As such, Microsoft invested in a hybrid cloud, knowing the businesses with traditional data center would move some but not all of their on-premises resources to the cloud. Microsoft's Azure cloud migration services can make migrating on-prem to Azure simple, and often with no modification.
AWS vs. Azure: The Core Platforms
The basic Amazon AWS Infrastructure-as-a-Service (IaaS) offerings break down into four classes:
- Content storage and delivery
Amazon Elastic Compute Cloud (EC2) and Simple Storage Service (S3) are the core offerings on which everything else is built. Amazon has a multitude of security and identity services, since security is a priority in the cloud. This includes:
- AWS Certificate manager for managing SSL/TLS certificates
- AWS CloudHSM for hardware-based key storage and management
- Amazon CloudWatch for infrastructure resource usage monitoring
- AWS Cloudtrail for tracking user activity and API usage
- AWS Config for tracking resource inventory and changes
- Azure also has four classes of offerings with a slight variation:
- Data management/databases
Security and management is done through Microsoft’s Active Directory, which is built on the very mature Active Directory services first introduced into Windows Server 2000. These include:
- Active Directory Federation Services
- Azure Active Directory
- Multi-Factor Auth
- Role Based Access for cloud-based security
AWS Pro and Con
Amazon global coverage and vast toolset are its biggest strength, with the largest number of data centers and largest number of services, over 100.
One of the first and most popular use cases for AWS is development, in particular DevOps, the methodology of rapid development, testing, deployment, and upgrade. Rather than beg their internal IT shop for resources, developers go to AWS to spin up an instance in minutes, do their development work, and shut down the VM when they were done.
The basic tools are contained in AWS Developer Tools, a set of four services for building AWS-hosted or on-premises apps. They are:
- AWS CodeCommit, to store code in a private Git repository
- AWS CodePipeline, for continuous integration (CI) and continuous delivery (CD)
- AWS CodeBuild, to build and test the code
- AWS CodeDeploy, to automate code deployments
For lighter code development, like serverless computing, Amazon has AWS Lambda so you don’t have to provision virtual machines or servers. And if you are working on Infrastructure as Code (IAC) provisioning, which is even lighter weight than serverless, AWS has you covered as well, through AWS CloudFormation for managing AWS resources.
AWS has also done a lot in the area of analytics. AWS has a comprehensive set of analytics tools, such as Athena for analysis of data stored in S3 instances, EMR for Hadoop, QuickSight for business analytics, Redshift for a petabyte-scale data warehouse, Glue to perform ETL tasks on data stores, and Data Pipeline to securely move data around.
For BI, there's great functionality in Redshift, a database deployed as a cluster for massive parallel processing for more advanced data warehouse users. For visualization of customer data, there is QuickSight, a business intelligence service. It uses data stored in any Hadoop repository, an Amazon RedShift data warehouse, or some third-party sources such as Salesforce.com and Oracle.
The down side to AWS is that, for the longest time, it operated on an assumption of a pure cloud play, that customers would bring everything to the cloud. That hasn’t happened and it’s clear that most enterprises prefer a mixed hybrid environment. So now AWS is moving to extend its offerings on premises, basically the opposite tact that Microsoft took.
Also, AWS’s cost structure is downright Byzantine. It's very confusing to navigate on your own, so to avoid billing surprises, it offers A tch, which offers metrics on data transfer, disk usage, and CPU utilization.
Microsoft Azure Pro and Con
The chief advantage Azure has over AWS is its Microsoft legacy, which is part of a larger legacy strength in the enterprise. Microsoft makes it very easy to migrate on-premises Windows apps and data to Azure, often with just migration wizards.
Any Azure migration starts with a free, basic discovery and assessment tool called Azure Migrate. Azure Migrate evaluates your on-premises environment and provides a visual map of interdependencies among servers to identify multiple applications.
Azure Migrate also tells you if your on-premises app is suitable for migrating to an Azure VM, or if it needs work. It then provides an estimate of the proper size and cost of the Azure virtual environment for the app to run properly.
Azure Migrate is also integrated with Azure Database Migration Service for database discovery and migration. Currently it currently supports SQL Server on-premises migration to the cloud but Microsoft says it will support other popular database technologies in the future
For web apps, Microsoft provides the Windows Site Migration Tool, which can migrate an entire site, content and all, dating back to Internet Information Server (IIS) 5 and Windows Server 2003. There is also a Linux Site Migration Tool for moving Apache-based sites to Azure
Thanks to Microsoft’s developer legacy, Azure has multiple app deployment options for developers:
• App Services, a fully managed Platform as a Service
• Cloud Services for deploying Web apps and APIs
• Service Fabric for building microservices
• Kubernetes Service for deploying container services
• Functions, an architecture for serverless and IAC
• Batch job scheduling
Deploying a hybrid environment is much easier with Azure because Microsoft recognized the need for a hybrid environment from the start. In addition to Azure, Microsoft lets you turn your on-premises servers into an Azure environment with Azure Stack.
Azure Stack lets you duplicate an Azure environment within your own data center and firewall, allowing you to utilize cloud-based resources on site when necessary. This appeals primarily to highly regulated industries where data might have to stay on-site rather than be moved to the cloud.
On the down side, Azure doesn't offer as much support for DevOps methods as other cloud platforms. Its dev tools are geared to the Microsoft method of development, and there are plenty of Microsoft shops that are undoubtedly good with that.
And while Microsoft does support many open source initiatives like Hadoop and Kubernetes, AWS has much greater and deeper support for anything from the open source community. Microsoft has come a long way but still has some catching up to do.
Also, AWS has done its best to provide headache-free licensing, while with Microsoft, it gets a bit complicated. If you have Microsoft licenses, you might be eligible for license mobility to move to the cloud, so you don’t have to pay for both the on-prem and cloud version. This will require some work on your part with your consultants/MVPs.
AWS vs. Microsoft Strengths at a Glance
· More data centers for availability and low latency
· More services for open source
· Better DevOps support
· Broader range of SQL and non-SQL databases
· Heavy involvement in AI
· Simpler licensing
· Stronger support for BI and analytics
· Total support for Microsoft legacy apps
· Greater awareness of enterprise needs
· Easy one-click migrations in many cases
· Conversion of on-prem licenses to the cloud
· Good support for mixed Linux/Windows environments
· Better hybrid cloud offering
· Better support for disaster recovery