Extending the Kubernetes API
Kubernetes is an extremely flexible and extensible platform. It even allows you to extend its own API with new types of resources called third-party-resources. What can you do with third-party-resources? Plenty. You can use them to manage through the Kubernetes API resources that live outside the Kubernetes cluster, but your pods communicate with. By adding those external resources as third-party-resources, you get a full picture of your system and you benefit from many Kubernetes API features such as the following:
- Custom CRUD REST endpoints
- Versioning
- Watches
- Automatic integration with generic Kubernetes tooling
Other use cases for third-party-resources are metadata for custom controllers and automation programs.
Let's dive in and see what third-party-resources are all about.
Understanding the structure of a third-party-resource
In order to play nice with the Kubernetes API server, third-party-resources must conform to some basic requirements. Similar to built...