I’ve spent over three years now working 40 hours(ish) a week on a cloud platform. My jobs have included helping debug issues on that platform, helping design, code, and deliver a production SaaS solution on that platform, teaching developers how to build cloud oriented solutions on that platform and most recently helping customers in the earliest phases of thinking about using that cloud platform for their business. Now in my case 99% of my time has been spent making that a reality on Windows Azure.
Recently though the wind has started to swirl a bit for me in my design and architecture discussions. It’s always started with the typical why cloud rhetoric but I do feel like much of that is now in the past for customers. Most folks really are starting to get it and they want to figure out great ways to use this elastic commodity often throw away infrastructure. Obviously I’m speaking from the point of view of someone looking to pay .05 an hour to use a machine in some other data center here. No one would call their own hardware disposable … right 🙂
The last few months have been very interesting for me and it’s mainly because of the fact that I’m starting to get past those introductory discussions and into making things real. That’s put me neck deep in comparing how to do key workloads in Azure versus AWS. I’ve always had deep respect for what Amazon has been able to do with their cloud platform and I confidently can claim that I know about 40% of their services at maybe a 200 level of depth. I know … how impressive. So the big dilemma now is how to get deeper understanding of those services so I can be better equipped to discuss strategies for moving to the cloud. The broader world of cloud is starting to open up for me now and I want to drink it all in.
That brings me to the point of this blog post, I am officially going to commit time and energy as I go into 2014 to do real implementations of key workloads that I keep getting asked about in both AWS and Azure and document my experience. I will be extremely candid about my experience and I will explain where things are complex, challenging, expensive, or just simply a pain in the ass. This is the only way I know how to get that deep understanding … it’s time to stop reading about it and actually DO IT!
My First Experiment
This is probably a good time to mention that this blog is my own personal blog with my own personal opinions that have no reflection on my employer … there I’m covered right 🙂 Seriously though, I will begin next week with my first “experiment”. That experiment is setting up a disaster recovery scenario for a public facing web site. The whole disaster recovery scenario for a cloud provider is freaking huge because of the potential cost savings and geographic distribution. So how then can we do this in both environments. I’ll be exploring Global DNS fail over and cold versus warm stand by’s and how to synchronize data and of course features of the networking stacks on both platforms.
Should be fun, I sure do hope I get a bunch of Amazon gift cards for Christmas so I can help subsidize that AWS bill that’s about to start showing up on my Amex 🙂
If the disaster recovery experiment doesn’t get you excited then here are the first five experiments I plan to run. I will likely do about one month so this should keep me super busy.
- Implementing HA database servers (likely SQL Server since I’m a bit of an Oracle newb)
- Doing real elasticity on a multi-tiered web app based on spikey traffic
- Automating a multi-tiered deployment
- Setting up a Site 2 Site VPN tunnel to my home office
- Implementing a snapshot strategy for backup/restore