Chapter 13: Extending Kubernetes with CRDs
This chapter explains the many possibilities for extending the functionality of Kubernetes. It begins with a discussion of the Custom Resource Definition (CRD), a Kubernetes-native way to specify custom resources that can be acted on by the Kubernetes API using familiar kubectl
commands such as get
, create
, describe
, and apply
. It is followed by a discussion of the Operator pattern, an extension of the CRD. It then details some of the hooks that cloud providers attach to their Kubernetes implementations, and ends with a brief introduction to the greater cloud-native ecosystem. Using the concepts learned in this chapter, you will be able to architect and develop extensions to your Kubernetes cluster, unlocking advanced usage patterns.
The case study in this chapter will include creating two simple CRDs to support an example application. We'll begin with CRDs, which will give you a good base understanding of how extensions can build...