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

Kubernetes cluster anatomy

A Kubernetes cluster is a collection of machines with compute power. These machines could be actual physical computers or could even be virtual machines (VMs).

In reference to cloud deployments, a Kubernetes cluster will be a collection of VMs. Each VM is termed a node. The nodes in a cluster are categorized as either master or worker nodes. Worker nodes run applications that are deployed in containers. The master node runs the control plane components that are responsible for coordinating tasks across the worker nodes.

Throughout this chapter, and for ease of reference, the node running the control plane components will be referred to as the master, and worker nodes will be referred to as nodes.

The master has the following responsibilities:

  • It tracks information across all nodes in a cluster, such as applications or containers that a node is running.
  • It schedules applications on nodes by identifying nodes based on requirements (such...