
close
close
In this post, I will explain the two ways that you can deploy a web-based application in Azure. One will be familiar to IT pros because it builds on the familiar infrastructure-as-a-service (IaaS) concept of networks, storage, and virtual machines. The other will be less familiar because none of those things will be used in the platform-as-a-service (PaaS) alternative.
This post is the result of a journey that I have started. How far I will get with this is unknown! I have started to learn the developer side of Microsoft Azure because my customers have started to move in that direction. I do not plan to abandon the infrastructure world because it will continue to play a big role. I need to stay with or ahead of my customers. Otherwise, my role as an advisor will be redundant. As IT pros, I think we all need to be advisors and therefore, I think we need to know the options.
If you are deploying a web service in Azure, then you are going to be deploying and enabling familiar concepts from the available Azure services.
advertisment
One such architecture is shared below. It is from the collection of reference architectures that is published by Microsoft.
A Microsoft Reference Architecture for a Virtual Machine-Based N-Tier Web Service [Image Credit: Microsoft]
Let’s imagine that you are a developer. You are building an application that will be hosted in the cloud. Azure has been selected. All you care about is your application. Everything else is irrelevant. You do not know anything about networks, firewalls, Windows/Linux, storage systems, and all that stuff. More importantly, you do not want to know about that infrastructure stuff because your expertise is writing code. You are building a new service. You have been asked to either build the above architecture or that you will be given it to look after. This includes:
What does any of that have to do with developing or running an application? What if there was a way to run a website without running a web server? That sort of thing has existed for years. Hosting companies, such as GoDaddy, have been operating web hosting for a long time. Give them a few dollars a month and you can run your site on Windows or Linux without worrying about an operating system. I used to work for one such hosting company. I can tell you that while this sort of service is great for brochure sites, it is not something to build a business upon. There is no high availability, scale out/up is limited or non-existent, database services are limited, and there is no ability to process and consume data.
Azure PaaS offers the simplicity of web hosting. It comes with the power of application processing, data analytics, the potential of Machine Learning, or artificial intelligence if chrome cyborgs do not scare you, and more.
The Azure service fabric abstracts web services that are hosted in virtual machines. You tell Azure that you want to run a feature called a Web App. Azure provisions the virtual machine and takes care of everything else. All that is left for you is to configure the site settings, write your code, and get it onto the site. There will be no machines, firewall rules, operating system, or any of that distracting infrastructure stuff that can go so wrong.
Compare the below reference architecture for a highly available and scaled-out web app deployment in Azure. The below is comparable to the previous IaaS-based architecture:
This much simpler architecture has also been optimized with a few extra elements:
advertisment
A Reference Architecture for a Highly Available Azure Web App [Image Credit: Microsoft]
I recently witnessed a pair of competing resellers go head to head. One went with infrastructure and one went with Azure PaaS. It was not even close to a fair fight. The reseller that had invested in skills won the contract and probably did so with much more margin going towards services. This is more profitable than infrastructure or licenses.
I understand the fear. PaaS is new stuff and it sounds like I will be telling you to install Visual Studio next. I will not. Even though, a dev can actually deploy and maintain their code entirely from Visual Studio without firing up the Azure Portal! I understand that PaaS is not for everyone. The fear of lock-in often drives customers to the more expensive and feature-poorer infrastructure alternative. Those features and lower costs are tempting and they are making a difference in business today.
I asked a bunch of Azure PaaS veterans for advice on how to expand my horizons into their hemisphere. Almost all advised me to start in web apps. I understand why. Most of us have deployed a hosted website at some point and this is a starting point. To be honest, there is tons more to Azure Web Apps and I am having fun learning about it. It is actually not hard. I have gotten some cool stuff working with little effort, such as code deployment, dev/test/production deployment slots, authentication via Google/Azure AD, scale out, and more. And I have not started Visual Studio once!
More from Aidan Finn
advertisment
Petri Newsletters
Whether it’s Security or Cloud Computing, we have the know-how for you. Sign up for our newsletters here.
advertisment
More in Microsoft Azure
Build 2022: Microsoft's Intelligent Data Platform Combines Data and Analytics
May 25, 2022 | Rabia Noureen
Microsoft Revises Restrictive Cloud Licensing Policies to Avoid EU Antitrust Probe
May 19, 2022 | Rabia Noureen
Microsoft's Azure AD Conditional Access Service Can Now Require Reauthentication
May 13, 2022 | Rabia Noureen
Microsoft Addresses Cross-Tenant Database Vulnerability in Azure PostgreSQL
Apr 29, 2022 | Rabia Noureen
Microsoft Simplifies IT Monitoring with New Azure Managed Grafana Service
Apr 19, 2022 | Rabia Noureen
Most popular on petri
Log in to save content to your profile.
Article saved!
Access saved content from your profile page. View Saved
Join The Conversation
Create a free account today to participate in forum conversations, comment on posts and more.
Copyright ©2019 BWW Media Group