Understanding Azure's deployment options is a critical first step in any development project. This course will explore the storage, compute, container, and data platform solutions Azure provides that can best align with your application requirements.
With so many options available, deploying a new or existing application into the cloud is as much figuring out Azure's services as is it documenting your application's requirements. In this course, Designing Deployments in Microsoft Azure, you'll analyze your application's requirements to get a feel for which Azure services best fit. First, you'll prepare your deployment strategy, getting a feel for how Azure evolves many of the practices in traditional application development. Next, you'll dig deeper into the storage and compute deployment strategies that match Azure's services with your application's needs. Finally, you'll explore Azure's many container and data platform solutions, with the goal of aligning Azure's capabilities with your application's requirements. By the end of this course, you'll be armed with the knowledge you need to begin designing your application's deployment in Microsoft Azure.
Course Overview With so many options available, deploying a new or existing application into the cloud is as much figuring out Azure's services as is it documenting your application's requirements. I'm Greg Shields, Author Evangelist, and a full-time author here at Pluralsight. And in this course, Designing Deployments in Microsoft Azure, we'll analyze your application's requirements to get a feel for which Azure services best fit. First, you'll prepare your deployment strategy, getting a feel for how Azure evolves many of the practices in traditional application development. Next, you'll dig deeper into the storage and compute deployment strategies that match Azure's services with your application's needs. Finally, you'll explore Azure's many container and data platform solutions with a goal of aligning Azure's capabilities with your application requirements. By the end of this course, you'll be armed with the knowledge you need to begin designing your application's deployment there in Microsoft Azure. Let's get started.
Preparing a Deployment Strategy Let's begin then with the beginning where we talk about preparing our deployment strategy for this application we're looking to build. It's here where we want to talk a bit about just how the cloud evolves many of the application development practices that we may have been working with in the past. I want to talk here first about just the scale of cloud deployments, helping you understand, well, for what kind of user consumption model do you need to bring other services then to bear? As part of that, we also need to understand the requirements then for governance of that application and its resources with a goal towards constraining the consumption of those resources down to just what is appropriate then for that application's use. You're probably aware that every service here at Azure, really, any cloud-based service, is priced based on consumption. And so being careful, being very conscious about the different services you're using and how you're using them will have a very big effect on what the bill will be at the end of the month. I'll talk a bit also here about the different network considerations that you should be prepared for, just understanding that here in the cloud we have some slightly different things we have to consider in relation to what exists in the cloud, what exists between the cloud and our services here in our internal on-premises environment, and then how that cloud then interacts also with our users out there in the rest of the world. Azure obviously is a global service, and as part of that global service, it exists in many different locations. But exactly where those locations are, where the regions are, what services exist in which regions, and how I can combine them with different Availability Zones to ensure the best resiliency for the application I'm building is also an important consideration when we really start thinking about exactly what this application will do. And you really can't talk about preparing for any application development process without thinking also to security. We'll talk a bit here about just some of the special security requirements you do have to think about when you're building an application there in the cloud.
Design a Storage Deployment Strategy Now if that last module was up at the 20, 000-foot perspective, for the remaining 4 here, let's bring things down to about the 200-foot level where here in this next module we go through the design for our storage deployment strategy. It's here in this module where I want to talk a bit about some of the different Azure storage models that exist and then also, once we've introduced them, take a look at the different requirements or how the requirements that you have for your applications can drive you to some of the different solutions that Azure provides. You can see here a rather long list of options that Azure provides for how you'll store the different kinds of data that you have. And so it's our mission here in this module to get a feel for what kinds of data your application will be generating and then how that will translate into the kinds of services that you'll then need to subscribe for as you continue the design and build of your application.
Design a Compute Deployment Strategy When those new to cloud deployments first think of cloud, they tend to think of computing, or computes, as the first thing that comes to mind. The compute, as we've learned here, is only one of the many things that are considerations in building an application. That said though, we do need to focus on the different ways in which compute can be, well, processed in any application we're creating here in Azure. In this module, we're going to talk about the different computing models that Azure presents starting first by just introducing what those models are. I want to break things apart into four major categories here, infrastructure as a service, containers, platform as a service, and also serverless compute, and then dig deeply into each of these based again on the requirements for your application to help you figure which computing model might make sense for how your application will ultimately be created.
Design a Container Deployment Strategy Depending on who you ask, containers are either as hot or an even hotter technology than virtualization was a generation ago. One of the reasons for this significant interest in container technologies is in how containers integrate quite well with the usual practices of your regular developers. Our conversation here on designing a container deployment strategy takes just a piece of our immediately previous module and digs a bit deeper into the many different solutions that Azure provides for enabling and managing the containers that your application requires. Here in this module, we'll start by introducing the different container services that you might find. From there, then we'll dig deeply into the five major ones that you may bring to bear depending on both the requirements of your application, as well as also on your operations team for how they will manage the container infrastructure your developers will be coding against.
Design a Data Platform Deployment Strategy A good systems architect may argue that our last module here in this course might be one of the very first things that you should think about. It's here in this final module where we talk about the different data platform deployment strategies that you can bring to bear depending on what kinds of data you anticipate then ingesting. Here in this module, I want to start first by talking about the different data platform requirements that exist. So what exactly are we looking for out of a data platform for an application that resides in the cloud? And then from there, as we've done with the other modules here so far, I want to dig into some of the Azure solutions that exist that can then be right sized for that data requirements needs that you have. We'll spend some time here understanding what the differences are between Azure's different solutions and why you might incorporate one versus the other, as well as more than one different option depending on why and how long you plan on keeping that data.