Preface
DevOps is not just a buzzword now – it is a doctrine or a school of thought to improve application life cycle management processes to make applications effective by utilizing disruptive innovations. It has become a part of a serious discussion in organizations. Hence, a change is required. A change in the culture.
Change is no threat to culture. It only improves the culture using disruptive innovations in recent times.
Often, we make mistakes by focusing too much on the technology or tools, but with DevOps this can be a blunder. This book emphasizes not only the technology but also the organization-specific culture that is more important in cultivating the DevOps culture. DevOps is in an early stage. It is changing the existing culture that invites resistance. It is wise to follow what Socrates said:
"The secret of change is to focus all your energy, not on fighting the old, but on building the new."
In this book, we will cover all the key components of DevOps, such as continuous integration, cloud computing – PaaS (Azure App Service or Azure Web Apps and Azure SQL Database), continuous delivery, and continuous deployment; how to automate build integration, provision resources in Microsoft cloud environment; deploying web application into Microsoft Azure Web Apps / App Service Environments; application monitoring available in Microsoft Azure; and load testing available in VSTS and Apache JMeter. The main objective is to manage frequent releases effectively. By automating repetitive processes, we standardized the management of the application life cycle and avoided error-prone manual processes. We also provided governance to application life cycle management by providing approval-based application deployment to different environments.
For continuous integration and continuous release (continuous delivery and continuous deployment), we have used Visual Studio Team Services (VSTS). The orchestration of end-to-end automation and approval-based workflows is managed by VSTS too.
Let's begin our cultural journey in the land of DevOps using people (development team, QA team, operations team, cloud team, build engineers, and so on), processes (continuous integration, continuous delivery and continuous deployment, continuous testing, and continuous monitoring), and tools (Microsoft stack)!