Advanced Interactions with Kubernetes (As Taught by Helm)
11-16, 09:45–10:15 (UTC), The Gallery

Come learn about some of the gotchas and deep internals you'll have to deal with when extending or building on top of Kubernetes. Using some of the Helm code as a backdrop, this talk will dive into the nitty gritty details of checking the status of various workload API objects, complex patching needs, validation, and more!


Helm is well-known as the package manager for Kubernetes. However, it is less well-known as a showcase for advanced interactions with the Kubernetes libraries and APIs. If you are interested in extending or building on top of Kubernetes, this talk will help you get you acquainted with various Kubernetes libraries and show concrete examples of complex interactions with those libraries.

This talk will be highly technical and focused on how to perform various work in Kubernetes with examples from Helm (though no prior experience with Helm is required). These examples will at least include the following, if not more:
- How to handle multiple API versions (such as all of the Deployment object apis and versions)
- Properly using and retrieving the correct statuses of objects (basically how the wait functionality works)
- 3 way patching
- Object building (including unstructured types and how to convert them)
- Validation
- Discovery client and cache invalidation
- How to use some of the more obtuse/little-known k8s packages

Taylor Thomas is a Senior Software Engineer working on Azure Kubernetes Service at Microsoft. He has been involved with containers and Kubernetes platforms at Intel and Nike and is one of the core maintainers of Helm. He currently lives in the Utah area and enjoys hiking and camping. He has given talks at several KubeCons, Velocity Conf and Helm Summit on a wide variety of container and cloud native related topics.