Project Gardener implements the automated management and operation of Kubernetes clusters as a service. Its main principle is to leverage Kubernetes concepts for all of its tasks.
Recently, most of the vendor specific logic has been developed in-tree. However, the project has grown to a size where it is very hard to extend, maintain, and test. With GEP-1 we have proposed how the architecture can be changed in a way to support external controllers that contain their very own vendor specifics. This way, we can keep Gardener core clean and independent.
This directory contains utilities functions and common libraries meant to ease writing the actual extension controllers. Please consult https://github.com/gardener/gardener/tree/master/docs/extensions to get more information about the extension contracts.
Check out these repositories for implementations of the Gardener Extension contracts:
[*] Alicoud DNS, AWS Route53, Azure DNS, Cloudflare DNS, Google CloudDNS, OpenStack Designate
- CoreOS/FlatCar
- CoreOS/FlatCar (Alicloud)
- GardenLinux
- Debian/Ubuntu (MetalStack)
- Ubuntu
- Ubuntu (Alicloud)
- SuSE CHost
If you implemented a new extension, please feel free to add it to this list!
Feedback and contributions are always welcome. Please report bugs or suggestions as GitHub issues or join our Slack channel #gardener (please invite yourself to the Kubernetes workspace here).
Please find further resources about out project here: