Kubernetes Programming with Go

Programming Kubernetes Clients and Operators Using Go and the Kubernetes API

Philippe Martin author

Format:Paperback

Publisher:APress

Published:25th Dec '22

Currently unavailable, and unfortunately no date known when it will be back

Kubernetes Programming with Go cover

This book begins by introducing the structure of the Kubernetes API and which operations it serves. Following chapters demonstrate how to write native Kubernetes resources definitions using Go structures defined in the API and API Machinery libraries. Miscellaneous utilities are described to help you work with different resource fields and to convert your resource definitions to or from YAML or JSON. Next, you will learn how to interact with the Kubernetes API server to create, delete, update, and monitor resources in a cluster using the client-go library. A complete chapter is devoted to tools provided to test your programs using the client-go library. An example follows to wrap up the first part of the book, describing how to write a kubectl plugin. Next, you will learn how to extend the Kubernetes API using Custom Resource Definitions, and how to write Kubernetes resources in a generic way as well as how to create your own resources using the unstructured concept. The next chapters delve into the controller-runtime library, useful for extending Kubernetes by writing operators, and the kubebuilder framework,  which leverages this library, to help you start writing operators in minutes.

After reading this book, you will have a deep understanding of the Kubernetes API’s structure and how Kubernetes resources are organized within it, and have at your disposal a complete toolbox to help you write Kubernetes clients and operators.

What You Will Learn

  • Understand how the Kubernetes API and its resources are organized
  • Write Kubernetes resources in Go
  • Create resources in a cluster
  • Leverage your newly-gained knowledge to write Kubernetes clients and operators

Who is this Book for:

Software engineers and (Site Reliability Engineers) SREs wishing to write Kubernetes clients and operators using the Go language.

ISBN: 9781484290255

Dimensions: unknown

Weight: unknown

316 pages

1st ed.