Gardener Extensions Library
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.
Known Extension Implementations
Check out these repositories for implementations of the Gardener Extension contracts:
Infrastructure Provider
Primary DNS Provider
The primary DNS provider manages DNSRecord
resources (mandatory for Gardener related DNS records)
Operating System
Container Runtime
Network Plugin
Generic Extensions
- Minimal Working Example
- Registry Cache
- Shoot Certificate Service
- Shoot DNS Service
- Shoot Falco Service
- Shoot Flux Service
- Shoot Lakom Service
- Shoot Networking Filter
- Shoot Networking Problem Detector
- Shoot OpenID Connect Service
- Shoot Rsyslog Relp
If you implemented a new extension, please feel free to add it to this list!
Feedback and Support
Feedback and contributions are always welcome. Please report bugs or suggestions as GitHub issues or reach out on Slack (join the workspace here).
Learn more!
Please find further resources about out project here: