Please submit for books, tutorials, or other assets that would be useful to folks using Kubernetes.
PHIPPY AND FRIENDS
By: Matt Butcher, Karen Chu & Bailey Beougher
The characters Phippy, Captain Kube, Goldie, and Zee and the two books are owned by The Linux Foundation, on behalf of the Cloud Native Computing Foundation, and licensed under the Creative Commons Attribution License (CC-BY), which means that you can remix, transform, and build upon the material for any purpose, even commercially. If you use the characters, please include the text “<phippy.io>” to provide attribution (and online, please include a link to ).
The characters and the two books were created by Matt Butcher, Karen Chu, and Bailey Beougher and donated by Microsoft to CNCF. Goldie is based on the Go Gopher, created by Renee French, which is also licensed under CC-BY.
CLOUD NATIVE INFRASTRUCTURE
By: Justin Garrison and Kris Nova
If you’re an engineer developing infrastructure or infrastructure management tools this book is for you. This book will help you understand the patterns, processes, and practices to create infrastructure that is intended to be run in a cloud environment. By having an understanding of how things should be, you can better know the application’s role and what should be consumed as external services.
Application engineers can also discover what services should be a part of their applications and which they can rely on from the underlying platform. Through this book they will also discover the shared responsibilities they have with the engineers writing applications to manage the infrastructure.
Systems Administrators who are looking to level up their skills and take a more prominent role in designing infrastructure and maintaining infrastructure in a cloud native way can learn from this book.
Do you run all of your infrastructure in a public cloud? This book will help you know when to consume cloud services and when to build your own abstractions or services.
Run a datacenter or on-premisis cloud? We will outline what modern applications expect from infrastructure and help you understand the necessary services to utilize your current investments.
This book is not a how-to and outside of giving implementation examples we’re not prescribing a specific product. It is probably too technical for managers, directors, and executives, but could be helpful depending on the involvement and technical expertiese of the person in that role.
Most of all, please read this book if you want to learn how infrastructure impacts business, and how you can create infrastructure that has proven to scale to the demanding needs of Internet sized applications. Even if you don’t have applications that require scaling to that size you will still be better able to provide value if your infrastructure is built with the patterns described here with flexibility and operability in mind.
CLOUD NATIVE PATTERNS
By: Cornelia Davis
Cloud Native Patterns is your guide to developing strong applications that thrive in the dynamic, distributed, virtual world of the cloud. This book presents a mental model for cloud-native applications, along with the patterns, practices, and tooling that set them apart.
Cloud platforms promise the holy grail: near-zero downtime, infinite scalability, short feedback cycles, fault-tolerance, and cost control. But how do you get there? By applying cloud native designs, developers can build resilient, easily adaptable, web-scale distributed applications that handle massive user traffic and data loads. Learn these fundamental patterns and practices, and you’ll be ready to thrive in the dynamic, distributed, virtual world of the cloud.
With 25 years of experience under her belt, Cornelia Davis teaches you the practices and patterns that set cloud-native applications apart. With realistic examples and expert advice for working with apps, data, services, routing, and more, she shows you how to design and build software that functions beautifully on modern cloud platforms. As you read, you will start to appreciate that cloud-native computing is more about the how and why rather than the where.
KUBERNETES PATTERNS:REUSABLE ELEMENTS FOR DESIGNING CLOUD NATIVE APPLICATIONS
By: Bilgin Ibryam and Roland Huß
The way developers design, build, and run software has changed significantly with the evolution of microservices and containers. These modern architectures use new primitives that require a different set of practices than most developers, tech leads, and architects are accustomed to. With this focused guide, Bilgin Ibryam and Roland Huß from Red Hat provide common reusable elements, patterns, principles, and practices for designing and implementing cloud-native applications on Kubernetes.
Each pattern includes a description of the problem and a proposed solution with Kubernetes specifics. Many patterns are also backed by concrete code examples. This book is ideal for developers already familiar with basic Kubernetes concepts who want to learn common cloud-native patterns. You’ll learn about the following pattern categories:
- Foundational patterns cover the core principles and practices for building container-based cloud-native applications.
- Behavioral patterns explore finer-grained concepts for managing various types of container and platform interactions.
- Structural patterns help you organize containers within a pod, the atom of the Kubernetes platform.
- Configuration patterns provide insight into how application configurations can be handled in Kubernetes.
- Advanced patterns cover more advanced topics such as extending the platform with operators.
A free copy of this book is available through
KUBERNETES IN ACTION
By: Marko Lukša
Kubernetes in Action is a comprehensive guide to effectively developing and running applications in a Kubernetes environment. Before diving into Kubernetes, the book gives an overview of container technologies like Docker, including how to build containers, so that even readers who haven’t used these technologies before can get up and running.
Kubernetes is Greek for “helmsman,” your guide through unknown waters. The Kubernetes container orchestration system safely manages the structure and flow of a distributed application, organizing containers and services for maximum efficiency. Kubernetes serves as an operating system for your clusters, eliminating the need to factor the underlying network and server infrastructure into your designs.
Kubernetes in Action teaches you to use Kubernetes to deploy container-based distributed applications. You’ll start with an overview of Docker and Kubernetes before building your first Kubernetes cluster. You’ll gradually expand your initial application, adding features and deepening your knowledge of Kubernetes architecture and operation. As you navigate this comprehensive guide, you’ll explore high-value topics like monitoring, tuning, and scaling.
KUBERNETES: UP AND RUNNING
By: Kelsey Hightower, Brendan Burns, and Joe Beda
Legend has it that Google deploys over two billion application containers a week. How’s that possible? Google revealed the secret through a project called Kubernetes, an open source cluster orchestrator (based on its internal Borg system) that radically simplifies the task of building, deploying, and maintaining scalable distributed systems in the cloud. This practical guide shows you how Kubernetes and container technology can help you achieve new levels of velocity, agility, reliability, and efficiency.
Authors Kelsey Hightower, Brendan Burns, and Joe Beda—who’ve worked on Kubernetes at Google and other organizatons—explain how this system fits into the lifecycle of a distributed application. You will learn how to use tools and APIs to automate scalable distributed systems, whether it is for online services, machine-learning applications, or a cluster of Raspberry Pi computers.
- Explore the distributed system challenges that Kubernetes addresses
- Dive into containerized application development, using containers such as Docker
- Create and run containers on Kubernetes, using the docker image format and container runtime
- Explore specialized objects essential for running applications in production
- Reliably roll out new software versions without downtime or errors
- Get examples of how to develop and deploy real-world applications in Kubernetes
THE KUBERENETES BOOK
By: Nigel Poulton
Every page, and every example, updated to the latest versions of Kubernetes and the latest trends in the cloud-native ecosystem.
Containers have revolutionized the way build, share and run applications. But like all good things, they come with their own set of challenges. This is where Kubernetes enters the scene.
Kubernetes helps you deploy and manage containerized applications at scale. It abstracts the underlying infrastructure so that you don’t need to care whether you’re deploying your applications to Amazon Web Services, Microsoft Azure, or your own on-premises datacenter. With Kubernetes, you can develop your applications on your laptop, deploy to your chosen cloud platform, migrate to a different cloud platform, and even migrate to your private cloud at your on-premises datacenter.
The Kubernetes Book starts from the beginning and covers everything you need to know to be proficient with Kubernetes. It even includes two chapters dedicated to threat-modeling Kubernetes and real-world security.
- Kubernetes architecture
- How to build Kubernetes
- How to deploy and manage applications on Kubernetes
- How to secure Kubernetes
- The meaning of terms such as; cloud-native, microservices, desired state, containerized, and more…
Finally, Kubernetes and cloud technologies are developing fast! That’s why this book will be updated at least once per year, meaning it’s always up-to-date with the latest versions of Kubernetes and the latest trends in the cloud-native ecosystem.
KUBERNETES THE HARD WAY
By: Kelsey Hightower
This tutorial walks you through setting up Kubernetes the hard way. This guide is not for people looking for a fully automated command to bring up a Kubernetes cluster.
Kubernetes The Hard Way is optimized for learning, which means taking the long route to ensure you understand each task required to bootstrap a Kubernetes cluster.
The results of this tutorial should not be viewed as production ready, and may receive limited support from the community, but don’t let that stop you from learning!
KUBERNETES OPERATORS:AUTOMATING THE CONTAINER ORCHESTRATION PLATFORM
By: Jason Dobies and Joshua Wood
Operators are a way of packaging, deploying, and managing Kubernetes applications. A Kubernetes application doesn’t just run on Kubernetes; it’s composed and managed in Kubernetes terms. Operators add application-specific operational knowledge to a Kubernetes cluster, making it easier to automate complex, stateful applications and to augment the platform. Operators can coordinate application upgrades seamlessly, react to failures automatically, and streamline repetitive maintenance like backups.
Think of Operators as site reliability engineers in software. They work by extending the Kubernetes control plane and API, helping systems integrators, cluster administrators, and application developers reliably deploy and manage key services and components. Using real-world examples, authors Jason Dobies and Joshua Wood demonstrate how to use Operators today and how to create Operators for your applications with the Operator Framework and SDK.
- Learn how to establish a Kubernetes cluster and deploy an Operator
- Examine a range of Operators from usage to implementation
- Explore the three pillars of the Operator Framework: the Operator SDK, the Operator Lifecycle Manager, and Operator Metering
- Build Operators from the ground up using the Operator SDK
- Build, package, and run an Operator in development, testing, and production phases
- Learn how to distribute your Operator for installation on Kubernetes clusters
A free copy of this book is available through
PROGRAMMING KUBERNETES: DEVELOPING CLOUD NATIVE APPLICATIONS
By: Michael Hausenblas and Stefan Schimanski
If you’re looking to develop native applications in Kubernetes, this is your guide. Developers and AppOps administrators will learn how to build Kubernetes-native applications that interact directly with the API server to query or update the state of resources. AWS developer advocate Michael Hausenblas and Red Hat principal software engineer Stefan Schimanski explain the characteristics of these apps and show you how to program Kubernetes to build them.
You’ll explore the basic building blocks of Kubernetes, including the client-go API library and custom resources. All you need to get started is a rudimentary understanding of development and system administration tools and practices, such as package management, the Go programming language, and Git.
Walk through Kubernetes API basics and dive into the server’s inner structure Explore Kubernetes’s programming interface in Go, including Kubernetes API objects Learn about custom resources—the central extension tools used in the Kubernetes ecosystem Use tags to control Kubernetes code generators for custom resources Write custom controllers and operators and make them production ready Extend the Kubernetes API surface by implementing a custom API server
Kubernetes and Cloud Native Computing Foundation News Sources - How do you keep up with Kubernetes?