DevOps architecture design
The term DevOps derives from development and operations. It refers to the integration of development, quality assurance, and IT operations into a unified culture and set of processes for delivering software. For an overview of DevOps, see What is DevOps?.
DevOps includes these activities and operations:
- Continuous integration (CI) is the practice of merging all developer code into a central codebase frequently, and then performing automated build and test processes. The objectives are to quickly discover and correct code issues, to streamline deployment, and to ensure code quality. For more information, see What is Continuous Integration?.
- Continuous delivery (CD) is the practice of automatically building, testing, and deploying code to production-like environments. The objective is to ensure that code is always ready to deploy. Adding continuous delivery to create a full CI/CD pipeline helps you detect code defects as soon as possible. It also ensures that properly tested updates can be released in a short time. For more information, see What is Continuous Delivery?.
- Continuous deployment is an additional process that automatically takes any updates that have passed through the CI/CD pipeline and deploys them into production. Continuous deployment requires robust automatic testing and advanced process planning. It might not be appropriate for all teams.
- Continuous monitoring refers to the process and technology required to incorporate monitoring across each phase of DevOps and IT operations lifecycles. Monitoring helps to ensure the health, performance, and reliability of your application and infrastructure as the application moves from development to production. Continuous monitoring builds on the concepts of CI and CD.
Introduction to DevOps on Azure
If you need to know more about DevOps, or DevOps on Azure, the best place to learn is Microsoft Learn training. This free online platform provides interactive training for Microsoft products and more. There are videos, tutorials, and hands-on learning for specific products and services, plus learning paths based on job role, such as developer or data analyst. If you're not familiar with Learn you can take a tour of Microsoft Learn training or a quick video tour of Microsoft Learn training.
After you're familiar with Azure, you can decide whether to follow learning paths specific to DevOps, such as:
- Get started with Azure DevOps
- Deploy applications with Azure DevOps
- Build applications with Azure DevOps
Path to production
Plan your path to production by reviewing:
- DevOps guides
- Azure services that are often used in implementing DevOps solutions
- Example DevOps architectures
DevOps guides
Article or section | Description |
---|---|
Operational Excellence patterns | A list of design patterns for achieving Operational Excellence—one of the five pillars of the Microsoft Azure Well-Architected Framework—in a cloud environment. See Cloud Design Patterns for more patterns. |
Advanced Azure Resource Manager template functionality | Some advanced examples of template use. |
Azure Monitor guidance | A series of articles to help you use Azure Monitor to monitor cloud environments. The first article in the series is Azure Monitor best practices - Planning your monitoring strategy and configuration. |
Continuous integration and delivery for an Azure Synapse Analytics workspace | An outline of how to use an Azure DevOps release pipeline and GitHub Actions to automate the deployment of an Azure Synapse workspace to multiple environments. |
Platform automation for Azure VMware Solution enterprise-scale scenario | An overview for deploying Azure VMware Solution, including guidance for operational automation. |
Azure DevOps services
Azure service | Documentation | Description |
---|---|---|
Azure Artifacts | Azure Artifacts overview | Fully integrated package management for your CI/CD pipelines. |
Azure DevOps | Azure DevOps documentation | Modern dev services for managing your development lifecycle end-to-end. It includes Azure Repos, Azure Pipelines, and Azure Artifacts. |
Azure DevTest Labs | Azure DevTest Labs documentation | Reusable templates and artifacts for provisioning development and test environments. |
Azure Monitor | Azure Monitor documentation | Provides full observability into your applications, infrastructure, and network. |
Azure Pipelines | Azure Pipelines documentation | Helps you automate build and deployment by using cloud-hosted pipelines. |
Azure Repos | Azure Repos documentation | Provides unlimited, cloud-hosted private Git repos for your project and can be configured to use GitHub Advanced Security. |
Azure Resource Manager | Azure Resource Manager documentation | Provides consistent deployment, organization, and control for resource management. |
Azure Resource Manager templates (ARM templates) | ARM template documentation | Templates that you can use to define the infrastructure and configuration for your project. |
Azure Test Plans | Azure Test Plans documentation | Provides planned and exploratory testing services for your apps. |
Example DevOps architectures
The DevOps architectures are found here:
Section | First article in the section |
---|---|
Solution ideas | CI/CD for Azure VMs |
Here are some example architectures. For each one there's a list of the key Azure services used in the architecture.
Architecture | Description | Azure services used |
---|---|---|
Automated API deployments with APIOps | Apply GitOps and DevOps techniques to ensure quality APIs. | Azure Repos, API Management, Azure DevOps, Azure Pipelines, Azure Repos |
Design a CI/CD pipeline using Azure DevOps | Build a CI/CD pipeline by using Azure DevOps and other services. | Azure Repos, Azure Test Plans, Azure Pipelines |
Enterprise monitoring with Azure Monitor | Use Azure Monitor to achieve enterprise-level monitoring and centralized monitoring management. | Azure Monitor |
Best practices
The Microsoft Azure Well-Architected Framework provides reference guidance and best practices that you can use to improve the quality of your architectures. The framework comprises five pillars: Reliability, Security, Cost Optimization, Operational Excellence, and Performance Efficiency. Here's where to find documentation of the pillars:
The following articles are about best practices that are specific to DevOps and to some DevOps services.
DevOps
- How Teams at Microsoft Embraced a DevOps Culture - Azure webinar series
- Azure cloud migration best practices checklist
- Resiliency checklist for specific Azure services
- Continuous monitoring with Azure Monitor
- Monitoring best practices for reliability in Azure applications
- Overview of the Azure Security Benchmark (v1)
- Azure Identity Management and access control security best practices
- Security best practices
- Azure security best practices and patterns
- Azure operational security checklist
- Azure security baseline for API Management
- Secure development best practices on Azure
Azure Artifacts
Azure Resource Manager
Stay current with DevOps
Stay current with Azure DevOps by monitoring these articles:
Additional resources
Example solutions
- Design a CI/CD pipeline using Azure DevOps
- Manage Microsoft 365 tenant configuration by using Microsoft365DSC and Azure DevOps