Kubernetes API server extension and controller manager managing the full lifecycle of conformant Kubernetes clusters (Shoots) as a service on AWS, Azure, GCP, and OpenStack.
Go Smarty HCL Shell Ruby Makefile
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.ci Enable draft release for head update variant Aug 8, 2018
.github Create pull_request_template.md Jul 20, 2018
charts Drop noisy metrics from Shoot's Prometheus Aug 20, 2018
cmd Support setting K8S log level in controller manager Aug 17, 2018
docs Add docu for the machine bootstrap process and mcm integration. Aug 17, 2018
example Support setting K8S log level in controller manager Aug 17, 2018
hack Extend Shoot resource to allow configuration of admission plugins Aug 16, 2018
logo Initial version of gardener Jan 17, 2018
pkg Support setting K8S log level in controller manager Aug 17, 2018
plugin/pkg Move DeletionConfirmation admission plugin package Jun 29, 2018
vagrant Enable Ignition, shoot deletion Feb 26, 2018
vendor Use bootstraptokenutil package of k8s.io/client-go repository Aug 1, 2018
.dockerignore use docker multi stage builds Jul 31, 2018
.gitignore gitignore for virtualgo and fuse_fs Apr 10, 2018
CODEOWNERS Replace MAINTAINERS.md by CODEOWNERS Apr 17, 2018
CONTRIBUTING.md Initial version of gardener Jan 17, 2018
Dockerfile use docker multi stage builds Jul 31, 2018
Gopkg.lock Use bootstraptokenutil package of k8s.io/client-go repository Aug 1, 2018
Gopkg.toml Use k8s.io/kube-deploy/cmd/openapi-gen for generation Jul 25, 2018
LICENSE.md Add etcd backup restore support for aws & azure Apr 12, 2018
Makefile Added support for Kubernetes on Docker for local setup Aug 9, 2018
NOTICE.md Fix LICENSE and NOTICE Apr 12, 2018
README.md updated slack channel info Aug 9, 2018
VERSION Prepare next dev cycle 0.11.0-dev Aug 21, 2018

README.md

Gardener

Gardener Logo

Go Report Card CII Best Practices

The Gardener implements the automated management and operation of Kubernetes clusters as a service and aims to support that service on multiple Cloud providers (AWS, GCP, Azure, OpenStack). Its main principle is to use Kubernetes itself as base for its tasks.

In essence, the Gardener is an extension API server along with a bundle of Kubernetes controllers which introduces new API objects in an existing Kubernetes cluster (which is called Garden cluster) in order to use them for the management of further Kubernetes clusters (which are called Shoot clusters). To do that reliably and to offer a certain quality of service, it requires to control the main components of a Kubernetes cluster (etcd, API server, controller manager, scheduler). These so-called control plane components are hosted in Kubernetes clusters themselves (which are called Seed clusters).

Please find more information regarding the concepts and a detailed description of the architecture in our Gardener Wiki and our blog post on kubernetes.io.


To start using or developing the Gardener locally

See our documentation in the /docs repository, please find the index here.

Setting up your own Gardener landscape in the cloud

Take a look at our landscape setup template to bootstrap your own Gardener system.

Feedback and Support

Feedback and contributions are always welcome. Please report bugs or suggestions about our Kubernetes clusters as such or the Gardener itself as GitHub issues or join our Slack channel #gardener (Invite yourself to the Kubernetes Slack workspace here).