The Azure resources that everyone gets for free is pretty impressive. I am a big fan of Azure Functions and the way they evolved and how they (and similar offerings) fit into the cloud ecosystem. They are #2 in our list today, but I look forward to spending a week or more talking about the how and the why of them. For now, let's get through the inventory of resources available to us.
The first three always free resources are App Services, Azure Functions, and Active Directory. App Services are platform as a service (PaaS) locations where we can run code. The code can take input and return responses. The input can be a request for a resource like a web page and the output the page, or the input request could be a more formal REST call done by a program. The main point is that the programs are always sitting and waiting to service requests. Azure Functions are PaaS locations where we can run code also. The code can take input and return responses. The main difference is that Azure Functions are not sitting around waiting for requests like App Services do. They are instantiated when a request comes in and destroyed when the response is returned. The difference is somewhat subtle, but important. Very important. Last in the top 3 is Active Directory. This is a PaaS offering of Identity Management. Microsoft Active Directory (AD) is where we will store accounts and can be used to store rights. AD is used to help us solve the twin problems of Authentication and Authorization. You will often see these abbreviated as AuthN and AuthZ. Simply, prove who you are and what you have rights to do. A drivers license is an AuthN/AuthZ artifact. It is used to prove your identity and also your right to operate a motor vehicle.
The next free resource is Active Directory BC or ADBC which is used for storing customer identity and authorization. The next is Service Fabric Containers which is a container orchestration and container ecosystem. Containers are just ways of packaging our code (similar to App Service and Azure Functions) and an orchestrator just makes sure it is running. Oversimplification, but we aren't going to dig into them for a while because this free is just the orchestration layer. We would need to pay for the compute time used by the containers running underneath. It wouldn't be much, but it would be more than nothing. Last in our current trio is Azure DevOps or Azure Development and Operations toolkit. This is our source control, build and deploy automation, and SDLC (software development lifecycle) management tool combined. When we write code, we will store it here.
Our next two are more tooling to help build software. The first is Application Insights which is a central log consolidation and dashboard tool. It lets us monitor our application and resources from a central location. Next is DevText Lab which is a testing automation suite to help us test our application. The third in this row is the Azure Security Center which consolidates all of the policies and monitoring of our resources and application into a single location.