A few weeks ago I attended the AWS Essentials and Architecting on AWS courses. Both were really good courses and lead by John Balsillie who is a friend from VMware training days. The biggest thing I noticed is that the conversation was on a different level to the VMware courses I have taught. vSphere courses are for Infrastructure people, AWS courses are for Application people.
For AWS being able to provision VMs on demand and network them together in a secure multi-tenant way is a given. It is an assumed foundation that all the important stuff requires. A bit like power and cooling in a datacentre it is complex to deliver but already sorted when we start.
Over the course of three days we looks at a couple of dozen different products that AWS offers and built things in hands on labs. The labs were pretty impressive, on the last day we built the infrastructure for a web application. We setup Auto Scaling so that when the job queue for an image processing system got long new worker instances (VMs) were provisioned. I also setup my lab so that when the queue drained out the VMs were de-provisioned. That wasn’t in the lab manual but you’d want it in production. This is some reasonably advanced workflow that I was able to make work in an hour or so and all using a GUI.
I can see why AWS is so popular with developers. There are a heap of well thought out services that can be consumed. No long wait times for the networks team to setup a load balancer, we did that in a few minutes too.
This is certainly not a direct replacement for vSphere. There are things that are easy to do in vSphere that AWS doesn’t do, but you shouldn’t try to use AWS to be vSphere. As an example VMs come in specific hardware configurations in a catalogue. If you want a VM with more RAM it may also have more CPU because that is what is in the catalogue.
Applications do need to be written with AWS, or any cloud, in mind to get the best value out of cloud infrastructure. There are a small number of guiding principles in how you make your application work on AWS.
I thoroughly enjoyed the two courses and recommend them to anyone who needs to understand how AWS works and what your developers are getting from AWS. Of course the target audience is application architects. People who need to see how to use AWS as a platform for their applications. For this the course would be a great starting point, with the Advanced Concepts course to follow. AWS Training also have courses for developers and operations teams, which have their own focus.
© 2014, Alastair. All rights reserved.