All Projects → gardener → Gardener

gardener / Gardener

Licence: apache-2.0
Kubernetes-native system managing the full lifecycle of conformant Kubernetes clusters as a service on Alicloud, AWS, Azure, GCP, OpenStack, EquinixMetal, vSphere, MetalStack, and Kubevirt with minimal TCO.

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects
Smarty
1635 projects
Makefile
30231 projects
python
139335 projects - #7 most used programming language
Mustache
554 projects

Projects that are alternatives of or similar to Gardener

Bucc
The fastest way to get a BUCC (BOSH, UAA Credhub and Concourse)
Stars: ✭ 130 (-93.79%)
Mutual labels:  aws, azure, gcp, openstack, vsphere
Kcli
Management tool for libvirt/aws/gcp/kubevirt/openstack/ovirt/vsphere/packet
Stars: ✭ 219 (-89.54%)
Mutual labels:  aws, gcp, openstack, vsphere
Hybrid multicloud overlay
MutiCloud_Overlay demonstrates a use case of overlay over one or more clouds such as AWS, Azure, GCP, OCI, Alibaba and a vSphere private infrastructure in Hub and spoke topology, point to point topology and in a Single cloud. Overlay protocols IPv6 and IPv4 are independent of underlying infrastructure. This solution can be integrated with encryption and additional security features.
Stars: ✭ 127 (-93.93%)
Mutual labels:  aws, azure, gcp, vsphere
Arvados
An open source platform for managing and analyzing biomedical big data
Stars: ✭ 274 (-86.91%)
Mutual labels:  aws, azure, gcp, cluster
Mkit
MKIT is a Managed Kubernetes Inspection Tool that validates several common security-related configuration settings of managed Kubernetes cluster objects and the workloads/resources running inside the cluster.
Stars: ✭ 330 (-84.23%)
Mutual labels:  aws, azure, gcp, k8s
Machine Controller Manager
Declarative way of managing machines for Kubernetes cluster
Stars: ✭ 186 (-91.11%)
Mutual labels:  aws, azure, gcp, openstack
Docker Swarm
🐳🐳🐳 This repository is part of a blog series on Docker Swarm example using VirtualBox, OVH Openstack, Azure and Amazon Web Services AWS
Stars: ✭ 43 (-97.95%)
Mutual labels:  aws, azure, openstack, cluster
Kubify
Terraform Template to Setup a Kubernetes Cluster on OpenStack/AWS/Azure
Stars: ✭ 142 (-93.22%)
Mutual labels:  aws, azure, openstack, cluster
Pega Helm Charts
Orchestrate a Pega Platform™ deployment by using Docker, Kubernetes, and Helm to take advantage of Pega Platform Cloud Choice flexibility.
Stars: ✭ 58 (-97.23%)
Mutual labels:  aws, azure, k8s
Pulumi
Pulumi - Developer-First Infrastructure as Code. Your Cloud, Your Language, Your Way 🚀
Stars: ✭ 10,887 (+420.16%)
Mutual labels:  aws, azure, gcp
Pulumi Kubernetesx
Kubernetes for Everyone
Stars: ✭ 74 (-96.46%)
Mutual labels:  aws, azure, gcp
Manageiq
ManageIQ Open-Source Management Platform
Stars: ✭ 1,089 (-47.97%)
Mutual labels:  aws, azure, openstack
Examples
Infrastructure, containers, and serverless apps to AWS, Azure, GCP, and Kubernetes... all deployed with Pulumi
Stars: ✭ 1,085 (-48.16%)
Mutual labels:  aws, azure, gcp
Cloud Portal
Self service web portal for different Cloud platforms like Azure, AWS and VMWare vSphere.
Stars: ✭ 60 (-97.13%)
Mutual labels:  aws, azure, vsphere
Kubernetes Guides
Crosswalk Playbooks and Code for Teams to Manage Kubernetes in Production
Stars: ✭ 51 (-97.56%)
Mutual labels:  aws, azure, gcp
Cloudquery
cloudquery transforms your cloud infrastructure into SQL or Graph database for easy monitoring, governance and security.
Stars: ✭ 1,300 (-37.89%)
Mutual labels:  aws, azure, gcp
Devops Exercises
Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions
Stars: ✭ 20,905 (+898.81%)
Mutual labels:  aws, azure, openstack
Pragmaticai
[Book-2019] Pragmatic AI: An Introduction to Cloud-based Machine Learning
Stars: ✭ 79 (-96.23%)
Mutual labels:  aws, azure, gcp
Seldon Server
Machine Learning Platform and Recommendation Engine built on Kubernetes
Stars: ✭ 1,435 (-31.44%)
Mutual labels:  aws, azure, gcp
Kubernetes Pfsense Controller
Integrate Kubernetes and pfSense
Stars: ✭ 100 (-95.22%)
Mutual labels:  controller, k8s, cluster

Gardener

Gardener Logo

CI Build status Slack channel #gardener Go Report Card GoDoc CII Best Practices

Gardener implements the automated management and operation of Kubernetes clusters as a service and provides a fully validated extensibility framework that can be adjusted to any programmatic cloud or infrastructure provider.

Gardener is 100% Kubernetes-native and exposes its own Cluster API to create homogeneous clusters on all supported infrastructures. This API differs from SIG Cluster Lifecycle's Cluster API that only harmonizes how to get to clusters, while Gardener's Cluster API goes one step further and also harmonizes the make-up of the clusters themselves. That means, Gardener gives you homogeneous clusters with exactly the same bill of material, configuration and behavior on all supported infrastructures, which you can see further down below in the section on our K8s Conformance Test Coverage.

In 2020, SIG Cluster Lifecycle's Cluster API made a huge step forward with v1alpha3 and the newly added support for declarative control plane management. This made it possible to integrate managed services like GKE or Gardener. We would be more than happy, if the community would be interested, to contribute a Gardener control plane provider. For more information on the relation between Gardener API and SIG Cluster Lifecycle's Cluster API, please see here.

Gardener's main principle is to leverage Kubernetes concepts for all of its tasks.

In essence, Gardener is an extension API server that comes along with a bundle of custom controllers. It introduces new API objects in an existing Kubernetes cluster (which is called garden cluster) in order to use them for the management of end-user Kubernetes clusters (which are called shoot clusters). These shoot clusters are described via declarative cluster specifications which are observed by the controllers. They will bring up the clusters, reconcile their state, perform automated updates and make sure they are always up and running.

To accomplish these tasks reliably and to offer a high quality of service, Gardener controls 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). This is the main difference compared to many other OSS cluster provisioning tools: The shoot clusters do not have dedicated master VMs. Instead, the control plane is deployed as a native Kubernetes workload into the seeds (the architecture is commonly referred to as kubeception or inception design). This does not only effectively reduce the total cost of ownership but also allows easier implementations for "day-2 operations" (like cluster updates or robustness) by relying on all the mature Kubernetes features and capabilities.

Gardener reuses the identical Kubernetes design to span a scalable multi-cloud and multi-cluster landscape. Such familiarity with known concepts has proven to quickly ease the initial learning curve and accelerate developer productivity:

  • Kubernetes API Server = Gardener API Server
  • Kubernetes Controller Manager = Gardener Controller Manager
  • Kubernetes Scheduler = Gardener Scheduler
  • Kubelet = Gardenlet
  • Node = Seed cluster
  • Pod = Shoot cluster

Please find more information regarding the concepts and a detailed description of the architecture in our Gardener Wiki and our blog posts on kubernetes.io: Gardener - the Kubernetes Botanist (17.5.2018) and Gardener Project Update (2.12.2019).


K8s Conformance Test Coverage certified kubernetes logo

Gardener takes part in the Certified Kubernetes Conformance Program to attest its compatibility with the K8s conformance testsuite. Currently Gardener is certified for K8s versions up to v1.20, see the conformance spreadsheet.

Continuous conformance test results of the latest stable Gardener release are uploaded regularly to the CNCF test grid:

Provider/K8s v1.22 v1.21 v1.20 v1.19 v1.18 v1.17 v1.16 v1.15
AWS Gardener v1.22 Conformance Tests Gardener v1.21 Conformance Tests Gardener v1.20 Conformance Tests Gardener v1.19 Conformance Tests Gardener v1.18 Conformance Tests Gardener v1.17 Conformance Tests Gardener v1.16 Conformance Tests [1]
Azure Gardener v1.22 Conformance Tests Gardener v1.21 Conformance Tests Gardener v1.20 Conformance Tests Gardener v1.19 Conformance Tests Gardener v1.18 Conformance Tests Gardener v1.17 Conformance Tests Gardener v1.16 Conformance Tests [1]
GCP Gardener v1.22 Conformance Tests Gardener v1.21 Conformance Tests Gardener v1.20 Conformance Tests Gardener v1.19 Conformance Tests Gardener v1.18 Conformance Tests Gardener v1.17 Conformance Tests Gardener v1.16 Conformance Tests [1]
OpenStack Gardener v1.22 Conformance Tests Gardener v1.21 Conformance Tests Gardener v1.20 Conformance Tests Gardener v1.19 Conformance Tests Gardener v1.18 Conformance Tests Gardener v1.17 Conformance Tests Gardener v1.16 Conformance Tests [1]
Alicloud Gardener v1.22 Conformance Tests Gardener v1.21 Conformance Tests Gardener v1.20 Conformance Tests Gardener v1.19 Conformance Tests Gardener v1.18 Conformance Tests Gardener v1.17 Conformance Tests Gardener v1.16 Conformance Tests [1]
Equinix Metal N/A N/A N/A N/A N/A N/A N/A N/A
vSphere N/A N/A N/A N/A N/A N/A N/A N/A

[1] Conformance tests are still executed and validated, unfortunately no longer shown in TestGrid.

Besides the conformance tests, over 400 additional e2e tests are executed on a daily basis. Get an overview of the test results at testgrid.

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

The quickest way to test drive Gardener is to install it virtually onto an existing Kubernetes cluster, just like you would install any other Kubernetes-ready application. You can do this with our Gardener Helm Chart.

Alternatively you can use our garden setup project to create a fully configured Gardener landscape which also includes our Gardener Dashboard.

Feedback and Support

Feedback and contributions are always welcome!

All channels for getting in touch or learning about our project are listed under the community section. We are cordially inviting interested parties to join our bi-weekly meetings.

Please report bugs or suggestions about our Kubernetes clusters as such or the Gardener itself as GitHub issues or join our Slack channel #gardener (please invite yourself to the Kubernetes workspace here).

Learn More!

Please find further resources about our project here:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].