Network boot servers and provision a Container Linux OS running a Kubernetes cluster.
Enjoliver is a framework that aims at deploying and maintaining an usable Kubernetes cluster from a bare-metal environment.
Enjoliver only supports rkt
as the kubelet runtime for now.
Typical use-cases are :
- spawn a kubernetes cluster in a new datacenter ;
- test a custom patch on kubernetes ;
enjoliver-api the engine that orchestrate the installation workflow. It reponds to ipxe requests, serves ignition files according to the machine profile, and centralize the update logic.
matchbox matches servers with and OS version and ignition config.
enjoliver-ui is an UI that helps you manage the lifcycle of the bare-metal.
enjoliver-testsuite is an end-to-end testsuite for the whole framework. It boots a fleet of kvm virtual machines into th complete installation cycle an runs tests on each components.
* Discovery Topology
* Scheduling of Kubernetes roles
* Lifecycle management
Enjoliver architecture overview
How to run enjoliver in production
* control plane
* node
Kubernetes Cluster Architecture
ready to use with samples:
* Helm / Tiller
* Heapster
* Kubernetes Dashboard
* Kubernetes state metrics
* Node exporter for Prometheus
* Prometheus
* Vault UI
* CronJobs for etcd3 backups
How to setup a development environment
* follow any associated releases
* features, bug fix testing in cluster