Posted by Dana Epp
Cloud computing in Azure : IAAS vs PAAS vs SAAS vs PIZZA🍕?
Choosing the right flavor of cloud computing can really help you modernize your Cloud IT stack, and allow you to pay as you grow with the right compute at the right time.
It is surprising how many times I talk to Azure administrators to find out they only think about virtual machines in the cloud. There are so many other excellent options to consider, including:
- Azure Container Instances
- Azure Kubernetes Service (AKS)
- Azure Functions
- Logic Apps
- Azure Web Apps
- Azure Web Apps for Containers
... just to name a few.
Microsoft offers a ton of different options allowing you to build out your Cloud IT infrastructure however you like. From managing the infrastructure yourself all the way to having them take care of almost everything, including the applications right in the Microsoft Cloud.
It got me to thinking that sometimes its hard to relate the different options. I once saw it explained using pizza 🍕. I found this chart helpful when trying to explain that (hey, I was hungry at the time I was thinking about this...)
Anyways, I go into more detail about this in the latest episode of #KnowOps. You can check it out below. Don’t forget to subscribe to the KnowOps channel and get early access to the loads of other information to help you master the Microsoft cloud by signing up for the KnowOps Newsletter.
Modernizing with Cloud IT is more than hosting infrastructure and Azure with virtual machines. There's so many options available for cloud computing that you really can propel your business faster and further if you just know about and embrace some of the new modern options that allow you to get more compute done in faster periods of time and allow your business to get stuff done faster without you having to manage so much of the infrastructure. Maybe we should talk about that a little bit. Oh, wait a second. That's the pizza guy, one sec.
Hey, Dana Epp here. Welcome to the show that helps Azure administrators to know ops and, well, master the Microsoft cloud. You know, just before I get into this pizza here, when I think of cloud computing, I think pizza might be a great analogy to try to help understand the different options that are available. Think about it for a second.
When you make a pizza at home, you're in complete control of it, right? You make the dough, and you put on the sauce, and you select the right cheeses and the right toppings, and you're responsible for cooking it. When you're done, you're gonna cut it, and serve it up, and hey, it's great. And it's built exactly the way you want it. I think that's a great way of explaining infrastructure we have to manage on-premises, right?
And then we start thinking about options that are in the cloud. I think of a take-and-bake pizza where you don't have to worry about the crust or the ingredients. That's all take care of for you. And then you just have to go to the freezer, and pick it out, and bring it home, and then cook it up. You're still responsible for the electricity, and the oven, and making sure it's all there, and cutting it up, and serving it up.
Of course, we could just as easily pick up the phone. In which case, you didn't have to think about of that stuff. You make the order, but they take care of all the ingredients. They take care of cooking it. They take care of all electricity. They deliver it to you, and you just gotta enjoy it.
Of course, if I wanted to, I could go to a really nice pizza place myself, and just go in, dine in, eat there, and take care of it.
I think of making pizza at home is like your On-premises infrastructure. Those take-and-bake pizzas from the frozen food isle, that's like your Infrastructure as a Service. And delivery, that is Platform as a Service. It's got some things you're still responsible for, but ultimately, mostly taken care of. Then, of course, the piece de resistance it's having that SaaS, having that pizza place you can go into and it's all taken care of for you. What's interesting is we can kinda correlate that to lots of different types of solutions available in Azure. Let's use SQL as a good example.
You can easily go rack, stack, and cable infrastructure and have that runnin' on-premises for you. You're responsible for installing Windows, and you're responsible for setting up SQL server and getting the licenses and taking care of all that. And that's how we've always done it. Of course, these days, you can go into the Azure Marketplace and you can buy the virtual machine compute you want, and it can be pre-installed with Windows Server and with the SQL server you want. Microsoft even goes so far as to make it available so if you wanted a clustered SQL infrastructure, you can buy that which'll give you a full set of VMs properly configured for their default configuration.
But what if you don't want to manage that?
You know, it's possible when you infrastructure that you have to take care of that that may not be your strong suit, that may not be your expertise. So why worry about that? There's options in the Platform as a Service where you can use something like Azure SQL Database where you don't have to worry about the infrastructure at all. You don't have to worry about its configuration. You just host your data in the cloud using SQL Database. Now, maybe you have a application that isn't capable of using Azure SQL Database yet, and that exists. Well, then you have things like SQL Database-managed instances, which is literally Microsoft taking advantage of their expertise, and they're administering SQL Server for you in the cloud. Or, you can all the way up to modernizing on new data stores that you haven't thought about before like Azure SQL Data Warehouse or even moving to a no-SQL solution like Cosmos DB.
There's so many different options that allows you to have the right flexibility and exchange cost for savings, and time, and effort, from an administrative point of view. And I think that's one of those things that missing today is that we don't always look at those options available to us. We're so used to maintaining and managing that infrastructure, that sometimes we have our blinders on and we're not looking at the new modern way that compute may be available to us.
Now, I'm not a SQL guy. I'm not a guru when it comes to that kind of stuff. But what I find interesting is that I can leverage Microsoft's expertise and take advantage of some of those services, especially for the Platform as a Service so that the common stuff, they take care of it. So then our engineers focusing on the data layer can leverage the cloud technology the way it's meant to be. But it's more than just data because we're modernizing applications these days, so it's always just your typical client server application. You now can take advantage of event-driven, modern applications that are built out in many ways, even in serverless technology. You know, it's not just about running compute through an Azure Virtual Machine. You can take advantage of using modern web apps, containerizations, thinks like Azure Container Instances, giving you just-in-time compute when you need it to only do execution.
So, as an example for me at work, we have a bunch of reports that need to get generated every single week. And instead of having to worry about scaling that up all the time, we just use ACI. We use Azure Container Instances, we've built out containers specifically to do the jobs we needed to do, and then we use a scheduler through an Azure Function that will load up that container, execute, do the work, store that securely in Azure Blob Storage, and then give us the ability to alert us that the reports are ready. And all of that become a more modern way of taking advantage of compute in a way that makes more sense for us. As we've been growing, we've been able to scale that out so that we can get that same amount of compute done in a shorter period of time. And that's because we take advantage of things like Azure Functions, and events, and the Event Hub to be able to drive that stuff together. These are all just different parts of where compute works out.
So anyways, when you're thinking about compute, you have Infrastructure as a Service, Platform as a Service, Software as a Service, find the one that makes the most sense. The most sense in come cases may be, if you're not an expert in that area and Microsoft's able to provide and deliver those services for you, what's the total cost of ownership for you? What options are available? Check them out because you might find, in many ways, it's a lot easier than you think. And if you gotta sit here with a pizza, which is smellin' so good right now, just remember you can always make it at home. That is your on-premises infrastructure. In a hybrid, you can continue to do that, while at the same time, you can modernize, and lift and shift, and move of some of the stuff into the cloud, and take advantage of that Infrastructure as a Service, that take-and-bake, so to speak, to make that some of that stuff that you don't need to worry about, we don't need to rack, stack, and cable everything anymore. We can move from a more CapEx model to an OpEx model so we can pay as we grow, which is I think a better term than pay as you go. Because at the end of the day, we pay what we need, and that's starts to be very useful for us when we're trying to get more work done in less time.
I can get infrastructure up a lot faster in the cloud than when I have to order infrastructure and have that brought into the data centers. The other side is think of the Platform as a Service, why even worry about them monitoring in the management of that infrastructure if we don't have to? In many ways, I look at that as pizza delivery, it gets you what you want so that you can get down to enjoying what you need. Then, when those options work, look at the Software as a Service play. Because if they can take care of everything so you just need worry about the data, and your users, and their access to that data, that allows us to focus on meaningful pursuits in our business that help grow it instead of worrying about the infrastructure stuff that we don't need to worry about if we can help to delegate some of that, not abdicate, but delegate some of that stuff to the cloud vendor like Microsoft.
Well anyways, I hope that's helpful. I really need to get into this pizza. I'll talk to you in the next show. I hope you'll subscribe. I hope you'll hit Like. Let us know what you think in comments. Hey, let me know what's your favorite pizza. Put that in the comments. That's probably more interesting anyways. Till next time, we'll talk to you in the next video.
...when I think of cloud computing, I think pizza might be a great analogy to try to help understand the different options that are available #knowops @auditwolf