
This video will give you an overview about the course.
The aim of this video is to learn about DevOps.
Learn the differences between DevOps and Traditional SDLC
Explore the advantages over Traditional SDLC
The aim of this video is to learn about how Agile differs from DevOps in practice.
Get in-depth understanding of Agile Software Development
Learn more about the differences and its uses
The aim of this video is to learn about version control and how Git can greatly add to the DevOps pipeline.
Explore Git Version Control System
Take a look at a few examples on the different ways Git can be used to realize its benefits
Learn about Git Branching
The aim of this video is to get introduced to CI/CD.
Explore different methods to achieve Continuous Integration
Study the GitFlow workflow
Take a look at an example of Git-branching
The aim of this video is to learn about Infrastructure as Code.
Know how operations function in an organization
Explore the IaC technologies
Discuss the advantages of IaC
The aim of this video is to learn about continuous monitoring.
Get an overview of continuous monitoring
Learn the 7 best practices
The aim of this video is to focus on Docker containers and how to install and configure Docker on Azure Virtual machine.
Get in-depth understanding of containers
Learn the various benefits of containers
Setup and install Docker on Linux machine
The aim of this video is to learn about the basic commands used to interact with Docker container system.
Learn about the various commands and execute them
Discuss the new concept of port
Create a container in Docker
The aim of this video is to create custom images using Dockerfile.
Walk through an example in the documentation
Get an in-depth understanding of a Dockerfile and how to run commands
Build an image and run the container
The aim of this video is to learn how to publish containers in Docker Hub and Azure container registry.
Login to Docker Hub registry and then to the command line
List images locally and instruct Docker to Push the image to the Docker hub
Tag image for Azure in the command line
The aim of this video is to learn about the challenges and need for Kubernetes in detail.
Explore the challenges for running multiple containers
Take a look at the arising queries when running containerized systems in a production environment
Study in detail about Kubernetes
The aim of this video is to learn about Kubernetes and the practical orchestration of containers
Take a look at a Case study
Discuss how Kubernetes can assist
Perform practical orchestration of a container
The aim of this video is to explore more about Azure DevOps.
Discuss the features of Azure DevOps service
Learn in detail the six principals of Azure DevOps Services
The aim of this video is to learn about Work items, Kanban and Dashboard to track progress.
Study azure boards in detail
Work on a project example
Connect a work item to a commit in a Git repo
The aim of this video is to create an application using Dockerfile placed in a Git repository.
Discuss the difference between TFS and Git
Clone the repo from azure Git repo
Build and push an image
The aim of this video is to create pipelines to run a test of the application.
Install pytest
Create a test file and integrate the test into Azure DevOps
View test results using analytics
The aim of this video is to take a deeper look some of the key points of pipelines and examine an alternative method for designing and interacting with our pipeline.
Study in-depth about pipelines
Review the Docker build step and Docker push to registry steps
Review build result, logs and find what test failed
The aim of this video is to get an overall understanding of Azure Kubernetes Service.
Explore in detail about AKS
Compare Classic Azure IaaS and New Azure IaaS
Learn the advantages of using AKS
The aim of this video is to deploy an AKS cluster using the Azure portal.
Create an AKS cluster
Authenticate your cluster
Connect to the cluster and run your application
The aim of this video is to learn about ARM templates
Study the Azure Resource Manager architecture
Learn the concept and advantages of ARM
Discuss the features of ARM
The aim of this video is to learn to create a cluster using terraform.
Study in-depth about terraform
Create a Kubernetes cluster with Azure Kubernetes service and Terraform
Recover from a Cloud Shell timeout, and finally test the Kubernetes cluster
The aim of this video is to learn about the continuous delivery of our app.
Create a release Pipeline
Extend a release pipeline by adding stages
Monitor and track deployments
The aim of this video is to see how the build gets triggered when changes are made to the files in our Azure Repo.
Log in to your Visual Studio account
Select the project you are working and make changes
Navigate to the Build tab under Pipelines
The aim of this video is to learn the basics of Azure Monitor and get to know its advantages.
Study the high-level view of Azure Monitor
Understand its working in detail
Study the workflow of Azure Monitor
The aim of this video is to learn what Azure Monitor for containers provide, and then enable monitoring from Azure Monitor.
Explore what Azure Monitor for containers provide
Enable monitoring from Azure Monitor
The aim of this video is to Query and analyze container logs in the AKS cluster running our app.
Create a simple search and retrieve data
Filter the results of the query
Work with the results
The aim of this video is to create a metric measurement alert rule, and then view the alerts in Azure portal.
Create a metric measurement alert rule
Configure the alert
View your alerts in Azure portal
The aim of this video is to learn how we can have Azure Monitor automatically create work items in our Azure DevOps Board.
Setup a central monitoring point using Application Insights
Connect the web application to our monitor service
Review the monitoring blade
This video will give you a review on the topics learnt so far.
Take a tour of what we’ve achieved learning in each section
Take a note of the reference links for further study
This video will give you an overview of the course.
The aim of this video is to discuss different perspectives of software development, from basic software engineering to its tools, patterns, strategies, and frameworks up to the modern software.
Discuss different models and a little about their implementations and role in the software development lifecycle
Highlight the features of common SDLCs and then discuss how complexity grows in a traditional software development process
Get a quick overview of Agile flow and its requirements
Discuss why we need to take a step ahead from Agile to DevOps.
Discuss the relationship between the developer and operations teams
Explore how DevOps bridges the gaps and how automation makes the flow smoother by taking maximum control of the ongoing process
Oversee and talk about the responsibilities that a DevOps team should possess in order to have the real ownership
Potentially, we’ll see what CI/CD is and the misconceptions related to its role in this whole DevOps chain.
Learn about the base line where Dev and Ops meet and the actual concept behind it
Discuss the continuous nature of DevOps flow and how much it impacts the overall process
Address actual outcomes and role functionality of these two major phases (CI/CD), and the code-level benefits of being in the DevOps chain
From start to the end, learn the entire flow that needs to be followed and how this cycle makes the things less frictional.
Learn about the different phases and the given eases and benefits of each of these phases
Study the concept of DevOps and SRE engineers
Get to know what DevOps is for developers and how they should consider playing their role for it
There are many different cloud platforms that support DevOps practices, but you need to choose wisely which one ideally suits your requirements.
Understand why Microsoft Azure could provide a suitable cloud platform to offer the needed services and tools
Highlight the different features offered by Microsoft Azure to make the DevOps implementations easy and scalable
Discuss a few other reliable tools that make Azure a more powerful option, that is, VSTS
What is it about and what does it offer to make things organized and updated within the team?
It offers a cloud-based solution of Visual Studio team foundation services
Explore the role of VSTS throughout the course
Learn how efficiently it works with Azure and provide connectivity to it
The aim of this video is to learn how VSTS works in integration with Azure.
Learn what VSTS offers as a service: endpoint connectivity, user accounts, Azure AD, and so on
Discuss Azure AD, the principles that help us to access other resources for the DevOps pipeline, and overall development
Take a look at how the ‘DevOps Project’ helps a team to commit, build, release, and do analytics using VSTS
Learn what it supports, and how it opens the path to use many other third-party open source tools and services.
Know how Azure supports the idea of working with open source tools and technologies
Learn why Microsoft loves open source and became an open source contributor, and where Azure stands in it
Azure DevOps project is not a typical DevOps project. It’s a platform that provides ease to go along with all the steps included in DevOps implementations, but on the other hand, it has some limitations. They need to be considered beforehand.
Understand what the considerable limitations are when we decide to work with a DevOps project
Jot down a list of scenarios and questions on which you should consider your needs and requirements
Discuss the role of Azure DevOps, VSTS, and App Service from different types of actions involved in the DevOps lifecycle
The aim of this video is to discuss multiple considerable things while creating an account.
Talk about how to make a selection of runtime
Discuss how to select a VSTS account as per the app’ needs
Understand the terms to create an Azure App Service
Learn how to access the DevOps dashboard and the features we need to get familiar with.
Discuss all of the accessible information at a dashboard
Learn about reporting of the version control system, repository information, and so on shown on the dashboard
Learn how error messages work in analytics and how we can see the site traffic from the dashboard
The aim of this video is to discuss version control in VSTS (Visual Studio Team Services) and how to use it for building and managing our applications.
Discuss properties like number of allowed repositories, their accessibility, and so on.
Look into the user account and security settings. Target other topics like REST APIs, GIT commands, and online code editors.
Highlight some of the possible limitations: storage, import, export options, and supported large filesystem by GIT.
This video is a demonstration of how we can configure the continuous integration pipeline or edit the pipeline that is already created by Microsoft Azure for us.
Learn how to add tasks and agents in the pool, and create and utilize the variable for our CI pipeline
Explore how to set triggers and why exactly we need them
Specify the build artifacts, specify the retentions, and look for the history and summary settings as well
We discuss why exactly we need to test our application and what the right steps to test our application functionality and expected behavior would be.
Discuss why VSTS keeps testing applications
Know the tools and scripting languages used by DevOps pipelines
Learn what would happen in case of failure, to whom the alerts will be sent, and so on
In this video, we walk though some hidden gems of a DevOps project, such as the release environment, staging with best practices, and supported tools by VSTS (FTP, PowerShell, VM deployment, and so on).
The build pipelines were created and configured the release settings
Discuss the practical insight of the phases like integration, testing, and deployment
Discuss Azure support for deployment slots
Learn how we can include more agents (especially the Azure Virtual Machine), the need for it, and how we can improve the performance using these virtual machines.
Learn what packages and products we can install on these virtual machines, and how we can download the installer for this
Discuss the benefits of using these agents and the different types of cross-platform agents
Explore the account settings
There are some necessary settings and configurations to understand in order to get the expected behavior while working with Azure App Service. We’ll go through all the settings in this video.
Explore environment variables and learn how to set them
Discuss the privacy and policy settings, and how we can store passwords and connection strings securely
Get to know how we can set different alerts and render the default pages at times when our site is down
The concept of deployment slots is an advanced topic, provided by Azure for ease while deploying and maintaining our applications over the Azure portal.
Learn the benefits of having deployment slots
Know how we get the endpoint in the same service and same subscription for the other instances of our application
Discuss how we can manage the load without missing the traffic
Create a test environment and also learn about other settings such as instance scaling and API integration.
Explore how deployment slots can be used as the production environment
Discuss how your application will behave at times when new changes will be pushed
Test the working of REST APIs and their requests
This is the concept: our users will not face downtime issues because we have already set and tested the overall functionality after committing the code in the deployment slots directly.
Learn the deployment slots and how we test overall app functionality
Discuss how downtime affects user experience when there are updates in the code
Learn how there will be no downtime and no user request that will be missed on swapping the IPs of production and testing slots
Branches are created in order to keep our main branch clean. Separate branches can have code about which we’re not 100% sure to proceed with. So, the benefit of these branches is maintaining the track and builds separately.
Create a subbranch and then commit the code in it
Merge these branches with the master branch if our team decides to proceed with these changes
We’ve talked about CI in the starting sections. Now we’ll see how we can implement it and create the build environment to have the CI applied on it. Which is one of the major go-to steps in the DevOps cycle.
Decide on either to import the build definition or to create a new one
Select the template and then add tasks in it
Set variables and configure other settings so that our build will listen to all the changes onward
We’ve talked about deployment in the starting videos. Now in this video, we will talk about how we set up the release environment and set it up properly.
Create an empty release environment
Select either a template for pre-configurations and dependencies, or our custom libraries
Select artifact to get the build results in order to proceed and start the build
In this video, we learn to commit the code using GIT commands from the command line. We understand different commands and their usage.
Initialize the repositories and add code
Commit the changes locally
Push the changes to remote repository
In this video we’ll analyze our repository after we have committed the code.
Learn which build has been triggered and who has triggered this build
Know what changes have occurred in our release environment
Navigate to the home page with all the latest changes
The aim of this video is to learn how to set alerts.
Learn to send a notification
Explore role-based alerts
Discuss team-bases alerts and how to configure them
For the monitoring and all the insights, such as traffic load, timely requests, success, error codes, and so on, we need to have a monitoring tool. For this purpose, we’ll use Microsoft’s own library, which is Application Insights.
Download Application Insights using npm and install it
After installing the package using npm, we’ll import it using ‘require’
Use Application Insights to report and track all the traffic and happenings on our site
Learn how monitoring works and how you can visualize the stats, requests, and all trends based on different activities and actions.
Examine the wider view, where we can analyze each request with its return code and status
Discuss the options using which we can fix issues and errors before our users will encounter them
Examine the useful stats and properties that we can view from our application dashboard and how these can be useful for us
The aim of this video is to learn how we can fix the code issues and the useful options for patching. These issues will be fixed after analyzing the code properly.
After analyzing the root cause, optimize and fix the code
Discuss the possible solutions for the issues found
Test the performance of the code
Alerts are extremely useful for small as well as large teams. We can configure them to track any type of behavior or event in order to tackle issues and dynamically change tracks, quickly and smartly.
Learn how we can put different conditions to make rules and define the time and frequency constraints
Demonstrate how to make alert groups in order to combine multiple alerts and rules
Set the email notifications for different roles
This video will give you the summary of the course
You might have come across slow development cycles due to traditional infrastructure management processes. Azure DevOps is everything you need to build your software product from beginning to end! The project helps to deploy applications, add test environment to validate your production, manage the code flow and high quality. If you’re looking to automate your operations to deliver reliable code & software faster with Azure DevOps then is the perfect Course for you!
This comprehensive 2-in-1 course follows a hands-on approach to plan, manage and monitor your applications by implementing DevOps using Microsoft Azure. Initially, you’ll acquire a deeper insight into implementing DevOps. You’ll understand how containerization technologies work as well as execute tests across your applications with continuous integration. Moving further, you’ll work with DevOps for modern-day application lifecycle management and automate your apps on the Azure Cloud platform. Finally, you’ll configure a full CI/CD pipeline for any Azure app using the language and app framework you want.
Towards the end of this course, you'll be able to automate your operations on the cloud with Azure DevOps to deliver software faster and more reliably with DevOps projects on Azure.
Contents and Overview
This training program includes 2 complete courses, carefully chosen to give you the most comprehensive training possible.
The first course, DevOps with Azure, covers Implementing DevOps using Microsoft Azure. This course is a complete guide on how to implement DevOps using Microsoft Azure. You'll learn how to plan your projects with agile tools, manage your code using Git, and deploy your code through the best CI/CD systems. You'll be empowered to get full traceability and visibility across all your development activity. By the end of this course, you will learn how you can get Azure on board as a unified DevOps environment.
The second course, Hands-On DevOps on Azure, covers delivering software faster and more reliably with DevOps projects on Azure. In this course, you will delve into the DevOps support on Microsoft Azure and investigate about the teams that can migrate their existing DevOps solutions to Microsoft Azure, using Azure DevOps project. By the end of this course, you will be an expert in testing, deploying, and monitoring your applications with Azure.
Towards the end of this course, you'll be able to automate your operations on the cloud with Azure DevOps to deliver software faster and more reliably with DevOps projects on Azure.
About the Authors
Allen ONeill is a consulting engineer with a background in enterprise systems. He runs his own company specializing in system architecture, optimization, and scaling. Allen is a chartered engineer, a Fellow of the British Computing Society, and a Microsoft MVP and Insider, a CodeProject and C# Corner MVP.
Afzaal Ahmad Zeeshan is a computer programmer from Rabwah, Pakistan, and likes .NET Core for regular everyday development. He is an expert with Cloud, Mobile, and API development. Afzaal has experience with the Azure platform and likes to build cross-platform libraries/software with .NET Core. Twice he has been awarded Microsoft MVP status for his work in the field of software development, twice CodeProject MVP status for technical writing and mentoring, and 3 times C# Corner MVP status in the same field.
Iqra Ali is a software engineer at MIXIT-Technologies USA and an author at CodeProject and CSharpCorner, and she is from Karachi, Pakistan. She spends most of her time contributing to open source world and authoring technical articles. Iqra is an expert .NET developer and has worked on several .NET and DevOps related projects in her professional career. In her spare time, she spends time contributing to CSharpCorner and other alike platforms, helping others in the open communities.