Ahoy, there! It’s 2021, and with increased demand for platforms like Microsoft Azure, this is the perfect time to explore the cloud computing world! Any one looking to level up their career can do so by developing cloud skills. There’s glory to be earned — just follow the (learning) paths and conquer the “c”(ertification) monsters for your final challenge!
Let’s Go Adventuring!
But where should an intrepid adventurer start? Whether you’re a beginner, or an experienced IT professional or application developer, the answer is the same. Learn the fundamentals. Then earn industry-recognized certifications to validate your knowledge. And explore those ideas in a real cloud environment, to translate abstract “knowing” into applied “doing.”
Why start with Microsoft Azure? Azure has 200+ products and services to help you “build, run and manage applications – across multiple clouds, on-premises and at the edge — with the tools and frameworks of your choice.” And with 95% of the Fortune 500 using Azure, having an Azure Fundamentals certification can become a valuable investment to jumpstart your cloud career.
Start with Azure Fundamentals! (A Cloud Guru’s Microsoft Azure Fundamentals course is free for the month of February, along with several other courses from ACG’s library of hands-on Azure courses.)
Self-study can be challenging, but here are some things that help me. Using a habit tracker to stay accountable. Joining a Cloud Skills Challenge (like this one) to make it fun! Completing it may also give you discounts on certifications. And don’t forget awesome community resources like study guides, online courses, and discussion forums. Here are my favorites:
- A Cloud Guru’s AZ-900: Microsoft Azure Fundamentals course with hands-on labs
- How to Prepare For A Microsoft Azure Certification Exam from Cloud Advocate Thomas Maurer.
- Microsoft Learn Tech Community to meet other learners, share experiences, and get updates.
Visualize IT: “Is that a Truck in my Cloud?”
Why wait? Let’s jumpstart our learning journey with an Introduction To Azure Fundamentals. I’m going to use a visual storytelling approach to explain it. Why? Because 65% of us are visual learners! We like to see “the big picture” and can absorb information faster from images (vs. text). And, it helps us retain and recall those ideas better.
Visual storytelling is about using a visual vocabulary (with colors, fonts, icons, and graphical elements) to capture core information (e.g., by sketchnoting) or communicate complex ideas (e.g., using visual metaphors). Our brains are wired to detect patterns and “connect the dots” to familiar images or concepts, helping us transfer learning to better understand new things.
Here’s an example of a visual transport metaphor that I use to understand cloud computing. By definition, cloud computing is the “delivery of computing services over the internet, using a pay-as-you-go pricing model.” What related concepts can help us make other connections?
For me, it was the term “delivery” that inspired this metaphor. In my mind, I envisioned cloud servers (trucks) delivering the services (products) over the internet (public roadways) from the businesses (on-premises) to the customers (in regions). It wasn’t perfect — but it worked!
Now, I could relate to the idea of pay-as-you-go pricing — paying only for what you use in the cloud — using the analogy to utilities (e.g., tolls, parking meters). Businesses can rent resources (access to bridges, spaces) rather than own them outright. In return, they waste fewer resources (no idle time for owned assets) and are more agile with changes (take a different route at rush hour).
Visualize IT: “From Fixed Trucks To Flexible Tractor-Trailers!”
Still with me? Let us see if we can build on this metaphor with a sketchnote Introduction To Azure Fundamentals. The “describe core concepts” skills needed for AZ-900 are:
- Definitions — cloud computing, shared responsibility model.
- Cloud Computing Types (Deployment Models) — public, private, and hybrid, and comparison.
- Cloud computing Benefits — high availability, scalability, elasticity, disaster recovery, and agility
- Cloud Service Categories (Service Models) — IaaS, PaaS, SaaS. Plus, define serverless computing
The sketchnote above summarizes the module contents as we break them down with Microsoft Learn, but let me see if we can use the truck metaphor to grok some of these concepts in a way that helps us expand our understanding.
Setting The Stage: Cloud Machines and Tractor Trailers
The “cloud” consists of server machines (hosted in data centers, managed by cloud providers). It is accessible to businesses (aka cloud tenants) and business clients (aka cloud customers) over the internet, supplying global access to those resources.
I think of a “server” as having three parts: the physical hardware (infrastructure), the business applications (software), and the operations middleware (platform) between them.
- Infrastructure = processing, storage, networking
- Platform = operating system, application runtime, and value-added support services
- Sofware = business applications (user interfaces and experiences + interaction data)
In a physical machine, the infrastructure and platform are tightly coupled. The resource can be under-utilized (when the load is light) or under-performant (when the load is heavy) — making it less cost-effective in the long run.
A virtualization layer abstracts the hardware (infrastructure) from the middleware (platform), creating a virtual machine (VM) “sandbox” that can run on different hardware “chassis” without the platform components necessarily being aware of underlying changes or differences. Now, the same physical hardware can host multiple VMs that optimize resource usage, and a VM can be spun up on different physical host machines on demand to support load or requirement changes.
Training With Cloud Playgrounds
Looking for a risk free way to deploy applications? A Cloud Guru’s Cloud Playground is your go to cloud sandbox service for both individual learners and enterprise teams.
Great! But how does this fit our transport analogy. Let’s see if this analogy works:
- A physical machine is like a single-body truck. The cab (“tractor”) and the platform (“trailer”) can’t be used separately here — so our truck capacity may be under-utilized (in light load) and over-loaded (insufficient space) as customer demands rise.
- A trailer hitch is like a virtualization layer. By separating tractor from trailer, we can now support more flexible configurations to suit the demand. The business can scale up (add more trailers to the same tractor) or scale out (add more tractor-trailer instances) to suit demand changes or requirements. And, we have more flexibility in trailer types now.
Chances are, if you think about it more, you might be able to explore other analogies in context.
Why Move to the Cloud: “Cheap + Unlimited Tractors/Trailers – Worldwide!”
Traditionally, businesses owned and ran their own servers “on-premises,” taking on all the costs and effort for server maintenance and upgrades. It’s analogous to owning a fleet of trucks so you can deliver your services. With virtualization, businesses can separate their infrastructure (truck) from their platform (trailer) options and gain the flexibility to rent (vs. own) either resource from third party providers. Services can still be delivered —but outsourcing maintenance reduces their operating costs and gains them the ability to scale usage as needed.
Here, cloud providers are like global transport companies with nearly unlimited tractors, trailers at their disposal, available in locations worldwide. Cloud tenants (businesses) can rent what they need (resources), when they need it (demand-driven, configuration-based), where they need it (geo-distribution), to supply the best delivery performance and experience to their customers.
Cloud providers are now also like utility companies who attach meters to all the resources they rent, so that you get charged only for what you use. The economies of scale (“the more you make of something, the less it costs to make it”) makes renting cloud resources cheaper in the long run when compared to overheads of buying, and maintaining, your own server resources.
Cloud Computing Types: Understanding Deployment Models
Armed with this analogy, let us tackle cloud deployment models! There are 3 cloud types:
- Private = computing resources are used exclusively by users from one business or org.
- Public = services offered over public internet, to anyone who wants to rent them.
- Hybrid = environments combine both, sharing data and applications between them.
Now let’s look at this through the lens of our tractors and trailers analogy.
- Private cloud = business owns and manages its own fleet of trucks. You have full control (data, security) and take on all responsibility (cost, maintenance).
- Public cloud = you rent trucks from a global company that everyone else uses as well. Resources may be shared or reused, and SLAs help you set up cost-security tradeoffs.
- Hybrid cloud = you own some trucks/trailers and rent others – so your products and customer data may be used with both. Gives you a good migration path from private to public cloud, where you transition your operational responsibilities incrementally.
Cloud Computing Service Models: IaaS, PaaS, SaaS
The deployment models enable cloud migration paths (from on-premises to public cloud) iteratively, helping you balance security-cost tradeoffs while evaluating impact on your business.
- Virtualize physical machines = replace owned single-body trucks with tractor-trailers
- Move virtual machines to cloud = hitch owned trailers onto rented tractors (hardware)
- Move to virtual cloud services = replace owned trailers with rented trailer services
- Focus on innovating my software = focus on improving products, not managing infra
Now, I pay-as-I-go for things I rent, and no longer have to pay for (or think about) maintenance of hardware or platform components. And I can effortlessly take advantage of the latest new hardware or platform enhancements for performance or innovation improvement.
This leads to our next topic: Cloud Computing Service Models. There are three types:
- IaaS (Infrastructure as a Service) = closest to managing physical servers machines. The cloud provider maintains the hardware, tenant manages network, VM (and apps).
- PaaS (Platform as a Service) = a managed hosting environment. The cloud provider manages virtual machines and networking, and tenants deploy/manage their apps.
- SaaS (Software as a Service) = a managed apps environment. The cloud provider takes care of all aspects of app environment (VM, networking, apps and data storage). The tenant brings their customer data and configures/uses the app service.
How does that look from the lens of our transport analogy?
- Iaas = you rent the tractor, and bring your own trailers (with your products)
- PaaS = you rent the tractor, and tractor-compliant trailer services – focus on products
- SaaS = more nuanced but think of this as productivity services for your product that you previously built in-house but are now a commodity so you can rent them instead. All you need to do is migrate your customer data to use the new service.
Cloud computing benefits: the –ilities value!
Migrating to the cloud gives you “ilities”. Let’s revisit these in our transportation metaphor to see if we can understand them intuitively.
- Reliability = your customers see no apparent downtime (based on SLA). It’s like having unlimited tractors/trailers means you can deal quickly with failures by replacing things and allowing delivery to continue without interruption.
- Scalability = ability to adapt to varying loads or requirements by scaling up (capacity) or scaling out (instances). It’s like adding more trailers to a tractor (vertical scaling) or adding more tractor/trailer instance to your delivery plan (horizontal scaling).
- Elasticity = ability to configure your deployment to suit varying needs. It’s like a tractor with many trailer hitch options. Simply customize it for the loads you need right now.
- Agility = speed with which configuration changes can be made to a deployment. Think of this as a “pit stop” for a racing truck. How quickly can the system (pit crew) reconfigure the service in real time, and have it back in the race so it is still competitive?
- Disaster Recovery = ensure application (customer) data is safe no matter what happens. In our transport analogy, this is like adding options to protect your shipment (mark as fragile), monitor its status (add tracking id), replace it if it gets lost (add insurance) etc.
This was a long post, but hopefully it’s a useful one in two contexts. First, I hope it jumpstarts your interest in cloud computing, and motivates you to study for AZ-900 certification. Second, I hope it inspires you to explore visual storytelling techniques to build your understanding, retention, and recall, of these materials.
Use the sketchnote to refresh your memory. Better still, explore your own visual metaphors and create your own visual notes and share them. Visit cloud-skills.dev, my sketchnotes repository. Submit a PR to have your sketchnote included — or follow my Visual Azure project to explore more of my visual storytelling adventures in Azure Fundamentals land.
About the author
Nitya Narasimhan is a PhD in Computer Engineering, with 20+ years of software research & development experience spanning distributed & ubiquitous computing, mobile & web application development. She is currently a Cloud Advocate in the Microsoft Developer Relations team where she spends her time on mobile and cross-platform development (for Azure and Microsoft Surface Duo), visual storytelling, and supporting our amazing developer communities.