Book Image

Google Cloud for DevOps Engineers

By : Sandeep Madamanchi
Book Image

Google Cloud for DevOps Engineers

By: Sandeep Madamanchi

Overview of this book

DevOps is a set of practices that help remove barriers between developers and system administrators, and is implemented by Google through site reliability engineering (SRE). With the help of this book, you'll explore the evolution of DevOps and SRE, before delving into SRE technical practices such as SLA, SLO, SLI, and error budgets that are critical to building reliable software faster and balance new feature deployment with system reliability. You'll then explore SRE cultural practices such as incident management and being on-call, and learn the building blocks to form SRE teams. The second part of the book focuses on Google Cloud services to implement DevOps via continuous integration and continuous delivery (CI/CD). You'll learn how to add source code via Cloud Source Repositories, build code to create deployment artifacts via Cloud Build, and push it to Container Registry. Moving on, you'll understand the need for container orchestration via Kubernetes, comprehend Kubernetes essentials, apply via Google Kubernetes Engine (GKE), and secure the GKE cluster. Finally, you'll explore Cloud Operations to monitor, alert, debug, trace, and profile deployed applications. By the end of this SRE book, you'll be well-versed with the key concepts necessary for gaining Professional Cloud DevOps Engineer certification with the help of mock tests.
Table of Contents (17 chapters)
1
Section 1: Site Reliability Engineering – A Prescriptive Way to Implement DevOps
6
Section 2: Google Cloud Services to Implement DevOps via CI/CD
Appendix: Getting Ready for Professional Cloud DevOps Engineer Certification

Understanding the need for automation

Once code is checked into a source code repository, the next step in a CI process is to build code and create artifacts as per the requirements to run the application. Once the artifacts are created, the artifacts are further stored in a repository and are later used by the Continuous Deployment/Delivery (CD) process to run the application. Given that the running theme in this book is to work with containers, Docker forms a key role as the OS-level virtualization platform to deploy applications in containers.

Following is an illustration of the Docker life cycle that highlights the multiple steps involved in creating container images to actually deploy containers that run the actual application:

  1. The developer hosts code in a source code repository. The code can be changed during the development or enhancement process.
  2. The source code repository can be set up to have trigger points, such as raising a pull request or merging code into...