O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Implementing DevOps with Microsoft Azure

Book Description

Accelerate and Automate Build, Deploy, and Management of applications to achieve High Availability.

About This Book

  • This guide highlights tools that offer development and deployment environments for application services
  • Secure and continuously monitor your web application in order to make it highly available
  • Use Visual Studio Team Services for Continuous Integration and Continuous Development to expedite your application life cycle management process
  • Use Microsoft Azure App Services (Azure Web Apps / Azure Websites), PaaS offering from Microsoft to deploy web application

Who This Book Is For

This book is for DevOps engineers, system administrators, and developers (.net) who want to implement DevOps for their organization. You do not need to have any knowledge of VSTS or Azure App Services (Azure Web Apps / Azure Websites).

What You Will Learn

  • Explore the features of PaaS and aPaaS in DevOps
  • Use Visual Studio Team Services (VSTS) to manage versions of code and integrating VSTS with Eclipse IDE
  • Understand and configure Continuous Integration in VSTS
  • Review Unit Test Execution for Automated Testing
  • Create different environments that can be used to continuous deploy a web application
  • Configure Roll-based Access to enable secure access for Azure Web Apps
  • Create and configure the App Service Environment to enhance security
  • Understand the execution of the end-to-end automation process
  • Conduct Performance Testing using JMeter
  • Discover the different monitoring options available in Microsoft Azure Portal

In Detail

This book will teach you all about the Visual Studio Team Services and Microsoft Azure PaaS offerings that support Continuous Integration, Continuous Delivery, Continuous Deployment, and execution in the cloud with high availability, disaster recovery, and security.

You will first be given a tour of all the concepts and tools that Microsoft Azure has to offer and how these can be used in situations to cultivate the DevOps culture. You’ll be taught how to use and manage Visual Studio Team Services (VSTS) and about the structure of the sample application used throughout the book. You will become familiar with the nitty gritty of Continuous Integration and Continuous Development with VSTS and Microsoft Azure Apps. You will not only learn how to create App service environments, but also how to compare Azure Web Apps and App Service Environments to deploy web applications in a more secure environment.

Once you have completed Continuous Integration and created the Platform for application deployment, you will learn more about the final stepping stone in achieving end-to-end automation using approval-based Continuous Delivery and Deployment. You will then learn about Continuous Monitoring, using the monitoring and notification options provided by Microsoft Azure and Visual Studio Team Services.

Style and Approach

This book is an easy-to-follow guide filled with examples and real-world applications for gaining an in-depth understanding of Microsoft Azure and Visual Studio. This book will help you leverage Microsoft Azure and Visual Studio using real-world examples.

Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the code file.

Table of Contents

  1. Preface
    1. What this book covers
    2. What you need for this book
    3. Who this book is for
    4. Conventions
    5. Reader feedback
    6. Customer support
      1. Downloading the example code
      2. Downloading the color images of this book
      3. Errata
      4. Piracy
      5. Questions
  2. Microsoft Azure – Cloud Platform and Services
    1. What we will cover in this book
    2. Overview of PaaS and Application PaaS
      1. Cloud computing and its basics
        1. Comparison - PaaS and IaaS
      2. Overview of DevOps
    3. Role and benefits of PaaS and aPaaS in DevOps
    4. Overview of Microsoft Azure Service
      1. App Service - Microsoft Azure Web Apps
      2. Data and storage
      3. Application Insights
      4. Traffic Manager
    5. Overview of concepts related to Microsoft Azure
      1. Regions
      2. Resource groups
      3. App Service plans
      4. Autoscaling
        1. Scale instances manually
        2. Scale instances by CPU percentage
        3. Scale instances by schedule and performance rule
    6. Summary
  3. Getting Started with Visual Studio Team Services (VSTS)
    1. Introduction to VSTS
    2. Creating a free account on VSTS
    3. Configuration and user management in VSTS
    4. Overview of agile in VSTS
    5. Overview of a sample JEE application
    6. Eclipse integration with TFS online in VSTS
    7. Summary
  4. Continuous Integration with VSTS
    1. Overview of continuous integration
    2. Creating a build definition for VSTS project
    3. Configuration of continuous build integration in VSTS
      1. Executing build definition
    4. Unit test execution for automated testing
    5. Continuous feedback on build execution
    6. Managing the Git project in VSTS
    7. Task catalog and marketplace
    8. Summary
  5. Continuous Development with Microsoft Azure Web Apps
    1. Creating Azure Web Apps
    2. Configuring Web Apps with programming language specific settings
    3. Deployment slots - development, QA, UAT, staging, and production
    4. Deployment credentials management for FTP
    5. Azure Web Apps monitoring
    6. Configuring role-based access for secure access of Azure Web Apps
    7. Scaling Azure Web Apps
      1. Scaling up and down
      2. Scaling in and out
    8. Basic tasks to manage Azure Web Apps
      1. Microsoft Azure Web Apps properties
      2. Microsoft Azure Web Apps - App Service plan
      3. Azure Web Apps backups
      4. Azure Web Apps restore
      5. Azure Web Apps custom domains
      6. Azure Web Apps SSL certificates
      7. Azure Web Apps networking
      8. Azure Web Apps security scanning
      9. Azure Web Apps locks
      10. Azure Web Apps console
    9. Summary
  6. Azure App Service Environments
    1. Overview of ASEs
    2. Creating and configuring ASEs
      1. ASEs - front end pool
      2. ASEs - worker pools
      3. ASEs - app service plan
      4. ASEs - configuring Azure Web Apps
      5. ASEs - virtual network
      6. ASEs - network security groups
        1. Configuring NSG in ASE subnet
    3. Enforcing HTTP redirection to HTTPS on Azure Web Apps
    4. Filtering traffic by IP and dynamic IP restrictions
    5. Comparing ASE and non-ASE (Azure Web Apps)
    6. Summary
  7. Continuous Delivery to Azure Web Apps and ASE Using VSTS
    1. Overview of CD and continuous deployment
    2. Configuration of Microsoft Azure subscription
    3. Build and release automation
      1. Trackyon task to convert a .war file into a .zip file
      2. Continuous release - deploying the application in Azure Web Apps
    4. Environment with release tasks
      1. Pre-approval before application deployment
    5. Summary
  8. Continuous Monitoring in Cloud Platform
    1. Overview of continuous monitoring
    2. Azure Web Apps troubleshooting and monitoring
      1. Diagnose and solve problems
        1. Azure App Services - Resource health
        2. Azure App Services - HTTP live traffic
        3. Azure App Services - Metrics per instance
        4. Azure App Services - Advanced Application restart
        5. Azure App Services - CPU and memory consumption
        6. Azure App Services - Activity log
      2. Kudu
        1. Azure App Services - LogFiles
        2. Azure App Services (Kudu) - Process explorer
        3. Azure App Services (Kudu) - Site extensions
        4. Azure App Services (Kudu) - Autoheal
      3. Azure Application Insights for application monitoring
      4. Azure web applications monitoring
        1. Diagnostics logs
        2. Application events
        3. FREB logs
      5. Azure App Services support and troubleshooting
        1. Resource health
        2. Failure History
        3. Support request
    3. Architecture of disaster recovery and high availability of Azure web applications
      1. Creating and configuring Traffic Manager with endpoints
    4. Load testing using a URL-based test and Apache JMeter
      1. URL-based test
      2. Apache JMeter
    5. Summary
  9. More from the Author