Join Paul Hacker for an in-depth discussion in this video Overcome deployment obstacles with Azure, part of Continuous Delivery with Azure DevOps.
- [Instructor] Let's talk about our Microsoft Azure environment. The first thing I want to talk about is overcoming some of the obstacles you may face today in your data center when you're using on-premises servers and you're not using a cloud-based system such as Azure. There's four of them I want to address, standardization, repeatability, auditability, and versioning. Let's start with standardization. By standardization, I mean the standardization of the equipment by which we have set up in our data centers.
We may not have a standard set of hardware across the data center that we're deploying our application to or that our application is running on. We may have one vendor's hardware over here, another vendor hardware over there. We may have different hardware specifications, so we may be running i7 Processors over on one set of hardware and dual Xeons on another. We may be running SSD hard drives on one set of hardware and spindles on another. We might be running 128 gigs of RAM on one and 256 gigs of RAM on another.
So, we don't have, a lot of times, standardization across the enterprise in terms of the equipment that we're deploying to or that we're running our application on, and this can get in the way of our deployment and the performance of our application. Mainly the deployment of our application in terms of, is it going to be able to handle our deployment? Do we have enough hard drive space available for us to be able to deploy to? So, again, you may not meet the specifications necessary for our application to work correctly. Next off is repeatability.
How well can I repeatably deploy more infrastructure as needed? So, how easy is it for me to come in and drop in a new server in my data center if I need it? It could take weeks, could take months, who knows? And will that piece of hardware be just as reliable and just as standard as the rest of the equipment that I have? Maybe, maybe not. It might be that I haven't bought hardware for six months, so I'm using newer processors, newer hardware, different types of hardware.
And again, the repeatability process. How fast can I repeatably deploy the same infrastructure time and time again? Again, it's going to take me weeks and months to do that. Auditability. What's being changed in my data center? How's it being changed? By whom is it being changed? When's it being changed? Access, who has the access to my servers? Has that changed? Who's changed it? How did they get access when they weren't supposed to? All that type of information can be available to you in Azure through an auditing process.
And then versioning. Can I version any of the scripts that I have for deploying any of the information that I have onto my hardware? With Azure, we can obviously overcome the obstacle because we don't really version, on-premises, our hardware. But with Azure, we have the ability to version the infrastructure that we're going to deploy time and time again. So, Azure allows us to standardize on a simple set of hardware that we can then use.
It's one single set. We know that wen we order a server of type X, every time I go and I deploy, I'm going to have server of type X. Repeatability, I can repeatably deploy the consistent hardware necessary on a regular basis. Like I mentioned, I can audit. Who has access? Who made the changes? Who increased the size of my server? All that information can be tracked and can be used in an auditing tool.
And versioning, which we'll talk more about in future videos on how we can version and deploy our infrastructure as code, as code files in our versions as part of a version control system. So, we'll continually and repeatability deploy the same infrastructure over and over again, and that's what Azure brings to the table when we're talking about continuous delivery with Azure DevOps.
- What is DevOps?
- Release pipelines
- Azure environments
- Azure Resource Manager (ARM) and ARM templates
- Deploying to Azure App Services
- Installing and configuring agents
- Running CI builds
- Creating a CD release pipeline
- CI/CD in action in Azure