Getting Started with Kubernetes
With examples in Google Kubernetes Engine
William Denniss
  • MEAP began April 2020
  • Publication in Summer 2021 (estimated)
  • ISBN 9781617297175
  • 325 pages (estimated)
  • printed in black & white

Best resource out there for Kubernetes. Includes a great quick introduction to Docker as well!

Becky Huett
Kubernetes has changed everything about deploying applications to the cloud—for the better! Getting Started with Kubernetes is a clear and practical beginner’s guide that shows you just how easy, flexible, and cost-effective it can be to make the switch to Kubernetes deployment even for small to medium-sized applications. You’ll learn how to migrate your existing apps onto Kubernetes without a rebuild, and implement modern cloud native architectures that can handle your future growth. You’ll take advantage of the powerful automation tools in Google Kubernetes Engine to perform automatic checks and scaling, giving you more time to spend developing great applications!

About the Technology

You don’t need to incur huge costs or have the manpower of an enterprise organization to get a productivity boost from Kubernetes. By organizing your application component into containerized components and automating tasks like scaling and replication, Kubernetes keeps your apps running smoothly. Cloud-based Kubernetes services like Google Kubernetes Engine (GKE) reduce OS issues, simplify operations, and give you the freedom to use whatever software stack you want. If you’ve heard that switching to Kubernetes is complex, good news—Getting Started with Kubernetes will show you how it can be done without a time-consuming rebuild. Using examples from the Google Kubernetes Engine created by the team who invented Kubernetes itself, you’ll learn to set up future-proof application deployments that scale to handle evergrowing and complex workloads.

About the book

Getting Started with Kubernetes: With examples in Google Kubernetes Engine is a hands-on guide to taking your first steps into Kubernetes using the powerful Google Kubernetes Engine service. It lays out a map for taking an application, containerizing it, and then deploying it onto Kubernetes. You’ll learn best practice techniques for a stable and long-term Kubernetes deployment, including scaling and capacity planning, saving money by optimizing resource consumption, and tricks to make your day-to-day monitoring easier such as debugging code in the cloud. Kubernetes is the future of app development, so make sure you’re ahead of the curve —get started with Kubernetes today!
Table of Contents detailed table of contents

Part 1

1 Kubernetes for Application Deployment

1.1 Containers: The Ideal Application Package

1.1.1 Language flexibility

1.1.2 Isolation Without Overhead

1.1.3 Developer Efficiency

1.1.4 Reproducibility

1.2 Running Containers on Kubernetes

1.2.1 Kubernetes Architecture: Life of a Container

1.3 Benefits of using Kubernetes

1.3.1 Automated Operations

1.3.2 A Workload Abstraction

1.3.3 The Ability to Scale Up

1.3.4 Cost Efficient Deployments

1.3.5 Extensibility

1.3.6 Open Source

1.3.7 Customized Workflows

1.4 Deciding when to use Kubernetes

1.4.1 Running a Stateful Database

1.4.2 Functions as a Service

1.4.3 Pure Stateless Applications

1.5 Summary

2 Containerizing Your App

2.1 Building the Dockerfile

2.1.1 Language-specific Base Images

2.1.2 Specifying the Default Command in the Dockerfile

2.1.3 Adding Dependencies

2.1.4 Compiling Code

2.2 Developing a Server Application with Docker

2.2.1 Running One-off Commands

2.2.2 Containerizing Our Application Server

2.2.3 When Things Go Wrong

2.3 Capturing Runtime Configuration with Docker Compose

2.3.1 Adding Service Dependencies

2.3.2 Mapping Folders Locally

2.3.3 Faking External Dependencies

2.4 Summary

3 Deploying to Kubernetes

3.1 Kubernetes Architecture

3.1.1 The Kubernetes Cluster

3.1.2 Kubernetes Objects

3.2 Deploying an Application

3.2.1 Creating a Cluster

3.2.2 Uploading your Container

3.2.3 Deploying

3.2.4 Publishing your Service

3.2.5 Updating your Application

3.2.6 Cleaning Up

3.3 Declarative or Imperative Style

3.4 Local Development with Kubernetes

3.5 Summary

4 Zero Downtime Operations

4.1 Automated Uptime with Health Checks

4.1.1 Liveness and Readiness Probes

4.1.2 Adding a Readiness Probe

4.1.3 Adding a Liveness Probe

4.1.4 Designing Good Health Checks

4.1.5 Probe Types

4.2 Updating Live Applications

4.2.1 Rolling Update Strategy

4.2.2 Replacement Strategy

4.2.3 Blue / Green Strategy

4.2.4 Choosing a Rollout Strategy

4.3 Summary

5 Resource Management

Part 2

6 When Things Go Wrong

7 GitOps: Configuration as Code

8 Beyond Stateless Applications

9 Security

10 Optimizing Costs

11 Keeping Up To Date

Part 3

12 Migrating Data

What's inside

  • Benefits of switching to Kubernetes
  • Containerize a web application with Docker
  • Host a containerized app on Kubernetes with a public cloud service
  • Save money and improve performance with cloud native technologies
  • Make your deployments reliable and fault tolerant without constant monitoring and intervention
  • Prepare your deployments to scale without a redesign
  • Monitor, debug and tune application deployments on Kubernetes in the cloud

About the reader

For programmers with experience managing web apps. No knowledge of Kubernetes or Docker containerization required. Examples use GKE, with careful explanations to allow you to adapt them to any Kuberentes system.

About the author

William Denniss is a product manager at Google on Kubernetes Engine. He participates in the CNCF Kubernetes Conformance working group and has a passion for interoperability and developer experience. He has presented on Kubernetes at KubeCon North America and Europe, DockerCon, and Google Cloud Next in San Francisco, London, and Tokyo. William authored RFC 8252, RFC 8417, and RFC 8628, and founded AppAuth, a leading open source OAuth client.

placing your order...

Don't refresh or navigate away from the page.
Manning Early Access Program (MEAP) Read chapters as they are written, get the finished eBook as soon as it’s ready, and receive the pBook long before it's in bookstores.
print book $29.99 $49.99 pBook + eBook + liveBook
Additional shipping charges may apply
Getting Started with Kubernetes (print book) added to cart
continue shopping
go to cart

eBook $24.99 $39.99 3 formats + liveBook
Getting Started with Kubernetes (eBook) added to cart
continue shopping
go to cart

Prices displayed in rupees will be charged in USD when you check out.

FREE domestic shipping on three or more pBooks