Additional DevOps Topics on Microsoft Azure

Paths

Additional DevOps Topics on Microsoft Azure

Authors: Marcel de Vries, Chris Behrens, Neil Morrissey, John Savill

This path is not meant to be viewed in any particular order. These courses cover Devops topics on Microsoft Azure that are not explicitly covered in the AZ-400 certification. We... Read more

What you will learn

  • Various topics of interest for DevOps engineers on Microsoft Azure

Pre-requisites

You should be experienced in Microsoft Azure administration or writing code in the Azure ecosystem

Additional DevOps Topics on Microsoft Azure

This path is not meant to be viewed in any particular order. These courses cover Devops topics on Microsoft Azure that are not explicitly covered in the AZ-400 certification. We think these courses will still be of use to those looking to further explore how DevOps and Microsoft Azure come together.

Continuous Delivery and DevOps with Azure DevOps: The Big Picture

by Marcel de Vries

Feb 19, 2019 / 1h 26m

1h 26m

Start Course
Description

To support teams to move towards continuous delivery and DevOps, you need a tool suite that helps you deliver software in a reliable, automated, secure and compliant way. Microsoft provides such a toolset which is called Azure DevOps. In this course, Continuous Delivery and DevOps with Azure DevOps: The Big Picture, you will get an overview of how to use the Azure DevOps tools to implement continuous delivery and DevOps. First, you will start with Azure DevOps boards, where you will explore how to support your team in their agile way of work. You will look at work items, product backlogs, sprint backlogs, and how to visualize your teams work on a variety of boards. Next, you will go over Azure DevOps Repos and then specifically at Git repos. Azure DevOps Git is just Git, and you will look at some additions they provide like branch policies and pull requests that help you with implementing compliance. Then, you will discover Azure DevOps pipelines. Pipelines provide a way to build and deploy your software. Finally, you will learn the use of Azure DevOps artifacts and look at how you can control packages that are consumed from outside your organizational boundaries like, e.g., NPM, or Nuget Packages. After taking this course, you will have a clear overview of what the Azure DevOps tools can do for you and how you can use them to implement continuous delivery and DevOps in your organization.

Table of contents
  1. Course Overview
  2. Understanding Continuous Delivery and DevOps with Azure DevOps

Continuous Delivery and DevOps with Azure DevOps: Source Control with Git

by Marcel de Vries

Jun 20, 2019 / 1h 54m

1h 54m

Start Course
Description

Git is a very powerful source control system, but as we all know, powerful tools can be dangerous, and you don’t want to lose sources when using the system. In this course, Continuous Delivery and DevOps with Azure DevOps: Source Control with Git, you'll learn about source control, the different source control systems that are out there, and Team Foundation Version Control (TFVC) and Git, which are the types supported by Azure DevOps. First, you will explore how to set up your Git repository in Azure DevOps, and then go through all the basics to get you started with Git. Next, you will discover the fundamental operations like creating and cloning repositories, adding new files to the local repository and pushing it to the central server so the rest of the team can use it, and explore commands like commit, push, fetch, and pull. Finally, you will learn how the branch and rebase commands work, and the two most popular Git branching strategies called Git Flow and Git Hub Flow. You will also set up continuous integration, branch policies and gated check-in to guard your sources from bad code coming in that does not compile or contains bugs, so you keep your source code repository clean and in an always shippable state. By the end of this course, you will know all the fundamentals to set up source control in Azure DevOps and how to work with the Git source control system efficiently.

Table of contents
  1. Course Overview
  2. Fundamentals
  3. Source Control with Git on Azure DevOps
  4. Implementing Continuous Integration

Continuous Delivery and DevOps with Azure DevOps: Release Pipelines

by Marcel de Vries

Jun 21, 2019 / 2h 1m

2h 1m

Start Course
Description

Continuous delivery and DevOps require you to fully automate the build and release process in a repeatable and reliable way. In this course, Continuous Delivery and DevOps with Azure DevOps: Release Pipelines, you'll learn how to set up release automation using Azure DevOps. First, you'll explore the fundamentals of release automation and the distinction you need between a deployment and a release. This enables you to release multiple times per day without interrupting your services. Next, you'll dive into the concepts of configuration and infrastructure as code. Finally, you'll conclude this course with security, approvals, and audit trails so you can ensure all your release pipelines are audit proof. By the end of this course, you'll have the necessary knowledge to create a fully automated build and release pipeline that is secure and compliant by default.

Table of contents
  1. Course Overview
  2. Introduction to Release Management
  3. Infrastructure as Code
  4. Security, Approval, and Audit Trails

Continuous Delivery and DevOps with Azure DevOps: Managing Builds

by Marcel de Vries

May 6, 2019 / 1h 27m

1h 27m

Start Course
Description

In this course, Continuous Delivery and DevOps with Azure DevOps: Managing Builds, you will learn how to set up an automated build with Azure DevOps or Azure DevOps Server pipelines. First, you will learn the used terminology and how the infrastructure works that will run your build. Next, you will discover how to start with a simple build, to get you started as fast as possible and then we will take a deeper dive into available options and concepts that will help you create the most efficient builds or your teams (like e.g Yaml builds). In the demos, you will learn how to set up an automated build for web applications, how to optimize those builds to run in parallel and how to do this in a secure and compliant way. Finally, you will explore how to also incorporate Infrastructure as code so you can also ensure the consistent setup of your infrastructure. All resulting in a fast, reliable, and repeatable build that can serve your team as a heartbeat of your product development. By the end of this course, you will know how to implement continuous integration builds that are the fundament on which you can run your DevOps teams.

Table of contents
  1. Course Overview
  2. Build Fundamentals
  3. Configuring More Specialized Builds
  4. Configuration and Infrastructure as Code

Application Testing with Azure DevOps and Visual Studio 2019

by Marcel de Vries

Aug 2, 2019 / 1h 32m

1h 32m

Start Course
Description

Application testing is one of those tasks that was traditionally done manually, but this is not fast enough when you want to implement DevOps practices. You need something that works well with engineering disciplines like Continuous Integration and Continuous Deployment.

In this course, Application Testing with Azure DevOps and Visual Studio 2019, you will get started with the engineering discipline around automated testing, using Azure DevOps and Visual Studio. First, you will define a good test strategy for your team, using the Agile Test pyramid to learn what tests you must write. Next, you will write your business logic and use the continuous test runner to get feedback while you write code and then integrate them in your CI build.

Finally, you will dive into using selenium to test your web application and integrate this into Azure DevOps, as well as learn how to use containers to set up your test data fast and consistently for your test suites using SQL server.

After completing this course, you will be able to define a test strategy for your team and use Visual Studio to write unit tests using frameworks like MSTest, Nunit, Xunit, or any other framework you like.

Table of contents
  1. Course Overview
  2. Selecting Your Test Strategy
  3. Unit Testing with Visual Studio and Azure DevOps
  4. Integration and UI Testing

Microsoft Azure DevOps Engineer: Monitoring Code Quality

by Chris Behrens

Jul 18, 2019 / 1h 5m

1h 5m

Start Course
Description

Creating and maintaining code quality is one of the most valuable jobs a build engineer performs. In this course, Microsoft Azure DevOps Engineer: Monitoring Code Quality, you will gain the ability to execute code quality checks in your build. First, you will learn static analysis of your codebase. Next, you will discover dynamic analysis, where to execute the code and measure the results. Finally, you will explore how to test your code for security and performance. When you’re finished with this course, you will have the skills and knowledge of integrating code quality checks in your Azure builds needed to take your application quality to the next level.

Table of contents
  1. Course Overview
  2. What Is Code Quality?
  3. Implementing Tools for Managing and Monitoring Technical Debt
  4. Implementing Security and Compliance in the Pipeline

Inspecting Open Source Software Packages for Security and License Compliance

by Neil Morrissey

Dec 4, 2019 / 38m

38m

Start Course
Description

Modern software is composed of many open source components, that are used to speed development and provide complex functionality you would normally need to write yourself. But with that convenience, there come some risks. In this course, Inspecting Open Source Software Packages for Security and License Compliance, you will learn the different types of risks involved with open source software, and how you can manage those risks by using a tool called WhiteSource Bolt. First, you will explore the licenses that come with open source libraries and components. Next, you will learn the inherent risks that come with leveraging open source libraries in your projects. Then, you will understand more about a class of tools, called software composition analysis tools, that can help you migrate those risks. Finally, you will discover a free tool called WhiteSource Bolt that you can integrate into your Azure DevOps pipeline builds, to analyze the open source components in your project. By the end of this course, you will be more confident in managing open source libraries, and better able to respond to threats to those components.

Table of contents
  1. Course Overview
  2. Setting up a Build Pipeline to Inspect Package Feeds

Microsoft Azure DevOps Engineer: Leveraging ARM Templates for Infrastructure

by John Savill

Aug 14, 2019 / 2h 10m

2h 10m

Start Course
Description

While developers have quickly embraced DevOps, the way infrastructure components fit in this methodology can be confusing. In this course, Microsoft Azure DevOps Engineer: Leveraging ARM Templates for Infrastructure, you will learn foundational knowledge of using templates to define resources and enable Infrastructure as Code. First, you will examine how Azure defines and manages its resources. Next, you will discover the structure and use of ARM templates. Finally, you will explore how to leverage version control for templates. When you’re finished with this course, you will have the skills and knowledge of Azure ARM templates needed to embrace infrastructure as code for Azure.

Table of contents
  1. Course Overview
  2. Azure Resource Manager Architecture
  3. Using ARM Templates
  4. Implementing Source Control for ARM Templates

Microsoft Azure DevOps Engineer: Provision Azure Resources

by John Savill

Aug 21, 2019 / 1h 34m

1h 34m

Start Course
Description

When getting started with Azure, you are faced with a number of options to create resources. In this course, Microsoft Azure DevOps Engineer: Provision Azure Resources, you will learn foundational knowledge of the provisioning options available in Azure. First, you will learn how to use the Az PowerShell module to provision resources and leverage contexts to handle multiple accounts and subscriptions. Next, you will discover the Azure CLI and its capabilities. Finally, you will explore how to use ARM JSON templates to provision resources with a declarative technology. When you are finished with this course, you will have the skills and knowledge of Azure provisioning options needed to implement the best Azure deployment solution for your company.

Table of contents
  1. Course Overview
  2. Azure Resource Manager Provisioning
  3. Using PowerShell and the CLI to Create Rresources
  4. Using Templates to Create Resources

Microsoft Azure DevOps Engineer: Implement Imperative Virtual Machine Configuration Management

by John Savill

Apr 30, 2020 / 1h 55m

1h 55m

Start Course
Description

Deciding how to configure guest operating systems in Azure can initially be a stopping point for many organizations. In this course, Microsoft Azure DevOps Engineer: Implement Imperative Virtual Machine Configuration Management, you'll learn how to perform configuration of both Windows and Linux VMs running in Azure. First, you will examine fundamental configuration capabilities for all VMs in Azure. Next, you will discover technologies specifically focused on Linux configuration in Azure. Finally, you will discover how to inject custom scripts from the Azure fabric into both Windows and Linux using the Custom Script Extension. When you’re finished with this course, you will have the skills and knowledge of VM configuration needed to define a complete provisioning and configuration approach for your Azure VMs.

Table of contents
  1. Course Overview
  2. Configuring Virtual Machines Using Configuration Management
  3. Configuring Linux VMs
  4. Using the Custom Script Extension