The presentation discusses the challenges of using custom resources in Kubernetes and offers mitigations for avoiding resource proliferation and destabilizing etcd.
- Custom resources are essential for Kubernetes extensibility but can lead to resource proliferation and destabilization of etcd.
- Mitigations for these issues include avoiding unnecessary updates, batching updates, and avoiding duplicating information across objects.
- Using jobs when only pods are needed can also lead to resource duplication and increased QPS.
- The speaker offers anecdotal evidence of these issues and suggests attending the Intuit or Argo booths for further discussion.
The speaker describes how using jobs instead of pods can lead to resource duplication and increased QPS, which can destabilize etcd and cause the cluster to act erratically. They also mention how Tekton copies and aggregates information across objects, leading to unnecessary updates and resource proliferation. The speaker suggests avoiding these issues by batching updates and avoiding duplicating information across objects.
Kubernetes isn’t just a platform for running apps anymore. Increasingly, it’s also becoming a platform for platforms, some of which challenge the idea of what Kubernetes can and should be used for. Tekton and Argo are two such projects, there are more, and there will be many more to come. These projects run unconventional workloads which often have quite different needs to running vanilla deployments. They often need to manage large amounts of data, manage massive parallelism, and special lifecycle requirements, none of which Kubernetes provides by default. In this talk, you’ll hear from the technical leads on the Tekton and Argo projects about how they’ve pushed the boundaries of Kubernetes to provide this new functionality. You’ll hear how users have benefitted from this work, how you can apply these same techniques, and how we can further improve Kubernetes as a platform for this kind of workload.