Book Image

Strategizing Continuous Delivery in the Cloud

By : Garima Bajpai, Thomas Schuetz
Book Image

Strategizing Continuous Delivery in the Cloud

By: Garima Bajpai, Thomas Schuetz

Overview of this book

Many organizations are embracing cloud technology to remain competitive, but implementing and adopting development processes while modernizing a cloud-based ecosystem can be challenging. Strategizing Continuous Delivery in Cloud helps you modernize continuous delivery and achieve infrastructure-application convergence in the cloud. You’ll learn the differences between cloud-based and traditional delivery approaches and develop a tailored strategy. You’ll discover how to secure your cloud delivery environment, ensure software security, run different test types, and test in the pre-production and production stages. You’ll also get to grips with the prerequisites for onboarding cloud-based continuous delivery for organizational and technical aspects. Then, you’ll explore key aspects of readiness to overcome core challenges in your cloud journey, including GitOps, progressive delivery controllers, feature flagging, differences between cloud-based and traditional tools, and implementing cloud chaos engineering. By the end of this book, you’ll be well-equipped to select the right cloud environment and technologies for CD and be able to explore techniques for implementing CD in the cloud.
Table of Contents (18 chapters)
1
Part 1: Foundation and Preparation for Continuous Delivery in the Cloud
6
Part 2: Implementing Continuous Delivery
11
Part 3: Best Practices and the Way Ahead

Summary

In this chapter, we introduced the foundational aspects of CD, starting with its definition and characteristics, and explaining the CD ecosystem at a high level.

Once we learned about all the benefits of CD, we took a closer look at the technical side and its prerequisites and learned that CI helps us build and test software continuously. Furthermore, CD ensures that our software is in a deployable state at any time, and Continuous Deployment, which is often used interchangeably with CD automates the deployment of our application to production systems.

As failures in automated deployments could have a very large blast radius, progressive delivery can reduce this by gradually deploying the application to a limited number of users. To also automate the evaluation of the behavior of the systems, we might rely on data from our observability solution to make decisions if the criteria to shift more traffic to the new version are met. Last but not least, we can also use these mechanisms to assess the business impact of a new feature and take action if this leads to, for example, a loss of revenue.

In the final part of this chapter, we started to deal with cloud-specifics related to CD that we will need in future chapters of the book. Therefore, we introduced and explained the terms Virtualization, Containers, and Container Orchestration and learned that we need to take care of our infrastructure (using Infrastructure as Code) before deploying applications on it. Finally, we discovered that there are many cloud services that will help us on our journey to CD in the cloud.

Throughout the next chapter, we will go deeper into the characteristics of the cloud and its delivery models. Furthermore, you will learn why delivering to the cloud is different from traditional environments.