AZ-400 - Designing and Implementing Microsoft DevOps solutions
This course provides the knowledge and skills to design and implement DevOps processes and practices. Students will learn how to plan for DevOps, use source control, scale Git for an enterprise, consolidate artifacts, design a dependency management strategy, manage secrets, implement continuous integration, implement a container build strategy, design a release strategy, set up a release management workflow, implement a deployment pattern, and optimize feedback mechanisms
Level
Designed for participants with advanced knowledge and experience
Students in this course are interested in designing and implementing DevOps processes or in passing the Microsoft Azure DevOps Solutions certification exam.
Course content
Module 1: Planning for DevOps
Lessons
Transformation Planning
Project Selection
Team Structures
Migrating to Azure DevOps
Lab : Agile Planning and Portfolio Management with Azure Boards
Module 2: Getting Started with Source Control
Lessons
What is Source Control
Benefits of Source Control
Types of Source Control Systems
Introduction to Azure Repos
Introduction to GitHub
Migrating from Team Foundation Version Control (TFVC) to Git in Azure Repos
Lab : Version Controlling with Git in Azure Repos
Module 3: Managing Technical Debt
Lessons
Identifying Technical Debt
Knowledge Sharing within Teams
Modernizing Development Environments with Codespaces
Lab : Sharing Team Knowledge using Azure Project Wikis
Module 4: Working with Git for Enterprise DevOps
Lessons
How to Structure Your Git Repo
Git Branching Workflows
Collaborating with Pull Requests in Azure Repos
Why Care About Git Hooks
Fostering Inner Source
Managing Git Repositories
Lab : Version Controlling with Git in Azure Repos
Module 5: Configuring Azure Pipelines
Lessons
The Concept of Pipelines in DevOps
Azure Pipelines
Evaluate use of Hosted versus Self-Hosted Agents
Agent Pools
Pipelines and Concurrency
Azure DevOps and Open-Source Projects (Public Projects)
Azure Pipelines YAML versus Visual Designer
Lab : Configuring Agent Pools and Understanding Pipeline Styles
Module 6: Implementing Continuous Integration using Azure Pipelines
Lessons
Continuous Integration Overview
Implementing a Build Strategy
Integration with Azure Pipelines
Integrating External Source Control with Azure Pipelines
Set Up Self-Hosted Agents
Lab : Enabling Continuous Integration with Azure Pipelines
Lab : Integrating External Source Control with Azure Pipelines
Module 7: Managing Application Configuration and Secrets
Lessons
Introduction to Security
Implement a Secure Development Process
Rethinking Application Configuration Data
Manage Secrets, Tokens, and Certificates
Integrating with Identity Management Systems
Implementing Application Configuration
Lab : Integrating Azure Key Vault with Azure DevOps
Module 8: Implementing Continuous Integration with GitHub Actions
Lessons
GitHub Actions
Continuous Integration with GitHub Actions
Securing Secrets for GitHub Actions
Lab : GitHub Actions Continuous Integration
Module 9: Designing and Implementing a Dependency Management Strategy
Lessons
Packaging Dependencies
Package Management
Migrating and Consolidating Artifacts
Package Security
Implementing a Versioning Strategy
Lab : Package Management with Azure Artifacts
Module 10: Designing a Release Strategy
Lessons
Introduction to Continuous Delivery
Release Strategy Recommendations
Building a High-Quality Release pipeline
Choosing the Right Release Management Tool
Lab : Controlling Deployments using Release Gates
Lab : Creating a Release Dashboard
Module 11: Implementing Continuous Deployment using Azure Pipelines
Lessons
Create a Release Pipeline
Provision and Configure Environments
Manage and Modularize Tasks and Templates
Configure Automated Integration and Functional Test Automation
Automate Inspection of Health
Lab : Configuring Pipelines as Code with YAML
Lab : Setting up and Running Functional Tests
Module 12: Implementing an Appropriate Deployment Pattern
Lessons
Introduction to Deployment Patterns
Implement Blue Green Deployment
Feature Toggles
Canary Releases
Dark Launching
AB Testing
Progressive Exposure Deployment
Lab : Feature Flag Management with LaunchDarkly and Azure DevOps
Module 13: Managing Infrastructure and Configuration using Azure Tools
Lessons
Infrastructure as Code and Configuration Management
Create Azure Resources using ARM Templates
Create Azure Resources using Azure CLI
Azure Automation with DevOps
Desired State Configuration (DSC)
Lab : Azure Deployments using Resource Manager Templates
Module 14: Third Party Infrastructure as Code Tools Available with Azure
Lessons
Chef
Puppet
Ansible
Terraform
Lab : Automating Infrastructure Deployments in the Cloud with Terraform and Azure Pipelines
Lab : Deploying Apps with Chef on Azure
Lab : Deploy App with Puppet on Azure
Lab : Ansible with Azure
Module 15: Managing Containers using Docker
Lessons
Implementing a Container Build Strategy
Implementing Docker Multi-Stage Builds
Lab : Modernizing Existing ASP.NET Apps with Azure
Module 16: Creating and Managing Kubernetes Service Infrastructure
Lessons
Azure Kubernetes Service
Kubernetes Tooling
Integrating AKS with Pipelines
Lab : Deploying a Multi-Container Application to Azure Kubernetes Service
Module 17: Implementing Feedback for Development Teams
Lessons
Implement Tools to Track System Usage, Feature Usage, and Flow
Implement Routing for Mobile Application Crash Report Data
Develop Monitoring and Status Dashboards
Integrate and Configure Ticketing Systems
Lab : Monitoring Application Performance with Application Insights
Module 18: Implementing System Feedback Mechanisms
Lessons
Site Reliability Engineering
Design Practices to Measure End-User Satisfaction
Design Processes to Capture and Analyze User Feedback
Design Processes to Automate Application Analytics
Managing Alerts
Blameless Retrospectives and a Just Culture
Lab : Integration between Azure DevOps and Teams
Module 19: Implementing Security in DevOps Projects
Lessons
Security in the Pipeline
Azure Security Center
Lab : Implement Security and Compliance in an Azure DevOps Pipeline
Module 20: Validating Code Bases for Compliance
Lessons
Open-Source Software
Managing Security and Compliance Policies
Integrating License and Vulnerability Scans
Lab : Managing Technical Debt with SonarQube and Azure DevOps
Materials
Materials are in electronic form.
Objectives
After completing this course, students will be able to:
Plan for the transformation with shared goals and timelines
Select a project and identify project metrics and KPIs
Create a team and agile organization structure
Describe the benefits of using Source Control
Migrate from TFVC to Git
Scale Git for Enterprise DevOps
Recommend artifact management tools and practices
Abstract common packages to enable sharing and reuse
Migrate and consolidate artifacts
Migrate and integrate source control measures
Manage application config and secrets
Develop a project quality strategy
Plan for secure development practices and compliance rules
Implement and manage build infrastructure
Explain why continuous integration matters
Implement continuous integration using Azure DevOps
Manage code quality including: technical debt, SonarCloud, and other tooling solutions
Manage security policies with open source, OWASP, and WhiteSource Bolt
Implement a container strategy including how containers are different from virtual machines and how microservices use containers
Implement containers using Docker
Inspect open source software packages for security and license compliance to align with corporate standards
Configure build pipeline to access package security and license rating
Configure secure access to package feeds
Inspect codebase to identify code dependencies that can be converted to packages
Identify and recommend standardized package types and versions across the solution
Refactor existing build pipelines to implement version strategy that publishes packages
Manage security and compliance
Differentiate between a release and a deployment
Define the components of a release pipeline
Explain things to consider when designing your release strategy
Classify a release versus a release process and outline how to control the quality of both
Describe the principle of release gates and how to deal with release notes and documentation
Explain deployment patterns, both in the traditional sense and in the modern sense
Choose a release management tool
Explain the terminology used in Azure DevOps and other Release Management Tooling
Describe what a Build and Release task is, what it can do, and some available deployment tasks
Classify an Agent, Agent Queue, and Agent Pool
Explain why you sometimes need multiple release jobs in one release pipeline
Differentiate between multi-agent and multi-configuration release job
Use release variables and stage variables in your release pipeline
Deploy to an environment securely using a service connection
Embed testing in the pipeline
List the different ways to inspect the health of your pipeline and release by using alerts, service hooks, and reports
Create a release gate
Describe deployment patterns
Implement Blue Green Deployment
Implement Canary Release
Implement Progressive Exposure Deployment
Configure crash report integration for client applications
Develop monitoring and status dashboards
Implement routing for client application crash report data
Implement tools to track system usage, feature usage, and flow
Integrate and configure ticketing systems with development team's work management
Implement a mobile DevOps strategy
Apply infrastructure and configuration as code principles.
Deploy and manage infrastructure using Microsoft automation technologies such as ARM templates, PowerShell, and Azure CLI
Describe deployment models and services that are available with Azure
Deploy and configure a Managed Kubernetes cluster
Deploy and configure infrastructure using 3rd party tools and services with Azure, such as Chef, Puppet, Ansible, SaltStack, and Terraform
Define an infrastructure and configuration strategy and appropriate toolset for a release pipeline and application infrastructure
Implement compliance and security in your application infrastructure
Design practices to measure end-user satisfaction
Design processes to capture and analyze user feedback from external sources
Design routing for client application crash report data
Recommend monitoring tools and technologies
Recommend system and feature usage tracking tools
Analyze alerts to establish a baseline
Analyze telemetry to establish a baseline
Perform live site reviews and capture feedback for system outages
Perform ongoing tuning to reduce meaningless or non-actionable alerts
Do you want thistailor-made course for your company?
Microsoft Power BI is a powerful platform for data analysis and visualization. You can easily connect all the company's data sources to it, no matter where they are or in any format. In a user-friendly environment, it creates interactive visualizations that bring data to life and facilitate the recognition of trends and insights.
We took a closer look at Microsoft Azure certifications, also known as AZ. Microsoft's certification map is extensive and at first glance it may not be easy to understand it. That's why we're here to help you with that.
It's important for administrators to understand the interconnectedness and the strength of the entire platform. A conversation with lecturer Matyáš Koc, a certified Microsoft solutions trainer.
Microsoft Power BI is a powerful platform for data analysis and visualization. You can easily connect all the company's data sources to it, no matter where they are or in any format. In a user-friendly environment, it creates interactive visualizations that bring data to life and facilitate the recognition of trends and insights.
We took a closer look at Microsoft Azure certifications, also known as AZ. Microsoft's certification map is extensive and at first glance it may not be easy to understand it. That's why we're here to help you with that.
It's important for administrators to understand the interconnectedness and the strength of the entire platform. A conversation with lecturer Matyáš Koc, a certified Microsoft solutions trainer.