Skip to content

Readme





Multi-cluster Configuration Management for Edge, Multi-Cloud, and Hybrid Cloud#

Generate and push docs    first-timers-only    Broken Links Crawler QuickStart test    docs-ecutable - example1    docs-ecutable - placement-translator    docs-ecutable - mailbox-controller    docs-ecutable - where-resolver    docs-ecutable - kubestellar-syncer    Join Slack

Imagine KubeStellar as a post office for your Kubernetes resources. When you drop packages at the post office, they don't open them; they deliver them to the right recipients. Similarly, KubeStellar works like this for your Kubernetes resources. Instead of running resources right away, KubeStellar safely stores and sends resources to selected clusters across the globe—whether they're in public clouds, private clouds, or on the edge of your network. It's a super useful tool for spreading your Kubernetes resources wherever you need them without disrupting your existing tools and workflows.

How does KubeStellar resist the temptation to run your Kubernetes resources right away? KubeStellar accepts your applied resources in a special staging area (virtual cluster) where pods can't be created. Then, at your direction, KubeStellar transfers your applied resources to remote clusters where they can create pods and other required resource dependencies. KubeStellar does this using many different lightweight virtual cluster providers (Kind, KubeFlex, KCP, etc.) to create this special staging area.

KubeStellar is an innovative way to stage inactive Kubernetes resources and then apply them to any cluster to run. KubeStellar introduces a native way to expand, optimize, and protect your Kubernetes resources from individual cluster misconfiguration, utilization, and failure.

Don't change anything, just add KubeStellar!

KubeStellar treats multiple Kubernetes clusters as one so you can:#

  • Centrally apply Kubernetes resources for selective deployment across multiple clusters
  • Use standard Kubernetes native deployment tools (kubectl, Helm, Kustomize, ArgoCD, Flux); no resource bundling required
  • Discover dynamically created objects created on remote clusters
  • Make disconnected cluster operation possible
  • Scale with 1:many and many:1 scenarios
  • Remain compatible with cloud-native solutions

KubeStellar virtual clusters (Spaces) are our secret#

  • KubeStellar uses lightweight virtual clusters (Spaces) that run inside the KubeStellar hosting cluster
  • Standard Kubernetes clusters have 2-300 api-resources, KubeStellar Spaces have only 40
  • Fewer api-resources mean resources remain inactive (denatured) – they do not expand into other resources like replicasets, pods, etc.
  • Denaturing is the key to accepting native, unbundled Kubernetes resources as input without running them
  • Unbundled resources are the default and preferred output of most cloud-native tools making KubeStellar use and integration easy

QuickStart#

Checkout our QuickStart Guide

Roadmaps for the Project#

We have defined and largely completed the PoC2023q1. The current activity is refining the definition of, and producing, the PoC2023q4. Goals not addressed in that PoC are to be explored later.

Contributing#

We ❤️ our contributors! If you're interested in helping us out, please head over to our Contributing guide.

Getting in touch#

There are several ways to communicate with us:

Instantly get access to our documents and meeting invites http://kubestellar.io/joinus

❤️ Contributors#

Thanks go to these wonderful people:


Jun Duan

👀

Braulio Dumba

👀

Mike Spreitzer

👀

Paolo Dettori

👀

Andy Anderson

👀

Franco Stellari

👀

Ezra Silvera

👀

Bob Filepp

👀

Alexei Karve

👀

Maria Camila Ruiz Cardenas

👀

Aleksander Slominski

👀

Aashni Manroa

👀

Kevin Roche

👀

Nick Masluk

👀

Francois Abel

👀